什么是现代 SSD 的原子写入单元?
What is a atomic write unit for mordern SSDs?
我的理解是,最现代的基于主轴的驱动器具有 "sector" 作为原子写入单元。现代固态硬盘的单位是什么?
我不完全确定原子写入单元是什么意思。我假设你的意思是最小的写入单位。
在NAND-flash SSD中,读写的最小单位称为page。通常,页面大小为 2kB 或 4kB,加上元数据。
另外,擦除的最小单位是几页(32-128页)。
来源:
SSD里面有个page size是最小的硬件存储单元(经常是2048字节)。
还有块大小(通常为 512)取决于用于与 SSD 通信的协议。我在 Wireshark 中看到我的 PC 通过 SCSI 与 USB SSD 通信。
假设 SCSI SSD 的页面大小为 2048,块大小为 512。
让我们在磁盘的最开始写一页。
尽管 SCSI 将页面分为 4 个块,但操作应保持原子性。
现在我们从偏移量 1024 开始写入 2048 个字节。缓冲区的一半现在位于第 0 页,其余部分位于第 1 页。操作不再是原子操作。
我的理解是,最现代的基于主轴的驱动器具有 "sector" 作为原子写入单元。现代固态硬盘的单位是什么?
我不完全确定原子写入单元是什么意思。我假设你的意思是最小的写入单位。
在NAND-flash SSD中,读写的最小单位称为page。通常,页面大小为 2kB 或 4kB,加上元数据。
另外,擦除的最小单位是几页(32-128页)。
来源:
SSD里面有个page size是最小的硬件存储单元(经常是2048字节)。
还有块大小(通常为 512)取决于用于与 SSD 通信的协议。我在 Wireshark 中看到我的 PC 通过 SCSI 与 USB SSD 通信。
假设 SCSI SSD 的页面大小为 2048,块大小为 512。
让我们在磁盘的最开始写一页。 尽管 SCSI 将页面分为 4 个块,但操作应保持原子性。
现在我们从偏移量 1024 开始写入 2048 个字节。缓冲区的一半现在位于第 0 页,其余部分位于第 1 页。操作不再是原子操作。