对arm做内存诊断
大师好啊各位,我想要对arm板子的物理内存进行读写操作,但是不知从何处下手,跪求指导!!我最近琢磨着,是不是用 /dev/mem读 内存,但这不是我想要的对硬件物理内存的诊断测试,求大侠指导!!!!! memtest工具应该就可以了吧 回复 1# lanyushan123
我最近琢磨着,是不是用 /dev/mem读 内存,但这不是我想要的对硬件物理内存的诊断测试,求大侠指导!!!!!
说了半天,你究竟想怎么测????????
通过/dev/mem, 直接读取所有的内存,至于你想怎么去读写,不就是就程序的事情了吗!
你是不是不会用/dev/mem呀。给你个链接:
http://blog.csdn.net/zhanglei4214/article/details/6653568
自己要学会用谷哥、度娘。
用/dev/mem读取的是系统的物理内存吧?如果是读写arm板子的绝对物理地址的内存是怎样做回复 3# Tinnal
如果相对物理内存按为读、写,应该怎么做呢, mmap /dev/mem是把内存按文件读取的么回复 3# Tinnal
你的目的是啥?是要做内存硬件测试? 对的,而且需要在板子里有系统运行的情况下测试硬件回复 6# humjb_1983
回复 4# lanyushan123
是的,读的就是物理地址,用法不是之前给你一下参靠链接了吗。你想没有用心看实在不应该!
例子的mmap是这样的。
map_base = mmap(NULL, 0xff, PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0x20000);
别人也写得很清楚含义:
上面的例子将起始地址0x20000(物理地址), 长度为0xff映射出来。 然后就可以像普通数组一样操作内存。
已经很清楚了呀。
映射出来的后,就是一个指针,可直接访问,不用调读写文件的接口,看别人的例子就没用读写接口呀。
另外于再补充两点:
1、这个方法不仅仅访问内存,还能访问芯片的外设,只要有物理地址的都能访问。
2、高版本的内核对内核的代码段和数据段有保护,可以这个区段会访问不了,如果想访问,可以把这个功能关了。
因此,总结:
1. 没有去百度!
2. 没有详细看给你的参考链接!
我表示不高兴{:2_174:} 。
很多的内存问题,用简单的用例和算法是测不出来的,建议还是别自己写用例了,就用现成的memtest工具,其已经考虑了各种情况,并设置了复杂的测试算法,相信会比自己写的更有用。 对硬件内存的测试不容易完成吗? 导师要求做的测试,想法是源于之前对单片机的硬件内存的测试,所以计划将诊断测试对象换成arm板子,在装有linux系统的条件下做内存的测试,这个课题行不通吗?跪求高手解答回复 9# humjb_1983
页:
[1]
2