嵌入式linux内核中下测试sata硬盘的读写速度
首先内核中要编译进去sata驱动,make menuconfig中将sata驱动选上,编译内核,在开发板上启动,然后fdisk -l查看磁盘分区,挂载上sata硬盘。
第一种方法,利用dd命令。
测试硬盘的读取速度:
time dd if=/dev/sda1 of=/dev/null bs=1M count=10000
这条命令是从硬盘sda1中读取10G的数据写到空设备上,就是数据读取抛空。
测试硬盘写入速度:
time dd if=/dev/zero of=/dev/sda1 bs=1M count=10000
这条命令是从零设备上往sda1设备上写入10G数据。
要注意的一点是上面的写入命令有可能会覆盖硬盘中原有数据,破坏文件系统,如果硬盘中没有数据可以这样操作。
如果有文件系统,且有重要数据,可以先将硬盘挂载,在执行下面命令:
time dd if=/dev/zero of=/mnt/10g.file bs=1M count=10000
将写入的数据写到一个文件中就可以了。
第二种方法,执行命令hdparm命令可以测试sata sici 已经ide硬盘的性能,但只能测试读取的速度。
在服务端命令窗口中执行如下命令
hdparm -t /dev/hda (IDE硬盘)
hdparm -t /dev/sda (SATA、SCSI、硬RAID卡阵列)
hdparm -t /dev/md0 (软RAID设备)
测试结果在空载情况下应 >40M/s ,在负载情况下平均应 > 20M/s 为正常,如测试结果极低则需要进一步使用硬盘专用检测工具测试是否为硬盘故障。
参数:
-t 评估硬盘的读取效率。
-T 平谷硬盘快取的读取效率。