windows - LogicalBytesPerSector 与 PhysicalBytesPerSector

标签 windows winapi storage hard-drive sector

当我执行命令时 fsutil fsinfo sectorInfo c: ,我收到这个输出:

LogicalBytesPerSector :                                 512
PhysicalBytesPerSectorForAtomicity :                    4096
PhysicalBytesPerSectorForPerformance :                  4096
FileSystemEffectivePhysicalBytesPerSectorForAtomicity : 4096 Device
Alignment :                                      Aligned (0x000)
Partition alignment on device :                         Aligned
(0x000) No Seek Penalty Trim Supported Not DAX capable Not
Thinly-Provisioned
我担心 LogicalBytesPerSector 之间的区别和 PhysicalBytesPerSectorForAtomicity .
LogicalBytesPerSector小于 PhysicalBytesPerSectorForAtomicity ,我写的每一个 512 字节的块实际上都会被原子写入吗?另一方面,我写的每个 4096 字节块实际上都会被原子写入吗?
另外,512字节的读/写会不会很慢,好像我理解得很好,系统需要读取4096个物理字节才能写入我的512个字节?

最佳答案

does every block of 512 bytes I will wrote will be wrote atomically ? on the other way does every block of 4096 Bytes I will wrote will be wrote atomically?


4096 将自动写入。
512 将自动写入,并可能写入其他数据以完成到 4096。

Also does the read/wrote of 512 bytes will be not too much slow as, if I understand well, the system will need to read 4096 Physical bytes just to wrote my 512 bytes?


是的,至少写 PhysicalBytesPerSectorForPerformance .由于更有效的命令利用,更多可能仍然更快。

关于windows - LogicalBytesPerSector 与 PhysicalBytesPerSector,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66676689/

相关文章:

java - 从 Java 调用的 Setx 无法正常工作

linux - Git - Windows 和 linux 行尾

c++ - Ctrl Z 的实际工作原理

c++ - 如何分配SP_DEVICE_INTERFACE_DETAIL_DATA?

javascript - 使用 localStorage jQuery 删除单个 li

windows - 如何连接到 Windows 资源管理器(用于基于网络的文件存储,例如 Dropbox)

c++ - 如何使用设备 ID 获取 USB 硬件 ID?

c# - 获取USB设备的产品字符串(C#/C++)

.NET Azure 存储客户端 - StartCopyFromUri 403 具有 IP 限制 token

ruby-on-rails - 设备上没有剩余空间