CN108959049B - Smm的健壮性和稳定性的测试方法、装置及存储介质 - Google Patents

Smm的健壮性和稳定性的测试方法、装置及存储介质 Download PDF

Info

Publication number
CN108959049B
CN108959049B CN201810678976.2A CN201810678976A CN108959049B CN 108959049 B CN108959049 B CN 108959049B CN 201810678976 A CN201810678976 A CN 201810678976A CN 108959049 B CN108959049 B CN 108959049B
Authority
CN
China
Prior art keywords
smm
target
stability
robustness
testing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810678976.2A
Other languages
English (en)
Other versions
CN108959049A (zh
Inventor
罗鹏芳
曹光耀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201810678976.2A priority Critical patent/CN108959049B/zh
Publication of CN108959049A publication Critical patent/CN108959049A/zh
Priority to US16/493,269 priority patent/US11307973B2/en
Priority to PCT/CN2018/123477 priority patent/WO2020000950A1/zh
Application granted granted Critical
Publication of CN108959049B publication Critical patent/CN108959049B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3447Performance evaluation by modeling

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明公开了一种SMM的健壮性和稳定性的测试方法,先获取目标变量和判断SMI是否被触发,一旦确定SMI被触发,便会进入SMM,在SMM下,先确定与目标变量的当前值对应的目标测试模型,再利用预先存储在系统管理内存中的目标测试模型测试目标SMM功能,并同步通过固件打印对应的串口信息以确定SMM的健壮性和稳定性,实现对SMM的健壮性和稳定性的测试。可见,本测试方法能够在SMM下实施,从而可以对SMM的健壮性和稳定性进行有效测试,避免服务器产品因SMI的处理流程或功能设计有漏洞而出现意外宕机的情况,提升用户体验。此外,本发明还提供了SMM的健壮性和稳定性的测试装置及计算机可读存储介质,效果如上。

Description

SMM的健壮性和稳定性的测试方法、装置及存储介质
技术领域
本发明涉及计算机技术领域,特别涉及SMM的健壮性和稳定性的测试方法、装置及存储介质。
背景技术
随着计算机系统硬件的快速发展,一个系统拥有的CPU越来越多,整机多任务处理性能也得到大幅提升。但是,与此同时,系统固件使用SMI(系统管理中断)处理的各个CPU的事件变得更加复杂,需要完成的任务越来越多,在操作系统下,系统需要频繁进入SMM(系统管理模式)处理任务,因此,验证SMM的健壮性和稳定性至关重要。
在现有技术中,在服务器处于各种操作系统环境下对SMI进行处理,并通过固件打印串口信息,以固件打印出的串口信息来验证SMI的处理流程,进而实现对SMM的健壮性和稳定性的测试。但是,由于SMM的自身特性,所以服务器处于各种操作系统环境下,而非SMM下进行的各种测试始终无法覆盖SMM的全部功能,偶尔会使一些SMI的处理流程或功能设计有漏洞的服务器产品通过SMM的健壮性和稳定性测试,却最终在服务器产品出售后,出现因SMI的处理流程或功能设计有漏洞而导致意外宕机的情况,影响用户体验。
因此,如何对SMM的健壮性和稳定性进行有效测试,以避免服务器产品因SMI的处理流程或功能设计有漏洞而出现意外宕机的情况,提升用户体验是本领域技术人员目前需要解决的技术问题。
发明内容
本发明的目的是提供SMM的健壮性和稳定性的测试方法、装置及存储介质,能够对SMM的健壮性和稳定性进行有效测试,以避免服务器产品因SMI的处理流程或功能设计有漏洞而出现意外宕机的情况,提升用户体验。
为了解决上述技术问题,本发明提供的一种SMM的健壮性和稳定性的测试方法,包括:
获取目标变量,并判断SMI是否被触发;
如果是,则进入SMM,并执行下述步骤:
依据预设对应关系确定与所述目标变量的当前值对应的目标测试模型;
利用所述目标测试模型测试目标SMM功能,并同步通过固件打印对应的串口信息以确定所述SMM的健壮性和稳定性;
其中,所述目标测试模型与所述目标SMM功能对应,且预先存储于系统管理内存。
优选地,所述目标变量具体为一个预先定义的系统变量;
则对应的,所述依据预设对应关系确定与所述目标变量的当前值对应的目标测试模型具体为:依据所述预设对应关系确定与所述系统变量的当前值对应的目标测试模型。
优选地,所述目标变量具体为设置于目标地址段的多个变量,包括第一变量和第二变量;
则对应的,所述依据预设对应关系确定与所述目标变量的当前值对应的目标测试模型具体为:依据所述预设对应关系确定与所述第一变量的当前值对应的目标测试模型;
所述利用所述目标测试模型测试目标SMM功能具体为:利用所述目标测试模型基于所述第二变量的当前值测试所述目标SMM功能。
优选地,所述获取目标变量具体为:
获取在EFI shell环境下设置的所述目标变量。
优选地,所述判断SMI是否被触发具体为:
判断地址为0xB2的IO口是否接收到目标值;
如果是,则判定所述SMI被触发;
如果否,则判定所述SMI未被触发。
优选地,所述获取目标变量具体为:
获取在操作系统环境下设置的所述目标变量。
优选地,所述判断SMI是否被触发具体为:
判断地址为0xB2的IO口是否接收到目标值;
如果是,则判定所述SMI被触发;
如果否,则判定所述SMI未被触发。
为了解决上述技术问题,本发明提供的一种SMM的健壮性和稳定性的测试装置,包括:
获取判断模块,用于获取目标变量,并判断SMI是否被触发;
进入模块,用于当判定所述SMI被触发时,进入SMM,并触发确定模块;
所述确定模块,用于依据预设对应关系确定与所述目标变量的当前值对应的目标测试模型;
测试打印模块,用于利用所述目标测试模型测试目标SMM功能,并同步通过固件打印对应的串口信息以确定所述SMM的健壮性和稳定性;
其中,所述目标测试模型与所述目标SMM功能对应,且预先存储于系统管理内存。
为了解决上述技术问题,本发明还提供的一种SMM的健壮性和稳定性的测试装置,包括:
存储器,用于存储测试程序;
处理器,用于在执行所述测试程序时实现如上文所述的任一种SMM的健壮性和稳定性的测试方法的步骤。
为了解决上述技术问题,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有测试程序,所述测试程序被处理器执行时实现如上文所述的任一种SMM的健壮性和稳定性的测试方法的步骤。
本发明提供的SMM的健壮性和稳定性的测试方法,先获取目标变量和判断SMI是否被触发,一旦确定SMI被触发,便会进入SMM,在SMM下,先确定与目标变量的当前值对应的目标测试模型,再利用预先存储在系统管理内存中的目标测试模型测试目标SMM功能,并同步通过固件打印对应的串口信息,以最终能够依据打印出的串口信息确定SMM的健壮性和稳定性,实现对SMM的健壮性和稳定性的测试。可见,本测试方法能够在SMM下实施,从而可以克服操作系统环境下的测试无法覆盖SMM的全部功能的问题,对SMM的健壮性和稳定性进行有效测试,避免了服务器产品因SMI的处理流程或功能设计有漏洞而出现意外宕机的情况,提升用户体验。此外,本发明还提供了SMM的健壮性和稳定性的测试装置及计算机可读存储介质,效果如上。
附图说明
为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例提供的一种SMM的健壮性和稳定性的测试方法的流程图;
图2为本发明实施例提供的一种SMM的健壮性和稳定性的测试装置的组成示意图;
图3为本发明实施例提供的一种SMM的健壮性和稳定性的测试装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动的前提下,所获得的所有其他实施例,都属于本发明保护范围。
本发明的目的是提供SMM的健壮性和稳定性的测试方法、装置及存储介质,能够对SMM的健壮性和稳定性进行有效测试,以避免服务器产品因SMI的处理流程或功能设计有漏洞而出现意外宕机的情况,提升用户体验。
为了使本领域的技术人员更好的理解本发明技术方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。
图1为本发明实施例提供的一种SMM的健壮性和稳定性的测试方法的流程图。如图1所示,本实施例提供的SMM的健壮性和稳定性的测试方法,包括:
S10:获取目标变量,并判断SMI是否被触发。
如果是,则进入步骤S11。
如果否,则重复步骤S10。
目标变量可以是预先指定的一个系统变量,也可以是预先指定的一个地址段内设置的多个系统变量。目标变量的不同值对应不同的SMM功能,当测试哪种SMM功能时,用户可以通过将与该SMM功能对应的值赋给目标变量,并触发SMI实现对SMM功能的测试,如果需要测试所有的SMM功能,则依次将对应的值赋给目标变量,并没赋一次值触发一次SMI即可。具体地,假设具体的测试参数已经预先集成于测试模型,目标变量为预先指定的一个系统变量,如果目标变量为1时,对应于SMM功能1,则用户可以将1赋值给目标变量,并触发SMI,以测试SMM功能1;而如果目标为1-4时,分别对应于SMM功能1-4,则用户可以先将1赋值给目标变量,并触发SMI,以测试SMM功能1,在SMM功能1测试完成后,再将2赋值给目标变量,并触发SMI,以测试SMM功能2,以此类推,直至测试完SMM功能4,实现SMM功能1-4的测试。同理,对于具体的测试参数没有预先集成于测试模型,目标变量为预先指定的一个地址段内设置的多个系统变量的情况,测试SMM功能的过程与上述过程类似,本发明不再赘述。
以前x86使用INT x的方式来处理中断程序,后来要处理的中断越来越多,为了让软硬件设计者更容易设计出符合需求的中断程序,CPU提供了系统管理中断,即SMI,它独立于其它形式的中断,不可被屏蔽。并且,随着SMI的出现,系统管理模式,即SMM,也被引入intel 386、intel486等。SMI是进入SMM的唯一途径,分为软件中断和硬件中断,即用程序设定产生中断和外部硬件产生中断,如利用CPU错误管脚产生中断。因此,对于SMI的触发而言,可以由处理器的SMI管脚有效触发或者由APIC(Advanced Program InterfaceController)总线的SMI信息进行触发。
S11:进入SMM。
SMM是一种特殊的操作模式,在这种模式下,可以执行高级电源管理,硬件控制和运行OEM代码。它对于操作系统而言是完全透明的,也就是说操作系统并不知道CPU什么时候会进入和退出SMM。在SMM中,CPU需要一块内存区域SMRAM,CPU在进入SMM前,会把寄存器的值存储到SMRAM中,然后CPU会跳转到系统固件SMI处理程序入口去执行处理程序,一般来说,系统会有多个CPU,进入SMM后,系统固件会选取一个主CPU来执行主要的处理程序,其他CPU大部分时间都会处于等待执行任务的状态,只有主CPU通知其它CPU执行任务时才会被激活,SMI处理完成后用RSM指令跳转回原来的地方继续执行,同时恢复CPU寄存器的值。
近年来,由于计算机系统硬件发展较快,一个系统拥有越来越多的CPU,从而使得整机多任务处理性能得到大幅提升,然而系统固件使用SMI处理的各个CPU的事件变得更加复杂,需要完成的任务越来越多,特别是多路系统需求的系统资源较多,在操作系统下,系统频繁进入SMM处理任务。因此,对SMI中断处理流程和SMM资源设计等方面提供有效的测试方法,测试系统的SMM健壮性和稳定性显得至关重要。而在现有技术中,由于无法在SMM下对SMM功能进行测试,而只能在操作系统环境下进行测试,所以,使得测试始终无法覆盖SMM的全部功能,偶尔会使一些SMI的处理流程或功能设计有漏洞的服务器产品通过SMM的健壮性和稳定性测试,却最终在服务器产品出售后,出现因SMI的处理流程或功能设计有漏洞而导致意外宕机的情况,影响用户体验。因此,在本实施例提供的SMM的健壮性和稳定性的测试方法中,一旦SMI被触发,则进入步骤S11,在SMM下进行测试,以使测试能够覆盖SMM的全部功能,对SMM的健壮性和稳定性进行有效测试,避免服务器产品因SMI的处理流程或功能设计有漏洞而出现意外宕机的情况,提升用户体验是本领域技术人员目前需要解决的技术问题。
S12:依据预设对应关系确定与目标变量的当前值对应的目标测试模型。
其中,目标测试模型预先存储于系统管理内存。
目标测试模型本质上为测试程序,需要在SMM下运行;系统管理内存即为SMRAM。在SMM下执行的程序被称作SMM处理程序,由于所有的SMM处理程序只能在SMRAM的空间内运行,所以,目标测试模型需要预先存储于系统管理内存中。同理,由于在执行步骤S12的时候,所以,在步骤S12中,想要确定出与目标变量的当前值对应的目标测试模型,预设对应关系也不需随着目标测试模型的植入而植入到系统管理内存中。并且,预设对应关系为目标变量的各可能取值与各测试模型的对应关系。依据该对应关系,在执行完步骤S12之后,可以确定出与目标变量的当前值对应的目标测试模型是哪一个,以便CPU能够执行与目标测试模型对应的测试代码。
S13:利用目标测试模型测试目标SMM功能,并同步通过固件打印对应的串口信息以确定SMM的健壮性和稳定性。
其中,目标测试模型与目标SMM功能对应。
执行完步骤S12之后,已经确定出目标测试模型,则在步骤S13中,便可以直接利用目标测试模型测试目标SMM功能。在利用目标测试模型测试目标SMM功能的时候,会产生对应的测试数据,即串口信息,用户可以根据串口信息得知SMI的处理流程或功能设计是否有漏洞,从而进一步确定SMM的健壮性和稳定性。因此,在步骤S13中,在利用目标测试模型测试目标SMM功能的时候,还同步通过固件打印对应的串口信息。
一般地,目标测试模型对应的测试程序执行完毕之后,会自动退出SMM,返回操作系统,即CPU回到触发SMI前的状态。但是,可以理解的是,如果进行的是错误注入测试,则也可能在目标测试模型对应的测试程序执行完毕之后,无法自动退回SMM,用户可以直接验证测试结果。
另外,值得注意的是,为了保证服务器产品具有更高的可靠性,优选地,在服务器产品发布前,将目标变量移除,并同时删除测试模型,即删除与测试模型对应的测试代码。
综上所述,本实施例提供的SMM的健壮性和稳定性的测试方法,先获取目标变量和判断SMI是否被触发,一旦确定SMI被触发,便会进入SMM,在SMM下,先确定与目标变量的当前值对应的目标测试模型,再利用预先存储在系统管理内存中的目标测试模型测试目标SMM功能,并同步通过固件打印对应的串口信息,以最终能够依据打印出的串口信息确定SMM的健壮性和稳定性,实现对SMM的健壮性和稳定性的测试。可见,本测试方法能够在SMM下实施,从而可以克服操作系统环境下的测试无法覆盖SMM的全部功能的问题,对SMM的健壮性和稳定性进行有效测试,避免服务器产品因SMI的处理流程或功能设计有漏洞而出现意外宕机的情况,提升用户体验。
为了在测试过程中,减少用户操作,提升用户操作的便捷性,基于上述实施例,作为一种优选的实施方式,目标变量具体为一个预先定义的系统变量;
则对应的,依据预设对应关系确定与目标变量的当前值对应的目标测试模型具体为:依据预设对应关系确定与系统变量的当前值对应的目标测试模型。
本实施例中,目标变量仅为一个预先定义的系统变量,其具体值用于指定目标测试模型,而测试目标SMM功能时所需要的其它具体测试参数均已集成于目标测试模型中。因此,应用本实施例提供的SMM的健壮性和稳定性的测试方法,用户只要设置一个系统变量的具体值便可以指定目标测试模型以测试想要测试的SMM功能,而无需再单独设置具体地测试参数,能够有效减少用户操作,提升用户操作的便捷性。
为了在测试过程中,更多地满足用户个性化需求,提升用户体验,基于上述实施例,作为一种优选的实施方式,目标变量具体为设置于目标地址段的多个变量,包括第一变量和第二变量;
则对应的,依据预设对应关系确定与目标变量的当前值对应的目标测试模型具体为:依据预设对应关系确定与第一变量的当前值对应的目标测试模型;
利用目标测试模型测试目标SMM功能具体为:利用目标测试模型基于第二变量的当前值测试目标SMM功能。
本实施例中,目标变量为设置于目标地址段的多个变量,包括第一变量和第二变量,第一变量的具体值用于指定目标测试模型,第二变量的具体值用于设置测试目标SMM功能的具体测试参数,且其个数由具体的测试需求而定,本发明对此不作限定。因此,应用本实施例提供的SMM的健壮性和稳定性的测试方法,用户不仅可以设置第一变量的具体值以指定目标测试模型测试想要测试的SMM功能,而且,还可以个性化设置具体的测试参数,更多地满足用户的个性化需求,提升用户体验。
但是,需要注意的是,不仅确定目标测试模型的时候,需要使用第一变量的具体值,而且,在利用目标测试模型测试目标SMM功能时也需要使用第二变量的具体值,所以,目标地址段的地址也应位于SMRAM内。
基于上述实施例,作为一种优选的实施方式,获取目标变量具体为:
获取在EFI shell环境下设置的目标变量。
为了进一步提升用户体验,基于上述实施例,作为一种优选的实施方式,判断SMI是否被触发具体为:
判断地址为0xB2的IO口是否接收到目标值;
如果是,则判定SMI被触发;
如果否,则判定SMI未被触发。
其中,目标值预先设置,其大小不会影响本实施例的实施,只要地址为0xB2的IO口接受到目标值,则认为SMI被触发,否则,则认为SMI未被触发。
在本实施例中,SMI通过软件的方式触发,即由APIC(Advanced ProgramInterface Controller)总线的SMI信息进行触发。相比于采用硬件触发的方式而言,采用软件的方式触发SMI更加容易操作,能够提升用户的操作便捷性,提升用户体验。
基于上述实施例,作为一种优选的实施方式,获取目标变量具体为:
获取在操作系统环境下设置的目标变量。
同理,基于上述实施例,作为一种优选的实施方式,判断SMI是否被触发具体为:
判断地址为0xB2的IO口是否接收到目标值;
如果是,则判定SMI被触发;
如果否,则判定SMI未被触发。
上文对于本发明提供的一种SMM的健壮性和稳定性的测试方法的实施例进行了详细的描述,本发明还提供了一种与SMM的健壮性和稳定性的测试方法对应的SMM的健壮性和稳定性的测试装置,由于装置部分的实施例与方法部分的实施例相互照应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
图2为本发明实施例提供的一种SMM的健壮性和稳定性的测试装置的组成示意图。如图2所示,本实施例提供的SMM的健壮性和稳定性的测试装置,包括:
获取判断模块20,用于获取目标变量,并判断SMI是否被触发;
进入模块21,用于当判定SMI被触发时,进入SMM,并触发确定模块;
确定模块22,用于依据预设对应关系确定与目标变量的当前值对应的目标测试模型;
测试打印模块23,用于利用目标测试模型测试目标SMM功能,并同步通过固件打印对应的串口信息以确定SMM的健壮性和稳定性;
其中,目标测试模型与目标SMM功能对应,且预先存储于系统管理内存。
本实施例提供的SMM的健壮性和稳定性的测试装置,先通过获取判断模块获取目标变量和判断SMI是否被触发,一旦确定SMI被触发,便利用进入模块进入SMM,在SMM下。确定模块先确定与目标变量的当前值对应的目标测试模型,测试打印模块再利用预先存储在系统管理内存中的目标测试模型测试目标SMM功能,并同步通过固件打印对应的串口信息,以最终能够依据打印出的串口信息确定SMM的健壮性和稳定性,实现对SMM的健壮性和稳定性的测试。可见,本测试装置能够在SMM下实施,从而可以克服操作系统环境下的测试无法覆盖SMM的全部功能的问题,对SMM的健壮性和稳定性进行有效测试,避免服务器产品因SMI的处理流程或功能设计有漏洞而出现意外宕机的情况,提升用户体验。
上文对于本发明提供的一种SMM的健壮性和稳定性的测试方法的实施例进行了详细的描述,本发明还提供了另一种与SMM的健壮性和稳定性的测试方法对应的SMM的健壮性和稳定性的测试装置,由于装置部分的实施例与方法部分的实施例相互照应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
图3为本发明实施例提供的一种SMM的健壮性和稳定性的测试装置的结构示意图。如图3所示,本实施例提供的SMM的健壮性和稳定性的测试装置,包括:
存储器30,用于存储测试程序;
处理器31,用于在执行测试程序时实现如上述任一实施例所提供的SMM的健壮性和稳定性的测试方法的步骤。
本实施例提供的SMM的健壮性和稳定性的测试装置,由于可以通过处理器调用存储器存储的测试程序,实现如上述任一实施例提供的SMM的健壮性和稳定性的测试方法的步骤,所以本测试装置具有同上述SMM的健壮性和稳定性的测试方法同样的实际效果。
本发明还提供了一种计算机可读存储介质,计算机可读存储介质上存储有测试程序,测试程序被处理器执行时实现如上述任一实施例所提供的SMM的健壮性和稳定性的测试方法的步骤。
本实施例提供的计算机可读存储介质存储有测试程序,由于测试程序被处理器执行时可以实现如上述任一实施例提供的SMM的健壮性和稳定性的测试方法的步骤,所以本计算机可读存储介质具有同上述SMM的健壮性和稳定性的测试方法同样的实际效果。
以上对本发明所提供的SMM的健壮性和稳定性的测试方法、装置及存储介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明都是与其它实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或者操作区分开来,而不一定要求或者暗示这些实体或者操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何变体意在涵盖非排他性的包含,从而使得包括一系列的要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其它要素,或者还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (9)

1.一种SMM的健壮性和稳定性的测试方法,其特征在于,包括:
获取目标变量,并判断SMI是否被触发;
如果是,则进入SMM,并执行下述步骤:
依据预设对应关系确定与所述目标变量的当前值对应的目标测试模型;
利用所述目标测试模型测试目标SMM功能,并同步通过固件打印对应的串口信息以确定所述SMM的健壮性和稳定性;
其中,所述目标测试模型与所述目标SMM功能对应,且预先存储于系统管理内存;
其中,所述目标变量具体为设置于目标地址段的多个变量,包括第一变量和第二变量;
则对应的,所述依据预设对应关系确定与所述目标变量的当前值对应的目标测试模型具体为:依据所述预设对应关系确定与所述第一变量的当前值对应的目标测试模型;
所述利用所述目标测试模型测试目标SMM功能具体为:利用所述目标测试模型基于所述第二变量的当前值测试所述目标SMM功能。
2.根据权利要求1所述的SMM的健壮性和稳定性的测试方法,其特征在于,所述目标变量具体为一个预先定义的系统变量;
则对应的,所述依据预设对应关系确定与所述目标变量的当前值对应的目标测试模型具体为:依据所述预设对应关系确定与所述系统变量的当前值对应的目标测试模型。
3.根据权利要求1或2所述的SMM的健壮性和稳定性的测试方法,其特征在于,所述获取目标变量具体为:
获取在EFI shell环境下设置的所述目标变量。
4.根据权利要求3所述的SMM的健壮性和稳定性的测试方法,其特征在于,所述判断SMI是否被触发具体为:
判断地址为0xB2的IO口是否接收到目标值;
如果是,则判定所述SMI被触发;
如果否,则判定所述SMI未被触发。
5.根据权利要求1或2所述的SMM的健壮性和稳定性的测试方法,其特征在于,所述获取目标变量具体为:
获取在操作系统环境下设置的所述目标变量。
6.根据权利要求5所述的SMM的健壮性和稳定性的测试方法,其特征在于,所述判断SMI是否被触发具体为:
判断地址为0xB2的IO口是否接收到目标值;
如果是,则判定所述SMI被触发;
如果否,则判定所述SMI未被触发。
7.一种SMM的健壮性和稳定性的测试装置,其特征在于,包括:
获取判断模块,用于获取目标变量,并判断SMI是否被触发;
进入模块,用于当判定所述SMI被触发时,进入SMM,并触发确定模块;
所述确定模块,用于依据预设对应关系确定与所述目标变量的当前值对应的目标测试模型;
测试打印模块,用于利用所述目标测试模型测试目标SMM功能,并同步通过固件打印对应的串口信息以确定所述SMM的健壮性和稳定性;
其中,所述目标测试模型与所述目标SMM功能对应,且预先存储于系统管理内存;
其中,所述目标变量具体为设置于目标地址段的多个变量,包括第一变量和第二变量;
则对应的,所述依据预设对应关系确定与所述目标变量的当前值对应的目标测试模型具体为:依据所述预设对应关系确定与所述第一变量的当前值对应的目标测试模型;
所述利用所述目标测试模型测试目标SMM功能具体为:利用所述目标测试模型基于所述第二变量的当前值测试所述目标SMM功能。
8.一种SMM的健壮性和稳定性的测试装置,其特征在于,包括:
存储器,用于存储测试程序;
处理器,用于在执行所述测试程序时实现如权利要求1-6任一项所述的SMM的健壮性和稳定性的测试方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有测试程序,所述测试程序被处理器执行时实现如权利要求1-6任一项所述的SMM的健壮性和稳定性的测试方法的步骤。
CN201810678976.2A 2018-06-27 2018-06-27 Smm的健壮性和稳定性的测试方法、装置及存储介质 Active CN108959049B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201810678976.2A CN108959049B (zh) 2018-06-27 2018-06-27 Smm的健壮性和稳定性的测试方法、装置及存储介质
US16/493,269 US11307973B2 (en) 2018-06-27 2018-12-25 Method and device for testing robustness and stability of SMM, and storage medium
PCT/CN2018/123477 WO2020000950A1 (zh) 2018-06-27 2018-12-25 Smm的健壮性和稳定性的测试方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810678976.2A CN108959049B (zh) 2018-06-27 2018-06-27 Smm的健壮性和稳定性的测试方法、装置及存储介质

Publications (2)

Publication Number Publication Date
CN108959049A CN108959049A (zh) 2018-12-07
CN108959049B true CN108959049B (zh) 2021-12-17

Family

ID=64487161

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810678976.2A Active CN108959049B (zh) 2018-06-27 2018-06-27 Smm的健壮性和稳定性的测试方法、装置及存储介质

Country Status (3)

Country Link
US (1) US11307973B2 (zh)
CN (1) CN108959049B (zh)
WO (1) WO2020000950A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108959049B (zh) 2018-06-27 2021-12-17 郑州云海信息技术有限公司 Smm的健壮性和稳定性的测试方法、装置及存储介质
CN113076213B (zh) * 2021-03-30 2022-05-27 山东英信计算机技术有限公司 一种优化系统管理中断处理硬件错误时间的方法及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103257922A (zh) * 2013-04-16 2013-08-21 合肥联宝信息技术有限公司 一种快速测试bios与os接口代码可靠性的方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040078681A1 (en) 2002-01-24 2004-04-22 Nick Ramirez Architecture for high availability using system management mode driven monitoring and communications
US7269768B2 (en) * 2004-03-18 2007-09-11 Intel Corporation Method and system to provide debugging of a computer system from firmware
CN100369009C (zh) 2004-12-30 2008-02-13 英业达股份有限公司 使用系统管理中断信号的监控系统及方法
TW200801930A (en) * 2006-06-16 2008-01-01 Via Tech Inc Data acquisition bus transmission method and system
CN101727349A (zh) * 2008-11-03 2010-06-09 英业达股份有限公司 计算机系统与其组态管理程序传输系统信息的方法
CN102236621B (zh) * 2010-04-28 2014-12-24 国网浙江富阳市供电公司 计算机接口信息配置系统及方法
BR112014007425A2 (pt) * 2011-09-29 2017-04-04 Intel Corp equipamento para injetar erros em uma memória, sistema de computador e método para injetar erros em uma memória
WO2013077891A1 (en) * 2011-11-22 2013-05-30 Intel Corporation Collaborative processor and system performance and power management
TW201405303A (zh) 2012-07-30 2014-02-01 Hon Hai Prec Ind Co Ltd 底板管理控制器監控系統及方法
US9395919B1 (en) * 2015-02-10 2016-07-19 Advanced Micro Devices, Inc. Memory configuration operations for a computing device
US10127137B2 (en) * 2015-06-03 2018-11-13 Fengwei Zhang Methods and systems for increased debugging transparency
CN105487865A (zh) * 2015-11-27 2016-04-13 山东超越数控电子有限公司 一种解决usb设备异常唤醒系统的方法
WO2017131679A1 (en) * 2016-01-27 2017-08-03 Hewlett-Packard Development Company, L.P. System management mode test operations
CN107179911B (zh) * 2017-05-19 2020-08-18 苏州浪潮智能科技有限公司 一种重启管理引擎的方法和设备
CN108959049B (zh) 2018-06-27 2021-12-17 郑州云海信息技术有限公司 Smm的健壮性和稳定性的测试方法、装置及存储介质

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103257922A (zh) * 2013-04-16 2013-08-21 合肥联宝信息技术有限公司 一种快速测试bios与os接口代码可靠性的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于cache内容替换的系统管理模式漏洞检测方法;杨旭,骆祖莹,韩银和;《中国计算机学会容错计算专业委员会.第十四届全国容错计算学术会议(CFTC"2011)论文集》;20110730;第275-279页 *

Also Published As

Publication number Publication date
WO2020000950A1 (zh) 2020-01-02
US20210357312A1 (en) 2021-11-18
US11307973B2 (en) 2022-04-19
CN108959049A (zh) 2018-12-07

Similar Documents

Publication Publication Date Title
CN108959049B (zh) Smm的健壮性和稳定性的测试方法、装置及存储介质
JP6263981B2 (ja) 情報処理装置、情報処理装置の起動方法、及び、プログラム
JP2008009721A (ja) 評価システム及びその評価方法
US20080172579A1 (en) Test Device For Verifying A Batch Processing
US8726258B2 (en) Supporting multiple hardware components in UEFI
CN112668008A (zh) 一种基于lsm来实现动态的系统调用劫持的方法
US20050235010A1 (en) Detecting incorrect versions of files
CN113377586A (zh) 一种服务器自动化检测方法、装置及存储介质
CN114625639B (zh) 一种基于片上系统的调试方法、系统以及芯片
CN111241537A (zh) 任务栈溢出检测方法及系统
JP2001209556A (ja) 検証支援システム
CN115756935A (zh) 嵌入式软件系统的异常故障定位方法、装置及设备
CN110597705B (zh) 一种可重复获取测试数据的程序调试方法及装置
CN114003416A (zh) 内存错误动态处理方法、系统、终端及存储介质
CN111427623A (zh) 程序退出方法、装置、计算机设备和存储介质
JP5387521B2 (ja) 論理検証シナリオ生成装置、及び、論理検証シナリオ生成プログラム
CN111708579A (zh) 一种操作系统设置恢复方法、装置、设备及存储介质
KR101244684B1 (ko) 에러검출이 가능한 마이크로 컴퓨팅 장치 및 그의 에러검출방법
JP2944321B2 (ja) 論理評価システム
EP0778524A1 (en) Method and device for evaluating a program
CN113535249A (zh) 数据处理方法、装置、设备、存储介质及程序产品
CN115270107B (zh) 一种信息验证方法、装置、可读介质及电子设备
CN111782282B (zh) 启动程序加载方法和装置、电子设备和存储介质
TW201327139A (zh) 節點置換處理方法與使用其之伺服器系統
CN106250260A (zh) 处理器溢出监控和调试方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant