디바이스 드라이버
메모리 스트레스 테스트를 위한 프로그램을 ARM 보드에서 동작하기 위한 것입니다.
타겟보드는 EM-S5PV210 보드에서 테스트한 것입니다.
memtester를 다운로드하기 위한 사이트
http://pyropus.ca/software/memtester/memtester-4.3.0.tar.gz
memtester 압축 풀기
작업 환경 : 우분투 12.04
작업디렉토리 : /tmp
tmp$ tar -zxvf memtester-4.3.0.tar.gz
memtester 빌드하기
tmp $ cd memtester-4.3.0
memtester-4.3.0 $ vi conf-cc
cc -O2 -DPOSIX -D_POSIX_C_SOURCE=200809L -D_FILE_OFFSET_BITS=64 -DTEST_NARROW_WRITES -c
를 아래와 같이 수정합니다.
arm-generic-linux-gnueabi-gcc -O2 -DPOSIX -D_POSIX_C_SOURCE=200809L -D_FILE_OFFSET_BITS=64 -DTEST_NARROW_WRITES -c
memtester-4.3.0 $ vi conf-ld
cc -s
를 아래와 같이 수정합니다.
arm-generic-linux-gnueabi-gcc -s
memtester-4.3.0 $ make
memtester를 EM-S5PV210에 테스트한 결과
위와 같이 빌드가 정상적으로 되었다면 타겟보드(EM-S5PV210)보드에서 테스트를 하면 됩니다.
다음은 EM-S5PV210에서 테스트한 결과 입니다.
아래 명령의 의미는 다음과 같습니다.
64 : 64Mbyte를 검사, 1000 또는 1G 라고 쓰면 1Gbyte를 검사 합니다.
1 : 1회 테스트, 5라고 쓰면 5회 테스트를 합니다.
[root@falinux nfs]$ ./memtester 64 1
memtester version 4.3.0 (32-bit)
Copyright (C) 2001-2012 Charles Cazabon.
Licensed under the GNU General Public License version 2 (only).
pagesize is 4096
pagesizemask is 0xfffff000
want 64MB (67108864 bytes)
got 64MB (67108864 bytes), trying mlock ...locked.
Loop 1/1:
Stuck Address : ok
Random Value : ok
Compare XOR : ok
Compare SUB : ok
Compare MUL : ok
Compare DIV : ok
Compare OR : ok
Compare AND : ok
Sequential Increment: ok
Solid Bits : ok
Block Sequential : ok
Checkerboard : ok
Bit Spread : ok
Bit Flip : ok
Walking Ones : ok
Walking Zeroes : ok
8-bit Writes : ok
16-bit Writes : ok