系统管理中断处理程序的自我诊断方法技术方案

技术编号:5090801 阅读:234 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种系统管理中断处理程序的自我诊断方法。于执行系统管理中断处理程序时,自先进组态与电源接口定时器取得第一时间值。并且,取得系统管理中断的来源路径。而在系统管理中断处理程序执行结束时,再自先进组态与电源接口定时器取得第二时间值。依据第一时间值与第二时间值获得系统管理中断处理程序的执行时间。倘若执行时间大于或等于一逾时时间,则将此系统管理中断的相关信息记录下来。

【技术实现步骤摘要】

本专利技术涉及一种系统管理中断机制,且特别涉及一种系统管理中断处理程序的自 我诊断方法。
技术介绍
系统管理模式(System Management Mode, SMM)为现今一般个人计算机系统所用 的中央处理单元的一种特别功能。当系统管理中断(System Management Interrupt, SMI) 被触发到中央处理单元(CentraProcessing Unit, CPU)时,所有的中央处理单元都会接 收到这一信号,而进入系统管理模式。基本输入输出系统(Basic Input Output System, BIOS)可以在系统管理模式下执行系统管理中断处理程序(SMI handler,以下简称SMI处 理程序),以服务系统管理中断。一般而言,如果计算机系统设置有多个中央处理单元,则仅会有一个中央处理单 元会来执行SMI处理程序,其余的中央处理单元则是处于等待状态,其等待执行上述SMI处 理程序完成。因此,系统管理中断对于系统的运作(operation)与效能(performance)影 响很大。然而,计算机系统的运作仅会注重SMI处理程序功能的正确性。也就是当系统管 理中断发生时,SMI处理程序会依据此系统管理中断来进行相对应的功能。据此,往往会忽 略了 SMI处理程序的执行过程中是否合理或符合规定。例如,SMI处理程序是否逾时、中央 处理单元的使用率是否过高等情形。
技术实现思路
有鉴于此,本专利技术提供一种SMI处理程序的自我诊断方法,使得SMI处理程序能够 自我诊断其处理过程是否合理或符合规定。具体而言,本专利技术提出一种SMI处理程序的自我诊断方法,其适于一计算机系统。 在此,当系统管理中断被触发至中央处理单元时,由中央处理单元执行SMI处理程序。接 着,自先进组态与电源接口(AdvancedConfiguration and Power hterface,ACPI)定时器 取得执行SMI处理程序的第一时间值。并且,取得系统管理中断的来源路径。而在SMI处 理程序执行结束之后,自ACPI定时器取得SMI处理程序执行结束时的第二时间值。然后, 比较SMI处理程序的执行时间与逾时时间。上述执行时间为第二时间值与第一时间值的差 值。若执行时间大于或等于逾时时间,则将执行时间、来源路径及逾时时间记录至一内存。在本专利技术一实施例中,在上述系统管理中断被触发至中央处理单元之前,可通 过基本输入输出系统(Basic Input Output System, BIOS)执行开机自我测试(Power On Self Test,POST),以初始化系统管理中断机制。并且,在初始化系统管理中断机制 时,通过基本输入输出系统自实时时钟(Real Time Clock, RTC)芯片读取第一时间戳记 (timestamp),并记录至上述内存。在本专利技术一实施例中,当上述中央处理单元执行SMI处理程序时,更可自实时时钟芯片取得第二时间戳记,以依据第一时间戳记与第二时间戳记来计算中央处理单元的使 用率。上述计算中央处理单元的使用率的步骤如下所述。在SMI处理程序执行结束之后, 将第二时间戳记与第一时间戳记之间的差值加上执行时间,藉以取得计算机系统自启动至 今所经过的总时间。接着,累加上述执行时间与一累计时间区位的值,藉以取得SMI处理程 序自计算机系统启动至今所累计执行的一累计时间。据此,便可依据累计时间与总时间来 计算中央处理单元的使用率。在本专利技术一实施例中,在上述SMI处理程序执行结束之后,还可进一步比较中央 处理单元的使用率与上限值。倘若中央处理单元的使用率大于或等于上限值,则将SMI来 源路径、第二时间戳记、中央处理单元的使用率及上限值记录至内存。在本专利技术一实施例中,上述在SMI处理程序执行结束之后,更可将累计时间写入 至累计时间区位,以供下一次执行SMI处理程序时来计算累计时间。在本专利技术一实施例中,若上述执行时间大于或等于逾时时间,更可将第二时间戳 记记录至内存。在本专利技术一实施例中,上述执行SMI处理程序之后,倘若SMI处理程序当掉 (hang),则记录一默认值至当机状态区位中,并将第二时间戳记及SMI来源路径记录至内存。在本专利技术一实施例中,上述内存为非挥发性随机存取内存(Non-Volatile Random Access Memory, NVRAM)。基于上述,本专利技术可于执行SMI处理程序的时候,将异样的系统管理中断的相关 信息记录下来,以供使用者日后检查NVRAM中的记录来得知SMI处理程序是否发生异样状 况。例如,SMI处理程序是否曾经逾时,或是中央处理单元使用率是否曾经超过上限值,甚 至能够得知计算机系统是否曾在SMI处理程序中当掉。据此,使用者便能够进一步去找出 并修复异常所在,确保计算机系统在执行SMI处理程序的合理性与计算机系统的稳定性与 效率性。为让本专利技术的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图式 作详细说明如下。附图说明 图1是依照本专利技术第一实施例的SMI处理程序的自我诊断方法的流程图 图2是依据本专利技术一实施例的系统管理中断的来源路径的示意图; 图3是依照本专利技术第二实施例的计算机系统的示意图; 图4是依照本专利技术第二实施例的SMI处理程序的自我诊断方法的流程图< 主要附图标记 300 计算机系统; 320 芯片; 323 实时时钟芯片 331 =SMI处理程序; S105 S135 本专利技术第 S405 S450 本专利技术第310 中央处理单元; 321 =ACPI定时器; 330 =SMM RAM ; 340 NVRAM ;实施例的SMI处理程序的自我诊断方法各步骤; 实施例的SMI处理程序的自我诊断方法各步骤。具体实施例方式—般而言,计算机系统的运作仅会注重SMI处理程序功能的正确性,往往忽略了 SMI处理程序的执行过程中是否合理或符合规定。例如,SMI处理程序是否逾时、中央处理 单元的使用率是否过高等情形。为此,本专利技术提出一种SMI处理程序的自我诊断方法,使得 SMI处理程序能够自我诊断其在执行过程中是否合理或符合规定。为了使本专利技术的内容更 为明了,以下特举实施例作为本专利技术确实能够据以实施的范例。第一实施例图1是依照本专利技术第一实施例的SMI处理程序的自我诊断方法的流程图。请参照 图1,步骤S105中,当系统管理中断(System Management Interrupt, SMI)被触发至中央处 理单元(Central Processing Unit, CPU)时,由中央处理单元执行系统管理中断处理程序 (SMI handler,以下简称SMI处理程序)。在此,例如可于SMI处理程序中加入一程序代码, 使得SMI处理程序能够进行自我诊断。具体而言,系统管理中断为优先权(priority)最高的中断,其包括软件系统管理 中断、硬件系统管理中断及周期性系统管理中断。软件SMI是由软件对输入输出端口做写 入而触发的SMI。硬件系统管理中断是由硬件对其所侦测到的某一个事件所触发的SMI。周 期性系统管理中断则由芯片每隔一段固定时间对中央处理单元所触发的系统管理中断。一旦系统管理中断被触发到中央处理单元,中央处理单元将会立刻进入系统管理 模式(System Manag本文档来自技高网...

【技术保护点】
一种系统管理中断处理程序的自我诊断方法,适于计算机系统,所述自我诊断方法包括:当系统管理中断被触发至中央处理单元时,由所述中央处理单元执行所述系统管理中断处理程序;自先进组态与电源接口定时器取得执行所述系统管理中断处理程序的第一时间值;取得所述系统管理中断的来源路径;在所述系统管理中断处理程序执行结束之后,自所述先进组态与电源接口定时器取得所述系统管理中断处理程序执行结束时的第二时间值;比较所述系统管理中断处理程序的执行时间与逾时时间,其中所述执行时间为所述第二时间值与所述第一时间值的差值;以及若所述执行时间大于或等于所述逾时时间,则记录所述执行时间、所述来源路径及所述逾时时间至内存。

【技术特征摘要】

【专利技术属性】
技术研发人员:卢盈志杨博钦
申请(专利权)人:英业达股份有限公司
类型:发明
国别省市:71[中国|台湾]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1