在计算设备中执行系统维护的方法和系统的制作方法

文档序号:6352432阅读:200来源:国知局
专利名称:在计算设备中执行系统维护的方法和系统的制作方法
在计算设备中执行系统维护的方法和系统背景技术
计算机系统如个人电脑(PC)通常要求定期维护以确保计算机系统在使用过程中具有优越的性能。然而,在很多时候,只有出现了问题才会反应性地进行计算机系统维护和诊断,给用户造成长时间的停机。不对计算机系统做定期检查和维护将会导致系统出现性能或不稳定性问题,造成用户挫败感,并带来很多不必要的支持电话,这些无疑会浪费用户和系统提供商的时间和金钱。
另外,即使定期进行计算机系统维护,目前可用的维护程序通常在操作系统环境下执行。因此,很多正在被检查的硬件正被操作系统使用着,因而无法进行完全测试。这可能会造成计算机系统存在的问题被忽视。


在下面的说明书中,将参照附图给出一些示例性的实施例,其中:
图1是根据实施例的包括系统维护应用程序的计算设备的结构框图2是根据实施例的在计算设备中执行系统维护的方法流程图3是根据实施例的其中存储有配置为在计算设备中执行系统维护的代码的非暂时性计算机可读介质的结构框图。
具体实施方式
本发明技术的示例性实施例提供了一种主动对诸如个人电脑的计算设备进行系统维护、优化和性能测试的系统和方法。系统维护、优化和性能测试在这里可合称为“系统维护”,可以包括,例如对硬盘或其它存储系统的检查和/或修复,电池性能的测试和校准,冷却系统的测试,系统主板的测试,系统存储器的测试等。系统维护可以在离线模式下在设备停机期间进行,这样不会中断用户对PC的日常使用。而且,系统维护可以在操作系统启动之前的环境下执行,使得操作系统或在其中运行的应用程序不会干扰系统维护期间执行的各种硬件测试和/或修复。在一些实施例中,系统维护可由统一的可扩展固件接口(UEFI)环境下的系统维护应用程序来执行,该UEFI环境包括在实现了 UEFI BIOS的计算机系统中。
图1是根据实施例的包括系统维护应用程序的计算设备的结构框图。该系统一般性地由附图标记100指代。本领域普通技术人员应该理解,图1所示的功能块和设备可以包括:包括电路在内的硬件元素,包括存储在非暂时性机器可读介质上的计算机代码在内的软件元素,或硬件和软件元素的结合。而且,配置并不局限于图1所示,任何数量的功能块和设备都可以用于本发明技术的实施例中。本领域普通技术人员可以根据具体电子设备在设计上的考虑,很容易地定义特定的功能块。
如图1所示,计算设备100可包括处理器102,其通过总线104与一种或多种的非暂时性计算机可读介质如系统存储器106相连,非暂时性计算机可读介质可在执行各种操作程序,包括本技术的实施例中所使用的操作程序的过程中使用。存储器106可以包括只读存储器(ROM),随机存储器(RAM)等。计算设备100可以包括其它非暂时性计算机可读介质,如存储系统108,用于长期存储操作程序和数据,包括本技术实施例中所用的操作程序和数据。存储系统108可以包括例如硬盘,光驱,CD,DVD,闪存等。在一些实施例中,存储系统108可以是硬盘驱动器,并且可以包括磁盘维护固件,磁盘维护固件存储于硬盘驱动器的存储设备中。例如,磁盘维护固件可包括错误检测和纠正程序,能自动进行完全表面扫描,软件修复和硬盘重新映射。
计算设备100也可包括一个或多个输入设备(未显示),如鼠标、触摸屏、键盘及其它。计算设备还可包括显示器(未显示),例如计算机监视器,IXD屏幕等。在一些实施例中,计算设备100是通用计算机设备,例如台式电脑,便携式电脑,商用服务器等。
计算设备100也可包括图形处理器110和一个或多个I/O控制器112。在一些实施例中,计算机设备100是便携式电脑或其它使用电池操作的电子设备,此时计算机设备还可包括可再充电的电池114。电池114可以包括任何合适类型的可再充电的电池,如锂离子电池(Li+),镍镉电池(NiCd),镍氢电池(NiMH)等。电池114可包括电池控制电路或与电池控制电路相连,可用电池控制软件或固件对电池控制电路编程,用于控制电池的充电和放电。
计算设备100还可包括冷却系统116。冷却系统可以配置为从计算设备100的各种硬件组件如处理器102、图形处理器110、电池114及类似物中取走热量。冷却系统116可以包括一个或多个冷却管道、散热片、热管、风扇以及其它设计成取走计算机设备100的硬件组件热量的组件。冷却系统116还可以包括一个或多个温度传感器,处理器可以用温度传感器监测某个硬件组件的温度和通过计算机设备100的热流量。在一些实施例中,可以为计算设备100生成基准温度曲线图。基准温度曲线图可以包括作为基准的设计的或测量的计算机设备100的温度特性,以后的温度测量值可以与之进行比较,以识别冷却系统116出现的问题。温度曲线图可由计算设备制造商生成,并存储在例如B10S118或存储系统108中。
计算设备100还可以包括基本输入/输出系统(BIOS) 118。B10S118用作系统硬件/固件与操作系统之间的接口。在某些实施例中,BIOSl 18是UEFI环境,其可以与传统的基本输入/输出系统(BIOS)固件集成或替代传统的基本输入/输出系统(BIOS)固件。其它适合的接口也能在不同的实施例中使用。在各种实施例中,BIOSl 18还用作启动加载器,执行启动顺序并为计算设备100加载操作系统。
计算设备100也可包括维护应用程序120,用于执行这里称之为维护操作的各种系统优化和性能测试。维护操作可包括例如检查和/或修复硬盘或其它存储系统108,电池性能的测试和/或校准,冷却系统的测试,系统主板的测试,系统存储器的测试以及其它。维护应用程序所执行的维护操作可在操作系统之前的环境下进行。这样,可完全控制计算机系统100的硬件,而不受其它应用程序的干扰,否则这些应用程序会占用硬件资源。另夕卜,可以并列执行一些系统检查和优化,以减少计算机设备100不能被用户使用的时间。维护应用程序120可以存储在任何适合的非暂时性计算机可读介质上。例如,如图1所示,维护应用程序120可以和BIOS存储在一起,它们可以被存储在系统存储器106所包括的专用的BIOS存储器芯片上。维护应用程序120也可以存储于存储系统108或独立的存储器芯片上,如R0M、EEPR0M、闪存以及类似物。
计算设备100也可以包括用户界面122,能让计算设备100的用户对维护应用程序120的各方面进行控制。例如,用户界面122可以用于安排系统维护,指定要执行的维护任务的类型,指定系统维护活动的各项参数,禁用或启用维护应用程序等。用户界面也可用于显示维护应用程序120所执行的各项维护操作的结果。
计算机系统还可包括维护守护程序124,它是在后台执行的程序,被配置成触发维护事件。在一些实施例中,维护守护程序124触发的维护事件使得计算设备100终止操作系统并在操作系统之前的环境下启动维护应用程序120。用户界面122和维护守护程序124可以在主操作系统环境下并从主操作系统环境进行访问。如图1所示,用户界面122和维护守护程序124可存储在存储系统108中。此外,用户界面122和维护守护程序124可以与B10S118 —起存储在单独的存储器芯片上,如ROM、EEPR0M、闪存等。这里所述的技术参照图2可理解得更好。
图2是根据实施例的在计算设备中执行系统维护的方法流程图。该方法可以用附图标记200指代。该方法可以起始于框202,在这里维护事件被触发。在一些实施例中,通过在操作系统环境下运行的应用程序来触发该维护事件。在一些实施例中,维护事件可以例如通过用户界面122手动触发。在一些实施例中,维护事件根据维护安排表由维护守护程序124自动触发,该维护安排表可由例如用户或计算设备100的制造商指定。在一些实施例中,维护安排表可指定在设备停机期间触发维护事件,即在计算设备不可能被使用的时候触发维护事件。若运行并从计算机设备的B10S118重启动时,维护事件的触发会使计算设备100关闭操作系统。可以在B10S118中设置维护标记,指明在重启动时应当启动维护应用程序120。当系统维护完成时,可以通过维护应用程序120重新设置维护标记。
在一些实施例中,从计算设备100的操作系统里触发维护事件,此时的操作系统可以是待命状态,如待机模式或休眠状态。维护事件的触发可使计算设备100从待命状态苏醒并触发计算设备的操作系统重启动。在一些实施例中,维护事件可以在计算设备关机的状态下被触发。在这样的实施例中,维护事件的触发可使计算设备100开机。
在框204处,维护应用程序120可在操作系统之前的环境下被B10S118启动。启动后,维护应用程序120可执行各种计算机维护任务,包括电池的校准,存储器的检查、冷却系统的检查、系统主板完整性的检查和存储器的检查等等。而且,可同时执行两个或多个计算机维护任务。通过在操作系统加载前启动维护程序120,维护应用程序120可在单线程的编程环境下运行,此时维护应用程序120对计算机设备硬件的控制可以更加完全,而不必与其它在操作系统环境下执行的应用程序分享资源。以上所述的计算机维护任务将在以下进一步描述。
在一些实施例中,维护应用程序120可为电池114进行电池校准。由于各种可再充电电池的性质,通常要求电池要定期校准以确保电池在充电之间的寿命最大化。例如,便携式电脑通常使用的锂离子电池一般应每60-90天进行一次电池校准,以确保电池在充电之间的寿命最大化。电池校准通常使用一些充电和放电循环组合,花2-4小时或更长时间完成。
维护应用程序120可与电池控制逻辑相联接,用于控制电池114的充电和放电。因维护应用程序120在操作系统之前的环境下执行电池校准,维护应用程序避免了与可嵌入计算设备100操作系统的电力管理实用程序产生冲突。绕过电力管理实用程序,使电池114从完全充电状态到完全放电状态间循环,不会因待机和/或休眠状态而中断,而如果通过电力管理实用程序,是会因待机和/或休眠状态而中断循环的。如果不绕过这种电力管理实用程序,操作系统可能不允许电池完全放电。此外,电池的充电和放电可与维护应用程序120所执行的任何额外的维护特征同时进行。在一些实施例中,在放电期间电池上存在着的电负荷是由执行一项或多项额外的维护操作,如冷却系统的检查,存储器的检查,系统完整性的检查,存储系统的检查等导致的。另外,每一项维护操作都可以以向电池114提供恒定电负荷的方式进行。
在一种实施例中,维护应用程序120可以进行存储系统108的维护。例如,维护应用程序120可用完全表面扫描和硬盘软件修复进行硬盘检查。对硬盘进行完全表面扫描可以修复通常称之为“软件故障”的错误,通过使用错误检测和纠正技术,可以重新获得正确的数据。在检测到软件错误时,硬盘可将发现错误的扇区重新映射为新的扇区。由于维护应用程序120在操作系统之前的环境外运行,否则可能被操作系统使用的部分硬盘也可用于重新映射,这就使维护操作更加彻底。根据硬盘的大小,完全表面扫描可能会用一到数个小时。
在一实施例中,维护应用程序120可执行对冷却系统116的检查,以确定冷却系统116是被堵塞还是不能正常工作。出故障的冷却系统会阻滞处理器102的节流,从而影响计算机设备100的性能,如果不纠正的话,会造成进一步的破坏。维护应用程序120可以通过使用压力测试对冷却系统116进行检查。压力测试可驱动某些产生热量的计算机设备硬件组件,如处理器102和图形处理器100。可以通过使用热传感器测量硬件组件的温度,并生成计算机设备100当前的热曲线图。当前的热曲线图可以与原始的热曲线图,如计算机设备100刚被制造时的热曲线图进行对比。用这种方式,根据已知的或设计的热曲线图可以估算出通过计算机设备100的热流量,以识别异常情况。
在一种实施例中,维护应用程序120可以执行系统完整性检查。系统完整性检查可用于发现与处理器102、图形处理器110、系统总线104、1/0控制器112、系统电路板等关联的间歇性错误。在系统完整性检查过程中,维护应用程序可以以给子系统的组合体施压,以运用设备针脚,发现任何完整性的问题,即它们是在系统主板上固定得怎么样,或组件间的任何与时间相关的问题的方式执行一系列的计算机操作,这些计算机操作将使用计算机设备100的核心组件,如处理器102、系统存储器106、总线控制器、I/O控制器112、图形处理器110等。系统完整性检查中检测到的任何系统错误,将表明系统电路板或计算设备100的其它组件可能存在间歇性问题。系统完整性检查可以多次重复进行,以识别间歇性错误。而且,系统完整性检查可以在冷却系统检查、电池校准、硬盘检查和其它维护操作进行的过程中进行。在一些实施例中,系统完整性检查提供了一部分处理负荷,这部分处理负荷在冷却系统116检查的过程中驱动硬件组件并在电池校准过程中给电池114放电。
在一个实施例中,维护应用程序120可执行对系统存储器106的检查。系统存储器106是任何计算设备100的常见故障点。主动诊断系统存储器问题可以帮助预防系统崩溃和不稳定。可以通过反转系统存储器106的每个存储器位,并分析系统存储器对时间事件的响应,来执行对系统存储器106的检查。在操作系统环境下,部分存储系统通常被操作系统环境下执行的某些程序占用,因此无法访问而进行错误检测操作。由于维护应用程序120在操作系统之前的环境下执行系统存储器106的检查,维护应用程序120可对系统存储器106行使完全的控制,而不受在操作系统环境下可能执行的程序的干扰。系统存储器106的检查可能花几个小时完成。在一些实施例中,维护应用程序120与其它维护操作如电池校准、系统完整性检查、存储系统维护、冷却系统检查等一起,并行执行系统存储器106的检查。
在框206处,维护应用程序可生成一个日志文件,详细记录维护应用程序执行的各种维护操作的结果。尽管以单独的方框显示,应该理解的是该日志文件可以与维护应用程序120的维护操作同时生成,例如作为可报告的事件发生。该日志文件可存储在存储系统108或计算机设备100的操作系统可访问的任何其它存储位置。
日志文件可以包括在维护应用程序120执行维护操作过程中识别的任何可报告的情况,包括某些操作的成功或失败,以及识别的任何可能存在的问题性情况。例如,日志文件可以包括一个或多个关于电池校准完成的事项,以及关于电池114状态如电池电荷容量的事项或标示,等等。关于电池114的日志文件事项可用来确定电池114是否工作正常或者是否需要更换。
日志文件也可包括一个或多个关于系统存储器106的事项,例如系统存储器106满负荷工作的指示,或关于存储器位看起来有错的指示。日志文件还可以包括关于在存储系统108检查过程中检测到的错误以及错误是否被成功修复的事项。日志文件还可包括关于在系统完整性检查过程中发现的间歇性或持久性错误的事项。
日志文件也可以包括关于冷却系统的状况的事项,如冷却系统异常的存在和/或异常来源的指示。例如,日志事项可以指示计算系统100的特定组件可能过热。在一些实施例中,计算设备100当前的热曲线图可保存在日志文件中。
在框208处,维护应用程序120结束,并根据具体的实施例,将对计算机设备100的控制返还给传统BIOS或UEFI。传统BIOS或UEFI则可以完成任何剩余的BIOS任务并启动计算设备100的操作系统。在操作系统加载后,操作系统依次启动某些启动应用程序或后台执行的程序,如用户界面122、维护守护程序或配置为获取和/或解释日志文件中包含的维护结果的其它维护实用程序。
在框210处,可以从计算设备100的操作系统中访问维护应用程序生成的日志文件。在一些实施例中,日志文件可以被例如用户、管理员或服务器技术人员手动打开。日志文件可以用来协助验证系统的稳定性,而不需要进行额外的、漫长的诊断。
在一些实施例中,在操作系统环境下运行的应用程序如用户界面122、维护守护程序124或其它的维护实用程序可以自动访问日志文件并向用户发出有关可报告性状况的警报。例如,维护实用程序可向用户发出关于冷却系统可能存在错误的警报,例如冷却管道阻塞或散热器阻塞。维护实用程序也可以向用户发出系统存储器106存在问题,如存储器的某些位故障的警报。维护实用程序可以通知用户检测到硬盘或存储系统108存在软件错误以及修复软件或重新映射数据的成功或失败。维护实用程序还可以向用户发出系统完整性检查过程中存在间歇性错误的警报。维护实用程序还可以通知用户电池校准已完成。这样,可以用结果日志文件主动通知用户系统完整性问题并提供系统稳定性的整体状态。主动通知能让用户在计算设备100潜在的问题给用户带来实质性不便之前采取主动措施纠正这些问题。
图3是根据实施例的存储有配置为在计算设备中执行系统维护的非暂时性计算机可读介质的结构框图。非暂时性机器可读介质用附图标记300指代。非暂时性计算机可读介质300可包括任何合适的存储设备,用于存储计算机实现的指令如程序代码。例如,非暂时性计算机可读介质300可包括一个或多个非易失性存储器,易失性存储器和/或一个或多个存储设备。
非易失性存储器的例子包括,但不限于,电可擦可编程只读存储器(EEPROM)和只读存储器(ROM)。易失性存储器的例子包括,但不限于,静态随机存储器(SRAM)和动态随机存储器(DRAM)。存储设备的例子包括,但不限于,硬盘驱动器、光盘驱动器、数字多功能光盘驱动器和闪存设备。在一种实施例中,非暂时性计算机可读介质300包括实现B10S118的计算机芯片。在一种实施例中,非暂时性计算机可读介质300包括含软件或固件升级的存储设备,软件或固件升级可用于升级全部或部分B10S118。非暂时性计算机可读介质300可由处理器302通过通讯路径304进行访问。
如图3所示,这里所讨论的各种示例性的组件可存储在非暂时性计算机可读介质300上。非暂时性计算机可读介质300上的第一区306可包括如参考图2所讨论的,在设备停机期间对计算设备硬件执行一个或多个硬件维护操作的维护应用程序。维护应用程序被配置为在计算设备的操作系统之前的环境下,例如被系统BIOS启动。维护应用程序也可根据一个或多个硬件维护操作结果生成日志文件。区308可包括BIOS,如基于BIOS的UEFI,配置为受操作系统之前的环境的控制并启动计算设备的操作系统。区310可包括用户界面,被配置为访问日志文件。用户界面可在操作系统环境下运行。虽然显示为相邻的方框,软件组件可以任何顺序或配置存储。例如,如果非暂时性计算机可读介质300是硬盘驱动器,软件组件可存储在不连续的,甚至重叠的扇区。
权利要求
1.一种方法,包括: 在计算设备(100)的操作系统之前的环境下启动维护应用程序(204),其中所述维护应用程序在设备停机期间对所述计算设备(100)的硬件执行至少一个硬件维护操作; 根据所述至少一个硬件维护操作的结果,生成日志文件(206); 结束所述维护应用程序,并启动所述计算设备(100)的操作系统(208);以及 访问所述日志文件(210)。
2.根据权利要求1所述的方法,包括:当所述计算设备(100)处于待机状态时,根据指定的维护安排表从所述计算设备(100)的操作系统触发维护事件(202),并开始重新启动所述计算设备(100)的操作系统。
3.根据权利要求1所述的方法,其中所述至少一个硬件维护操作包括电池(114)的校准和至少一个额外的硬件维护操作,其中该至少一个额外的硬件维护操作与所述电池(114)的校准并行操作并为所述电池(114)的放电提供电负荷。
4.根据权利要求3所述的方法,其中所述至少一个额外的硬件维护操作包括系统存储器(106)的检查、硬盘(108)的表面扫描、冷却系统(116)的检查、系统完整性检查或它们的组合。
5.根据权利要求1所述的方法,其中所述至少一个硬件维护操作包括冷却系统(116)的检查和至少一个额外的硬件维护操作,其中该至少一个额外的硬件维护与所述冷却系统(116)的检查并行操作并提供用于在计算设备(100)中产生热量的处理负荷。
6.—种计算机系统(100),包括: 处理器(102),配置为执行机器可读指令; 存储设备(106),存储可被所述处理器(102)执行的指令模块,所述指令模块包括: 维护应用程序(120),配置为在设备停机期间,在操作系统之前的环境下对计算机系统(100)的硬件执行至少一个硬件维护操作,并根据所述至少一个硬件维护操作的结果生成日志文件(120); 基本输入/输出系统(BIOS) (118),配置为接受操作系统之前的环境的控制并启动所述计算机系统(100)的操作系统;以及 用户界面(122),配置为访问所述日志文件。
7.根据权利要求6所述的计算机系统(100),其中所述指令模块包括维护安排实用程序,配置为当所述计算机系 统(100)处于待机状态时,根据指定的维护安排表从所述计算机系统(100)的操作系统触发维护事件,并开始启动所述计算机系统(100)的操作系统。
8.根据权利要求6所述的计算机系统(100),其中所述至少一个硬件维护操作包括电池(114)的校准和至少一个额外的硬件维护操作,其中该至少一个额外的硬件维护操作与所述电池(114)的校准并行操作,并为所述电池(114)的放电提供电负荷。
9.根据权利要求8所述的计算机系统(100),其中所述至少一个额外的硬件维护操作包括系统存储器(106)的检查、硬盘(108)的表面扫描、冷却系统(116)的检查、系统完整性检查或它们的组合。
10.根据权利要求6所述的计算机系统(100),其中所述至少一个硬件维护操作包括冷却系统(116)的检查和至少一个额外的硬件维护操作,其中该至少一个额外的硬件维护操作与所述冷却系统(116)的检查并行操作,并提供用于在所述计算机设备(100)中产生热量的处理负荷。
11.一种非暂时性计算机可读介质(300),包括指令模块(306、308、310),所述指令模块(306、308、310)被配置为指导处理器(302): 在设备停机期间,在操作系统之前的环境下对计算设备(100)的硬件执行至少一个硬件维护操作(204); 根据所述至少一个硬件维护操作的结果生成日志文件(206); 启动所述计算设备(100)的操作系统(208);以及 访问所述日志文件(210)。
12.根据权利要求11所述的非暂时性计算机可读介质(300),包括指令模块,其被配置为指导所述处理器(302)在所述计算设备(100)处于待机状态时,根据指定的维护安排表从所述计算设备(100)的操作系统触发维护事件(202),并开始重新启动所述计算设备(100)的操作系统。
13.根据权利要求11所述的非暂时性计算机可读介质(300),其中所述至少一个硬件维护操作包括电池(114)的校准和至少一个额外的硬件维护操作,其中该至少一个额外的硬件维护操作与所述电池(114)的校准并行操作,并为所述电池(114)的放电提供电负荷。
14.根据权利要求13所述的非暂时性计算机可读介质(300),其中所述至少一个额外的硬件维护操作包括系统存储器(106)的检查、硬盘(108)的表面扫描、冷却系统(116)的检查、系统完整性检查或它们的组合。
15.根据权利要求11所述的非暂时性计算机可读介质(300),其中所述至少一个硬件维护操作包括冷却系统(116)的检查和至少一个额外的硬件维护操作,其中该至少一个额外的硬件维护操作与所述冷却系统(116)的检查并行操作,并提供用于在所述计算设备(100)中产生热量的处理负 荷。
全文摘要
本公开提供了一种在计算设备中执行系统维护的计算机实现的方法。该方法包括在计算设备的操作系统以前的环境下启动维护应用程序(204)。维护应用程序在设备停机期间对计算设备的硬件执行至少一个硬件维护操作。该方法还包括根据至少一个硬件维护操作的结果生成日志文件(206)。该方法还包括结束该维护应用程序,启动计算设备的操作系统(208),并访问日志文件(210)。
文档编号G06F9/44GK103109265SQ201080069174
公开日2013年5月15日 申请日期2010年9月22日 优先权日2010年9月22日
发明者约翰·A·朗德里 申请人:惠普发展公司,有限责任合伙企业
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1