首页 > 系统相关 >【MemTester】内存测试工具Memtester使用方法

【MemTester】内存测试工具Memtester使用方法

时间:2024-11-01 17:33:07浏览次数:2  
标签:make 内存 MemTester sh user 测试工具 memtester Memtester

1.MemTester简介

MemTester是一个用于压力测试内存子系统的工具,它特别有效于发现间歇性和非确定性的故障。以下是MemTester的一些主要特点和功能:

  1. 内存错误捕获:MemTester主要用于捕获内存错误和识别一直处于高或低电平的坏位。
  2. 多种测试项目:它提供了一系列测试项目,包括随机值测试、异或比较、减法、乘法、除法和与或运算等。
  3. 用户空间测试:MemTester是一个用户空间的测试工具,它通过malloc(3)分配指定的内存量,如果失败,则减少请求的内存量直到成功。
  4. 内存锁定:测试时,MemTester会尝试mlock(3)锁定内存,如果无法锁定,测试速度会变慢,效果也会降低。
  5. 系统限制:MemTester能够测试的内存量受到系统总内存和其他系统限制的影响,例如操作系统、库和其他系统限制会占用一部分内存。
  6. 内存容量和速度测试:MemTester可以测试内存的不同方面,包括内存容量、速度、类型和通道。
  7. 系统容错性测试:通过模拟异常情况下的内存使用,MemTester可以测试开发板在处理异常情况时的表现,并确定开发板能否在不影响数据完整性的情况下恢复正常工作。
  8. 测试结果:使用MemTester进行长时间测试(如72小时以上)可以帮助确定系统是否能够在长时间高负载占用内存的工作环境下保持可靠性和稳定性。
  9. 测试方法:MemTester的使用命令格式为 memtester [-p 内存物理起始地址] [测试内存大小B/K/M/G] [测试次数],可以灵活配置测试的物理地址、内存大小和测试次数。

2.MemTester交叉编译

2.1 MemTester源码下载

源码下载地址:memtester version 4

github地址:GitHub - jnavila/memtester: Simple memory tester mirror from http://pyropus.ca/software/memtester/. Please note that I am not the author of Memtester

当前最新版本是memtester-4.6.0.tar.gz,下载成功后将压缩包移到虚拟机环境中,准备执行交叉编译。

2.2 交叉编译

需要提前将目标平台的编译器先安装到虚拟机环境中

2.2.1.解压memteser压缩包

tar -xvf memtester-4.6.0.tar.gz
cd memtester-4.6.0

2.2.2.交叉编译

2.2.2.1 直接使用源代码编译

 # 加载编译器环境
source /opt/fsl-auto/38.0/environment-setup-cortexa53-crypto-fsl-linux   

# 此处仿照仿照yocto工程中的memtester.dd文件中的编译语句配置conf-cc和conf-ld
echo ${CC} ${CFLAGS} -DPOSIX -c > conf-cc
echo ${CC} ${LDFLAGS} > conf-ld

# 然后执行make编译
make

编译成功:

