本发明涉及计算机服务器的

技术领域:

:,具体涉及到一种Linux系统下基于IDK内存注错的测试方法及系统。

背景技术:

::在服务器领域中,内存是服务器中重要的部件之一,它是与CPU进行沟通的桥梁。服务器中所有程序的运行都是在内存中进行的,因此内存的性能对服务器的影响非常大。内存(Memory)也被称为内存储器,其作用是用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。只要服务器在运行中,CPU就会把需要运算的数据调到内存中进行运算,当运算完成后CPU再将结果传送出来,内存的运行也决定了服务器的稳定运行。内存是服务器系统的关键组成部分,内存的好坏直接影响服务器的正常工作。在现有技术中,当内存出错时,对内存的诊断技术较为复杂且稳定性无法得到保证,无法对内存简单快速稳定地诊断测试。技术实现要素:基于上述问题,本发明提出一种Linux系统下基于IDK内存注错的测试方法及系统。本发明快速简单实现模拟环境,测试相关功能是否实现,直接定位到故障内存的具体槽位,更高效的筛选出故障内存,简化测试流程,提高服务器的稳定性。本发明提供如下技术方案:一方面,本发明提供一种Linux系统下基于IDK内存注错的测试方法,包括:步骤101,运行脚本程序,获取主机名,设置内存注错位置及内存阈值,执行内存注错;步骤102,判断内存阈值是否达到预设阈值,若是则内存指示灯点亮,前控板内存异常指示灯点亮;步骤103,BMC定位所述内存异常,并存储在BMC日志中;步骤104,判断所述内存异常的类型,所述类型包括可修复异常和不可修复异常,当所述内存异常为可修复异常则通过清除阈值来清除所述内存异常,当所述异常为不可修复异常则告警。其中,在运行脚本之前,将IDK工具复制到Linux系统下解压,进入IDK工具运行脚本程序。其中,所述内存注错可以注可修复错误或者不可修复错误。其中,所述预设阈值为2048。另外,本发明还提供一种Linux系统下基于IDK内存注错的测试系统,所述系统包括:注错模块,用于运行脚本程序,获取主机名,设置内存注错位置及内存阈值,执行内存注错;判断模块,用于判断内存阈值是否达到预设阈值,若是则内存指示灯点亮,前控板内存异常指示灯点亮;定位模块,用于BMC定位所述内存异常,并存储在BMC日志中;修复模块,用于判断所述内存异常的类型,所述类型包括可修复异常和不可修复异常,当所述内存异常为可修复异常则通过清除阈值来清除所述内存异常,当所述异常为不可修复异常则告警。其中,在运行脚本之前,将IDK工具复制到Linux系统下解压,进入IDK工具运行脚本程序。其中,所述内存注错可以注可修复错误或者不可修复错误。其中,所述预设阈值为2048。本发明提供了一种Linux系统下基于IDK内存注错的测试方法及系统,通过模拟当内存出现可修复或者不可修复错误,检查相关硬件是否有报警,当内存阈值达到一定值后,内存指示灯点亮,前控板内存异常指示灯点亮,同时BMC下定位内存出现的异常,当报可修复的异常的时,通过清除阈值,使内存回复正常工作,当报不可修复的异常的时,更换内存;本发明快速简单实现模拟环境,测试相关功能是否实现,直接定位到故障内存的具体槽位,更高效的筛选出故障内存,简化测试流程,提高服务器的稳定性。附图说明图1是本发明的方法步骤流程图;图2是本发明的系统结构框图。具体实施方式为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。本发明提供一种Linux系统下基于IDK内存注错的测试方法,包括:步骤101,运行脚本程序,获取主机名,设置内存注错位置及内存阈值,执行内存注错;将IDK工具复制到Linux系统下,关闭防火墙(iptables-F),安装Python-2.7.11(①tar–zxvfPython-2.7.11.tgz②cdPython-2.7.11③./configure④make⑤makeinstall),根据系统版本选择core版本解压缩(tar–zxvfidk_core_3.45_linux_rhel_7_2.tgz),开始监控(①cdidk_core②./install_driver.sh③./idk_core),解压缩IDK_Client_3.45.zip(unzipIDK_Client_3.45.zip),然后进入IDK_Client_3.45,运行python2test.py;Test.py脚本信息如下:importpurleyimportmathpur=purley.connect("localhost")die=purley.ondie.ondie(pur)sa=pur.at.ReverseTranslate({"socket":0,"imc":0,"channel":0,"dimm":0,"rank":0})["address"]#此处注错的位置foriinrange(2048):#此处是BIOSSetup下默认的阈值die.mem_inject_ondie(SA=sa,error_type="ECC_1",retries=3,target_channel="primary")pur.ShowMemErrors(),其中,#ECC_1为可修复的错误/异常,ECC_2为不可修复的错误/异常。步骤102,判断内存阈值是否达到预设阈值,若是则内存指示灯点亮,前控板内存异常指示灯点亮;当内存阈值达到一定值后,该一定值为预设阈值,内存指示灯就会亮,前控板内存异常指示灯会亮。步骤103,BMC定位所述内存异常,并存储在BMC日志中;BMC下也可定位那个内存出现的异常,用户可根据BMC下报的日志做相关的操作。步骤104,判断所述内存异常的类型,所述类型包括可修复异常和不可修复异常,当所述内存异常为可修复异常则通过清除阈值来清除所述内存异常,当所述异常为不可修复异常则告警。当报可修复的error的时候,用户可通过清除阈值,所述清除阈值为自动清除或手动清除,使内存回复正常工作;当报不可修复的error的时候,用户就必须更换内存,以保证服务器的稳定性。本发明提供了一种Linux系统下基于IDK内存注错的测试方法,通过模拟当内存出现可修复或者不可修复错误,检查相关硬件是否有报警,当内存阈值达到一定值后,内存指示灯点亮,前控板内存异常指示灯点亮,同时BMC下定位内存出现的异常,当报可修复的异常的时,通过清除阈值,使内存回复正常工作,当报不可修复的异常的时,更换内存;本发明快速简单实现模拟环境,测试相关功能是否实现,直接定位到故障内存的具体槽位,更高效的筛选出故障内存,简化测试流程,提高服务器的稳定性。本发明的实施方式还提供了一种Linux系统下基于IDK内存注错的测试系统,包括:注错模块201,用于运行脚本程序,获取主机名,设置内存注错位置及内存阈值,执行内存注错;将IDK工具复制到Linux系统下,关闭防火墙(iptables-F),安装Python-2.7.11(①tar–zxvfPython-2.7.11.tgz②cdPython-2.7.11③./configure④make⑤makeinstall),根据系统版本选择core版本解压缩(tar–zxvfidk_core_3.45_linux_rhel_7_2.tgz),开始监控(①cdidk_core②./install_driver.sh③./idk_core),解压缩IDK_Client_3.45.zip(unzipIDK_Client_3.45.zip),然后进入IDK_Client_3.45,运行python2test.py;Test.py脚本信息如下:importpurleyimportmathpur=purley.connect("localhost")die=purley.ondie.ondie(pur)sa=pur.at.ReverseTranslate({"socket":0,"imc":0,"channel":0,"dimm":0,"rank":0})["address"]#此处注错的位置foriinrange(2048):#此处是BIOSSetup下默认的阈值die.mem_inject_ondie(SA=sa,error_type="ECC_1",retries=3,target_channel="primary")pur.ShowMemErrors(),其中,#ECC_1为可修复的错误/异常,ECC_2为不可修复的错误/异常。判断模块202,用于判断内存阈值是否达到预设阈值,若是则内存指示灯点亮,前控板内存异常指示灯点亮;当内存阈值达到一定值后,该一定值为预设阈值,内存指示灯就会亮,前控板内存异常指示灯会亮。定位模块203,用于BMC定位所述内存异常,并存储在BMC日志中;BMC下也可定位那个内存出现的异常,用户可根据BMC下报的日志做相关的操作修复模块204,用于判断所述内存异常的类型,所述类型包括可修复异常和不可修复异常,当所述内存异常为可修复异常则通过清除阈值来清除所述内存异常,当所述异常为不可修复异常则告警。当报可修复的error的时候,用户可通过清除阈值,所述清除阈值为自动清除或手动清除,使内存回复正常工作;当报不可修复的error的时候,用户就必须更换内存,以保证服务器的稳定性。本发明提供了一种Linux系统下基于IDK内存注错的测试系统,通过模拟当内存出现可修复或者不可修复错误,检查相关硬件是否有报警,当内存阈值达到一定值后,内存指示灯点亮,前控板内存异常指示灯点亮,同时BMC下定位内存出现的异常,当报可修复的异常的时,通过清除阈值,使内存回复正常工作,当报不可修复的异常的时,更换内存;本发明快速简单实现模拟环境,测试相关功能是否实现,直接定位到故障内存的具体槽位,更高效的筛选出故障内存,简化测试流程,提高服务器的稳定性。对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是符合与本文所公开的原理和新颖特点相一致的最宽的范围。当前第1页1&nbsp2&nbsp3&nbsp当前第1页1&nbsp2&nbsp3&nbsp

