获取磁盘示例代码的旋转速度

pat*_*ero 5 c c++ device-driver visual-c++

我不是很擅长VC++但是有没有人有一个示例代码来获取计算机中磁盘的旋转速度.我一直致力于检测SSD驱动器,一天研究的一个解决方案是获得转速,而且由于SSD的转速为0 rpm,这可能是检测SSD驱动器的唯一方法.

seh*_*ehe 7

来自谷歌wmi ssd检测

有一个用于ReadyDrive的NV缓存管理器接口,这是Vista的新功能.我认为它正在测试NV_FEATURE_PARAMETER的NVReadSpeed和NVWrtSpeed值.

Windows 7通过使用ATA8-ACS识别字217:标称介质旋转速率来检测SSD,其值为0001h,如非固态设备之类的非旋转介质.但并非所有SSD都遵循ATA8-ACS1规范第7.16.7.77节,有些可能需要固件更新.

如果您想更多地关注在Windows中发送ATA命令,我建议您深入了解Storage Platform ATA论坛.该论坛正在存档,因此行动迅速.


也非常有启发性:

http://blogs.msdn.com/b/e7/archive/2009/05/05/support-and-qa-for-solid-state-drives-and.aspx

SSD上默认会禁用磁盘碎片整理吗?

是.碎片整理的自动调度将排除声称自己为SSD的设备上的分区.此外,如果系统磁盘具有高于8 MB /秒阈值的随机读取性能特征,那么它也将被排除.阈值由内部分析确定.