user@user:~/soft/memtester-4.6.0$ make
( cat warn-auto.sh; \
echo CC=\'`head -1 conf-cc`\'; \
echo LD=\'`head -1 conf-ld`\' \
) > auto-ccld.sh
cat auto-ccld.sh make-compile.sh > make-compile
chmod 755 make-compile
cat auto-ccld.sh find-systype.sh > find-systype
chmod 755 find-systype
./find-systype > systype
( cat warn-auto.sh; ./make-compile "`cat systype`" ) > \
compile
chmod 755 compile
./compile memtester.c
./compile tests.c
cat auto-ccld.sh make-load.sh > make-load
chmod 755 make-load
( cat warn-auto.sh; ./make-load "`cat systype`" ) > load
chmod 755 load
./extra-libs.sh "`cat systype`" >extra-libs
./load memtester tests.o `cat extra-libs`

当前路径路径下出现可执行的memtester程序:

-rwxr-xr-x 1 user user   241 Nov  1 14:22 make-load
-rwxr-xr-x 1 user user    73 Dec 20  2022 make-load.sh
-rwxr-xr-x 1 user user   210 Dec 20  2022 make-makelib.sh
-rwxrwxr-x 1 user user 31160 Nov  1 14:22 memtester
-rw-r--r-- 1 user user  4726 Dec 20  2022 memtester.8
-rw-r--r-- 1 user user 14703 Dec 20  2022 memtester.c
-rw-r--r-- 1 user user   679 Dec 20  2022 memtester.h

确认产物架构

user@user:~/soft/memtester-4.6.0$ file memtester
memtester: ELF 64-bit LSB pie executable, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, BuildID[sha1]=9c2feb45ce3b438ae59a9746d920dca544132f8b, for GNU/Linux 3.14.0, with debug_info, not stripped

3.将编译产物传输到目标板中

可以通过网络使用scp命令或winscp,filezilla等工具将memteser传输到目标板的/bin目录下,如执行权限不够,则赋上权限即可使用

chmod 777 /bin/memtester

2.2.2.2 需要定制源代码

参考网络建议,如果要修改还test.h文件,需要添加必要的头文件包含

vi test.h
# 添加 #include <stddef.h>

然后执行2.2.2.1的编译部署步骤即可

3.MemTester使用

3.1 MemTester的基本命令

1.测试1GB的内存

memtester 1G

2.测试特定区域的内存

memtester -p 0x40000000 1G

3.指定测试运行的次数,例如要运行5次测试

memtester 1G 5

标签:make,内存,MemTester,sh,user,测试工具,memtester,Memtester
From: https://www.cnblogs.com/Wangzx000/p/18518528

相关文章

  • 自动化测试工具Ranorex Studio(十五)-自定义代码ACTION
    在Recorder提供的功能不能够满足的情况下,可以使用自定义代码。这里有一些例子,可以方便演示自定义代码Action。•   自定义验证•   访问测试用例相关的数据和参数•   扩展报告在项目视图窗口中,仔细看一个录制模块文件,你会看到有两个相关的代码文件。 图:录......
  • PC端的Windows软件用什么自动化测试工具好
    Windows软件的自动化测试可以帮助我们在短时间内完成大量的测试任务,并发现软件中的问题。以下是一些常用的Windows软件自动化测试工具:一、Selenium;二、TestComplete;三、Ranorex;四、WinAppDriver;五、AutoIt;六、QTP(UFT);七、Eggplant。Selenium是一款非常流行的开源自动化测试工具,......
  • Pygame游戏手柄(Xbox)输入测试工具
    文章目录前言Xbox手柄测试程序说明使用说明完整代码前言在python做机器人控制时,需要加入xbox操控功能,为了直观显示手柄摇杆与变量之间的对应关系,实时调试手柄输入,开发了python手柄测试程序(本文基于xbox)。Xbox手柄测试程序说明测试程序使用pygame库创建了一......
  • 2024版最新渗透测试工具整理大全(非常详细)渗透测试零基础入门到精通,收藏这篇就够了
    学习网络安全为什么需要掌握渗透测试工具使用相关知识?1.增强安全防御能力:通过对渗透测试工具的使用,安全专家可以更深入地理解攻击者可能采用的手法和策略,从而提前部署相应的防御措施,加固网络和系统的安全。2.发现并修复漏洞:渗透测试可以识别存在的安全漏洞,包括软件漏洞......
  • 哪款网站压力测试工具值得推荐
    在进行网站压力测试的过程中,以下工具值得推荐:一、ApacheJMeter;二、LoadRunner;三、Locust;四、Gatling;五、WebLoad;六、Neoload;七、Blazemeter。ApacheJMeter是一款开源的性能测试工具,不仅适用于对HTTP和HTTPS的压力测试,也可以对数据库、FTP服务器、邮件服务器等进行压力测试。JMe......
  • 【2024最新】黑客入侵测试工具大全(超详细),收藏这一篇就够了!
    所有工具仅能在取得足够合法授权的企业安全建设中使用,在使用所有工具过程中,您应确保自己所有行为符合当地的法律法规。如您在使用所有工具的过程中存在任何非法行为,您将自行承担所有后果,所有工具所有开发者和所有贡献者不承担任何法律及连带责任。除非您已充分阅读、完全理解......
  • 现在流行哪款MOCK测试工具
    MOCK测试是软件开发过程中的一个重要环节,它允许开发者模拟那些尚未实现或者难以集成的组件、服务或系统。目前,最流行的MOCK测试工具包括WireMock、Mockito、Sinon.js。这些工具中,WireMock特别受到关注,因为它能够模拟具有复杂逻辑的Web服务。一、WIREMOCK的功能和优势WireMock......
  • 自动化测试工具Ranorex Studio(十三)-录制过程中
    点击“录制”按钮来触发创建一个新的录制模块。 图:点击“Record”开始录制点击录制按钮后,Ranorex会在正式录制之前协助你运行一个应用程序,打开浏览器浏览导航到特定的URL或打开移动设备上的应用程序。因此,像双击桌面快捷方式图标这样的操作就没有必要录制了。通过选择’gl......
  • 最佳的10款App安全测试工具
    网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!移动互联网时代,我们的生活和工作深受App影响。伴随移动App的广泛应用,App安全日益重要。本文介绍了App开发可能用到的安全测试工具。当今,全球移动用户大约超过37亿。GooglePlay上大约有220万个App,苹果......
  • 软件测试工具与技术的详细学习要点
    软件测试工具与技术的详细学习要点和方向涵盖了多个方面,以下是一些关键的学习要点和方向:测试工具学习要点1.自动化测试工具  -Selenium:学习SeleniumWebDriver的使用,包括元素定位、操作浏览器、处理页面元素等。同时,掌握SeleniumGrid的使用,以实现分布式测试。  -......