IO测试

N706启动特别慢?一个计算器应用要10秒才能起来!!这是神马问题?难道是flash的问题,这几天一直在搞flash的读写测试,顺序读随机读顺序写随机写,来回折腾,最后测试发现随机写的速度比N701慢上180倍,应该就是问题所在了。在此把过程记录下来。

 

一、flash_test.v0.1

基本思路,

 

 

存在的问题

1、调用fwrite,fread等库函数,会受到文件系统的输入输出缓冲的影响,如果要对设备进行明确的控制,最好是使用底层函数write,read。

2、接收的参数太少,用户应该可以自定义测试文件的大小和测试的空间。

3、没有随机读写,另外如果只是测试IO吞吐量的话,mmap没有必要调用,它只是用来测试数据正确性的。

4、没有必要进行压力测试,不一定要写满整个分区,最后写文件找碎片将非常消耗时间,影响平均速度。

5、文件大小应该可变,应该常识各种大小的数据块的读写。

6、应该捕获用户“Ctrl+C"信号,让程序能删除中间文件。

7、代码结构化不好,所有的东西都集中在main函数中,可读性差,不利于维护。

8、没有生成log文件

 

二、flash_test.v0.2

1、定义5种操作:

 

 

2、测试循环:

 

 

3、test_operation函数

 

4、随机读写时用到的获取随机位置的方法(到处可用)。

 

 

5、随机写操作:

 

 

随机读操作:

 

 

 

 

6、main函数中对ctrl+c的捕获代码

 

7、main函数中对参数的处理

 

 

8、信号处理函数和全局变量

 

 

 

存在的问题:

1、打开的文件过多,最好能在一个文件里面进行操作。

 

三、flash_test.v0.3

主要修改test_loop函数

 

 

还有随机读写函数

 

 

存在的问题:

1、还是没能完全绕过文件系统,直接对裸设备进行测试

2、main函数没有进行getopt操作,有待改进

3、没有对printf进行包装,做到log信息同时向标准输出和文件输出有问题,可加入可变参数处理解决

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值