U盘是一种便携式存储介质,可以在不同设备之间传输数据和文件。它还可以用作启动或扩展设备来运行、调试和测试不同的操作系统或应用程序。选择合适的U盘配合开发板进行项目开发,需要考虑容量、读写速度、接口类型、兼容性和可靠性等因素。
本文将使用万象奥科基于HD-G2UL-CORE工业级核心板设计的HD-G2UL-EVM评估板来演示如何选择读写速度合适的U盘作为开发板项目。
表1.1 测试结果
U盘
写
读
海康威视USB3.064GB
6.0MB/秒
22.1MB/秒
闪迪USB3.016GB
10.2MB/秒
31.5MB/秒
爱国者USB3.064GB
5.7MB/秒
31.5MB/秒
金士顿USB3.032GB
6.5MB/秒
33.9MB/秒
闪迪USB2.01GB
9.1MB/秒
18.1MB/秒
爱国者USB2.032GB
5.5MB/秒
19.6MB/秒
从表1.1的测试结果可以看出,USB3.0 U盘的读取速度比USB2.0 U盘快,但写入速度没有明显差异。其中,SanDisk USB 3.016GB USB闪存盘的写入和读取速度最快,分别达到10.2MB/s和31.5MB/s,其次是金士顿。海康威视USB 3.064GB U盘的写入速度最慢,只有6.0MB/s,其次是爱国者。
总结一下:如果您需要一款容量大、速度快、安全可靠的U盘,可以选择SanDisk USB 3.016GB U盘,因为它的写入和读取速度最快;如果您需要容量小、速度慢、价格便宜的U盘,可以选择SanDisk USB 2.01GB U盘,因为它的写入速度比其他USB2.0 U盘快,而且价格便宜;如果需要中等容量、平均速度的U盘,可以选择金士顿USB3.032GB U盘,因为就读取速度而言,它是最快的USB3.0 U盘之一。
1.Linuxdd命令用于读取、转换和输出数据。
2.dd可以从标准输入或文件中读取数据,按照指定的格式转换数据,然后输出到文件、设备或标准输出。
写入速度测试:ddif=/dev/zeroof=$mount_point/largefilebs=16kcount=16384oflag=direct
清除页面缓存:syncecho3/proc/sys/vm/drop_caches
读取速度测试:ddif=$mount_point/largefileof=/dev/nullbs=16kcount=16384
2.2dd相关解释
if 代表输入文件。如果不指定if,则默认从stdin 读取输入。
of 代表输出文件。如果不指定of,则默认使用stdout作为默认输出。
bs 表示块大小(以字节为单位)。
count 表示复制的块数。
/dev/zero 是字符设备,将连续返回0 值字节(\0)。
HD-G2UL-EVM评估板(512MB+8GB)、网线、Type-c数据线、5V电源适配器、电脑主机。
准备5种以上不同规格、品牌的U盘,如表3.1所示。
表3.1 测试U盘
图3.1 测试环境
以读写FAT32文件系统为例,写入和读取大小为256MB的文件。
3.4.1 海康威视USB3.064GB
进行写入性能测试.预计写入256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)已复制,44.4863s,6.0MB/s
清除缓存.
进行读取性能测试.预计读取256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,12.1501s,22.1MB/s
测试时长:(0小时1分4秒。)
测试完毕!
3.4.2 闪迪USB3.016GB
进行写入性能测试.预计写入256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,26.2853s,10.2MB/s
清除缓存.
进行读取性能测试.预计读取256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,8.51293s,31.5MB/s
测试持续时间:(0小时0分42秒。)
测试完毕!
3.4.3 爱国者USB3.064GB
进行写入性能测试.预计写入256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,46.8673s,5.7MB/s
清除缓存.
进行读取性能测试.预计读取256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,8.53448s,31.5MB/s
测试持续时间:(0小时1分2秒。)
测试完毕!
3.4.4 金士顿USB3.032GB
进行写入性能测试.预计写入256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,41.2719s,6.5MB/s
清除缓存.
进行读取性能测试.预计读取256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,7.92642s,33.9MB/s
测试时长:(0小时0分56秒。)
测试完毕!
3.4.5 闪迪USB2.01GB
进行写入性能测试.预计写入256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)已复制,29.5702s,9.1MB/s
清除缓存.
进行读取性能测试.预计读取256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,14.809s,18.1MB/s
测试时长:(0小时0分51秒。)
测试完毕!
3.4.6 爱国者USB2.032GB
进行写入性能测试.预计写入256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,49.1139s,5.5MB/s
清除缓存.
进行读取性能测试.预计读取256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,13.6685s,19.6MB/s
测试时长:(0小时1分10秒。)
测试完毕!
^