如何从C程序中读取驱动器的硬件信息? (即,确定驱动器是SSD还是机械磁盘。)
答案 0 :(得分:17)
SSD应该将自己标识为非旋转。例如,对于linux,您可以通过sysfs获取信息:
cat /sys/block/sda/queue/rotational
如果它返回0,则表示你有SSD ......
答案 1 :(得分:1)
您是否考虑过进行读/写测试以尝试确定功能?
答案 2 :(得分:-1)
您可以使用win32库中的GetDriveType方法,并且可以区分这种方式,或者使用GetVolumeInformation尝试从标签中确定它。
答案 3 :(得分:-2)
这个猜测很长,但我找不到更好的东西。在设备的识别结构中,查看它是否支持声学管理。旧磁盘驱动器没有,但也许大多数现代磁盘驱动器都可以。显然SSD不需要声学管理,但我们希望他们不会说它们不需要,而不是伪装成磁盘驱动器。