专利名称:系统事件日志记录方法
技术领域:
本发明涉及一种系统事件日志记录方法,且特别涉及一种将存储单元划分为双区 块来进行切换的系统事件日志记录方法。
背景技术:
一般而言,基板管理控制器(Baseboard Management Controller)在事件(event) 产生时,会将事件的内容及时间等相关信息记录为一系统事件日志(System Event Log,以 下简称SEL),并存储至非易失性存储器(Non-Volatile Random Access Memory,以下简 称NVRAM)中,以供使用者后续作确认。然而,非易失性存储器有空间大小的限制,目前常 见的大概可以记录512笔系统事件日志。倘若非易失性存储器的空间满了,就无法再继续 记录了。因此,目前作法是监控非易失性存储器的空间,当记录了第511笔的系统事件日 志至非易失性存储器时,基板管理控制器会接着产生“SEL FULL”这笔事件的记录。当使用 者发现这笔事件的时候(例如通过平台事件过滤器(Platform Event Filter,以下简称 PEF)的通知),再由使用者手动将非易失性存储器中的系统事件日志清空。然而,由于开机时,电脑系统固定会产生多笔的系统事件日志。据此,在经过多次 的开关机后,非易失性存储器的空间可能就被占满了。甚至有可能在某次的开机过程中,便 无法记录系统事件日志。倘若是在转储系统事件日志并进行清空的同时产生另一事件,便 无法将此事件对应的系统事件日志记录下来。
发明内容
本发明提供一种系统事件日志记录方法,将存储单元划分为第一区块与第二区 块,当其中一个区块满载时即切换至另一个区块来存储系统事件日志。具体而言,本发明提出一种系统事件日志(System Event Log,以下简称SEL)记 录方法,用于具有基板管理控制器(Baseboard ManagementController)的电脑系统。在产 生系统事件日志时,通过基板管理控制器将系统事件日志存储至存储单元的第一区块。其 中,存储单元还包括一第二区块。接着,检查第一区块是否产生日志满载事件(例如,SEL Full)。当产生日志满载事件时,将日志存储位置自第一区块切换至第二区块,使得基板管 理控制器将后续产生的系统事件日志存储至第二区块。接着,通过操作系统转储(dump)第 一区块中的系统事件日志至存储单元。之后,再通过操作系统清除第一区块的系统事件日
ο在本发明的一实施例中,上述当产生系统事件日志时,检查日志存储位置,以获得 系统事件日志所欲存储的区块。在本发明的一实施例中,上述在切换日志存储位置的步骤之后,可确认操作系统 是否已启动完成,以在操作系统启动完成时,通过操作系统转储第一区块中的系统事件日 志至存储单元。
在本发明的一实施例中,上述在将日志存储位置自第一区块切换至第二区块的步 骤之后,还可检查第二区块是否产生日志满载事件,以决定是否切换日志存储位置。当产生 日志满载事件时,将日志存储位置自第二区块切换至第一区块,使得基板管理控制器将后 续产生的系统事件日志存储至第一区块。另外,在将日志存储位置自第二区块切换至第一 区块的步骤之后,还可在操作系统启动完成时,通过操作系统转储第二区块中的系统事件 日志至存储单元。之后,再通过操作系统清除第二区块的系统事件日志。 在本发明的一实施例中,上述存储单元为一非易失性存储器(Non-Volatile Random Access Memory,以下简称NVRAM)。而存储单元为一硬盘。基于上述,本发明将存储单元划分成两个区块(即,第一区块及第二区块),并在 基板管理控制器中建立一个监控第一区块与第二区块的机制,当产生日志满载事件时,即 进行将目前记录已满的区块切换至另一区块,并且进行转储及清除的动作。如此一来,当其 中一个区块的空间满载时,便可以切换至另一区块,以避免区块空间满载而造成重要的系 统事件日志遗失。为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合附图作详 细说明如下。
图1是本发明一实施例的存储单元的方块图。图2是本发明一实施例的系统事件日志记录方法的流程图。主要元件符号说明100:存储单元110:第一区块120:第二区块S205 S225 本发明一实施例的系统事件日志记录各步骤
具体实施例方式由于开机时电脑系统固定会产生多笔的系统事件日志。倘若在经过多次的开关机 后,非易失性存储器的空间被占满,此时便无法记录后续所产生的系统事件日志。据此,本 发明提出一种系统事件日志记录方法,将存储单元划分为两个区块来使用,以避免当存储 单元空间不足时,而遗失掉后续产生的系统事件日志。为了使本发明的内容更为明了,以下 特举实施例作为本发明确实能够据以实施的范例。图1是本发明一实施例的存储单元的方块图。请参照图1,在本实施例中,存储 单元100被划分为两个区块,S卩,第一区块110与第二区块120。当产生日志满载事件时, 便可将目前记录已满的区块切换至另一区块,并且对记录已满的区块进行转储及清除的动 作。在本实施例中,存储单元100例如为非易失性存储器(Non-Volatile Random Access Memory,以下简称NVRAM)。以下再举一实施例来详细说明系统事件日志记录方法各步骤。图2是本发明一实施例的系统事件日志记录方法的流程图。请同时参照图1及图 2,在本实施例中,假设第一区块110与第二区块120皆为空的,并且假设第一区块110为预 设使用的区块。
首先,在步骤S205中,在产生系统事件日志时,通过基板管理控制器将系统事件 日志存储至存储单元100中的第一区块110。在本实施例中,当产生系统事件日志之后,可 检查一日志存储位置,藉以得知目前系统事件日志所欲存储的区块为第一区块110。接着,在步骤S210中,检查第一区块110是否产生日志满载事件(例如,SEL FULL),以判断第一区块110是否已被占满。举例来说,假设第一区块110可以记录256笔系 统事件日志,当存储至第255笔时,基板管理控制器便会接着产生日志满载事件。因此,若 未产生日志满载事件,表示第一区块110仍可继续写入系统事件日志,持续执行步骤S205, 在产生系统事件日志时,通过基板管理控制器将系统事件日志存储至存储单元100中的第 一区块110。相反地,若产生日志满载事件,表示第一区块110已被占满而无法继续写入,因 而执行步骤S215。在步骤S215中,当产生日志满载事件时,将日志存储位置自第一区块110切换至 第二区块120,使得基板管理控制器将后续产生的系统事件日志存储至第二区块120。据 此,基板管理控制器将会依据日志存储位置,而将后续产生的系统事件日志存储至第二区 块 120。之后,在切换日志存储位置之后,确认操作系统是否已启动完成。在本实施例 中,可通过智能平台管理接口(Intelligent Platform Managementlnterface,以下简称 IPMI)指令来确认操作系统是否已启动完成。也就是说,通过一晶片发送信息去询问中央处 理单元,操作系统是否已启动完成。当操作系统在初始化的时候会载入IPMI的驱动程式, 而由IPMI的驱动程式定时发送一个重置(reset)指令给基板管理控制器。在基板管理控 制器中包括一看门狗计时器(watch dog timer) 0倘若操作系统开启失败(例如当机)则 便不会发送重置指令,此时,看门狗计时器便会归零。据此,基板管理控制器若侦测到看门 狗计时器归零即表示操作系统启动失败。倘若操作系统启动完成,接着执行步骤S220,通过操作系统来转储第一区块110 中的系统事件日志至存储单元(例如,硬盘)。也就是将第一区块110中的系统事件日志备 份到硬盘当中。最后,如步骤S225所示,通过操作系统清除第一区块110的系统事件日志。由于转储及清除第一区块110中的系统事件日志是通过操作系统来执行,为了确 保在操作系统启动完成之前,所产生的系统事件日志能够被保留下来,通过上述步骤便能 将后续产生的系统事件日志记录至第二区块120。另外,在将日志存储位置自第一区块110切换至第二区块120之后,同样地,亦检 查第二区块120是否产生日志满载事件,以决定是否再次切换日志存储位置。当第二区块 120产生日志满载事件时,将日志存储位置自第二区块120切换至第一区块110,使得基板 管理控制器将后续产生的系统事件日志存储至第一区块110。并且,在确认操作系统启动完 成之后,通过操作系统转储第二区块120中的系统事件日志至存储单元,再通过操作系统 清除第二区块120的系统事件日志。如此一来,当第一区块110记录已满时,便可切换至第 二区块120继续记录,而当第二区块120记录已满时,则再切换回第一区块110继续记录。综上所述,本发明将存储单元划分成两个区块(即,第一区块及第二区块),并在 基板管理控制器中建立一个监控第一区块与第二区块的机制,当目前使用的区块产生日志 满载事件时,即进行将目前记录已满的区块切换至另一区块,并且对记录已满的区块进行 转储及清除的动作。如此一来,当其中一个区块的空间满载时,便可以切换至另一区块,以避免区块空间满载而造成重要的系统事件日志遗失。
最后应说明的是以上实施例仅用以说明本发明的技术方案而非对其进行限制, 尽管参照较佳实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解其依 然可以对本发明的技术方案进行修改或者等同替换,而这些修改或者等同替换亦不能使修 改后的技术方案脱离本发明技术方案的精神和范围。
权利要求
1.一种系统事件日志记录方法,用于具有基板管理控制器的电脑系统,所述方法包括在产生所述系统事件日志时,通过所述基板管理控制器将所述系统事件日志存储至存 储单元的第一区块,其中所述存储单元还包括第二区块; 检查所述第一区块是否产生日志满载事件;当产生所述日志满载事件时,将日志存储位置自所述第一区块切换至所述第二区块, 使得所述基板管理控制器将后续产生的所述系统事件日志存储至所述第二区块; 通过操作系统转储所述第一区块中的系统事件日志至存储单元;以及 通过所述操作系统清除所述第一区块的系统事件日志。
2.根据权利要求1所述的系统事件日志记录方法,其中当产生所述系统事件日志时, 还包括检查所述日志存储位置,以获得所述系统事件日志所欲存放的区块。
3.根据权利要求1所述的系统事件日志记录方法,其中在切换所述日志存储位置的步 骤之后,还包括确认所述操作系统是否已启动完成,以在所述操作系统启动完成时,通过所述操作系 统转储所述第一区块中的系统事件日志至所述存储单元。
4.根据权利要求1所述的系统事件日志记录方法,其中在将所述日志存储位置自所述 第一区块切换至所述第二区块的步骤之后,还包括检查所述第二区块是否产生所述日志满载事件,以决定是否切换所述日志存储位置。
5.根据权利要求4所述的系统事件日志记录方法,其中在检查所述第二区块是否产生 所述日志满载事件的步骤之后,还包括当产生所述日志满载事件时,将所述日志存储位置自所述第二区块切换至所述第一区 块,使得所述基板管理控制器将后续产生的所述系统事件日志存储至所述第一区块。
6.根据权利要求5所述的系统事件日志记录方法,其中在将所述日志存储位置自所述 第二区块切换至所述第一区块的步骤之后,还包括通过所述操作系统转储所述第二区块中的系统事件日志至所述存储单元;以及 通过所述操作系统清除所述第二区块的系统事件日志。
7.根据权利要求1所述的系统事件日志记录方法,其中所述存储单元为非易失性存储ο
8.根据权利要求1所述的系统事件日志记录方法,其中所述存储单元为硬盘。
全文摘要
本发明提供了一种系统事件日志记录方法,用于具有基板管理控制器的电脑系统。在产生系统事件日志时,通过基板管理控制器将系统事件日志存储至存储单元的第一区块。其中,存储单元还包括一第二区块。接着,检查第一区块是否产生日志满载事件。当产生日志满载事件时,将日志存储位置自第一区块切换至第二区块,使得基板管理控制器将后续产生的系统事件日志存储至第二区块。接着,通过操作系统转储第一区块中的系统事件日志至存储单元。之后,再通过操作系统清除第一区块的系统事件日志。
文档编号G06F12/16GK102073599SQ20091022195
公开日2011年5月25日 申请日期2009年11月23日 优先权日2009年11月23日
发明者陈国泰 申请人:英业达股份有限公司