linux系统安装内存测试,一种Linux系统下基于IDK内存注错的测试方法及系统与流程...相关推荐

  1. 硬盘克隆带linux系统,一种Windows环境下基于DiskGenius克隆Linux系统的方法及系统与流程...

    本发明涉及服务器操作系统技术领域,特别是一种windows环境下基于diskgenius克隆linux系统的方法及系统. 背景技术: 服务器在测试过程中需要反复安装linux操作系统用于服务器的各种测 ...

  2. linux usb 批量传输文件,一种Linux系统下提升usb批量传输速度的方法及系统与流程...

    本发明涉及通信传输技术领域,具体地说是一种linux系统下提升usb批量传输速度的方法及系统. 背景技术: linux系统访问usb设备有两种方式:编写内核驱动模块ko和在用户空间编写程序,通过内核提 ...

  3. Linux系统下基于IO多路复用的大规模可靠UDP服务器的实现(三)

    七.可靠性UDP的优化细节 4.5章节中,我们提到了KCP本身的优化提高,由于可靠性UDP是这个方案是否优秀的关键,而各种可靠UDP协议中都有TCP算法的影子,所以下面我们再仔细的谈一下这个部分.按照 ...

  4. linux 内核 scsi底层驱动程序,Linux系统下基于SCST的SCSI_Target驱动设计.doc

    Linux系统下基于SCST的SCSI target驱动设计 摘要 随着信息数字化的深入发展,数据存储的需求日益增长.存储虚拟化带给我们最直接的益处就是,提高存储利用率,降低成本,简化存储管理,而基于 ...

  5. 电脑运行linux虚拟盘闪退,Linux 系统下启动Android模拟器报错闪退

    Linux 系统下启动Android模拟器报错 Emulator: libGL error: unable to load driver: radeonsi_dri.so Emulator: libG ...

  6. 32位Windows7上8G内存使用感受+xp 32位下使用8G内存 (转)

    32位Windows7上8G内存使用感受+xp 32位下使用8G内存 博客分类: Windows XPWindowsIE企业应用软件测试  我推荐做开发的朋友:赶快加入8G的行列吧....呵呵..超爽 ...

  7. 32位Windows7上8G内存使用感受+xp 32位下使用8G内存

    我推荐做开发的朋友:赶快加入8G的行列吧....呵呵..超爽...速度超快...基本没有等待的概念...深有体会... 为什么要使用8G内存?在国内外各大论坛上,这都是一个有争议的问题.问题的反方论据 ...

  8. Windows系统下基于开源软件的多物理场仿真

    Windows系统下基于开源软件的多物理场仿真实践技术应用 随着计算机技术的发展,计算机仿真技术日益成为继实验和理论之后的第三种重要研究和设计手段.真实世界中遇到的问题往往是固体力学,流体力学,热,电 ...

  9. 麒麟系统下基于卫星的NTP网络授时服务器方案

    麒麟系统下基于卫星的NTP网络授时服务器方案 1. 麒麟系统NTP授时方案 设计思路: 在通用的麒麟服务器内部固定一块北斗卫星接收模块并引出卫星天线接口,卫星模块接收北斗卫星数据并解码输出时间数据(N ...

最新文章

  1. flowlayout java_【简答题】通过使用flowlayout设计出来 java程序如下图所示
  2. “深度学习”这十年:52篇大神级论文再现AI荣与光
  3. Mac OS X Git安装教程
  4. 【STL】list基础(转)
  5. 【运筹学】表上作业法 ( 找初始基可行解 | 计算检验数 | 调整运量 )
  6. 【Netty】 异步任务调度 ( TaskQueue | ScheduleTaskQueue | SocketChannel 管理 )
  7. 怎样判断网页是静态还是伪静态呢
  8. 解题:HNOI 2008 玩具装箱
  9. linux黑板模式,敲黑板!怎样使用 Linux stat 命令创建灵活文件列表?
  10. JUCE-VST-001 JUCE的下载与安装
  11. U盘启动盘 U盘安装Win10系统图文教程
  12. 脑袋越大就会越聪明么?
  13. 乘云而上,易捷行云入选“2020中国企服行业独角兽TOP50”
  14. 互联网早报 | 8月26日 星期三 | 蚂蚁集团递交招股文件;TikTok首次披露用户数据;滴滴开辟首个欧洲市场...
  15. python3报错: takes 1 positional argument but 2 were given 问题解决。
  16. RTX3060显卡比1060跑深度学习慢?
  17. js使用slice函数拆分数组
  18. html 苹果 地图,为什么苹果手机自带的地图是高德而不是谷歌?
  19. starlink星座近状
  20. 支付宝:APP支付接口2.0(alipay.trade.app.pay)

热门文章

  1. 老人与海好词100英文带翻译_老人与海 英文版经典句子
  2. 人脸检测,身份证扫描调三方接口获取图片base64路径转file,存入数据库(Vue)
  3. 第四章 流程控制与数组
  4. MySQL数据库教程-mysql下载-sqlyog免注册中文下载
  5. 微信红包项目测试小结
  6. 前端学习2——CSS3
  7. 【ACWing】1126. 最小花费
  8. matlab对实部与虚部求模,模板2
  9. 三子棋原来可以这样写
  10. 中小学生学习数学软件