在数据处理系统中保持固件版本的方法和系统技术方案

技术编号:2874150 阅读:148 留言:0更新日期:2012-04-11 18:40
一种在数据处理系统中保持固件版本的方法,包含: 把与系统关联的至少一个外围设备的当前固件映像到可被系统访问的非易失存储器的一部分中; 在引导序列期间,将至少一个外围设备中的每一个上的固件版本与映像在系统非易失存储器中的相应版本加以比较;以及 响应检测到的设备固件版本与相应映像版本之间的不匹配,更新各外围设备的固件以与映像版本一致。(*该技术在2023年保护过期,可自由使用*)

【技术实现步骤摘要】

一般地说,本专利技术涉及数据处理系统领域,更具体地说,涉及利用分区盘的数据处理系统,该分区盘能存储固件版本以保持该系统的基于固件的部件的修正水平。基于微处理器的系统所用外围设备的提供商们可以在他们的设备中包括固件和/或BIOS扩展,以提供扩展功能。BIOS(基本I/O系统)是一个众所周知的术语,它通常指系统加电后立即执行的代码,它使系统能控制各种I/O设备,包括键盘、显示屏、盘驱动器、串行通信等。BIOS代码通常还完成初始程序加载(IPL),它把操作系统代码(或其一些部分)从系统盘或其他外围设备复制到系统存储器中。如它的名称暗示的那样,BIOS扩展使适配器制造商定义针对设备的代码,它通常在执行加电自检(POST)之后和在IPL之前经由系统BIOS被调用。BIOS扩展可以经由外围设备上的可选的ROM设备提供。外围设备固件是指专为该适配器设计的代码。例如,固件可以包括告诉适配器卡如何执行来自设备驱动器的命令的代码。外围设备固件、BIOS扩展以及设备驱动器都可以随时被修正、更新或者修改。当一个固件的修正水平被修改时,对这些修改必须验证其功能。如果固件修正水平、BIOS版本或设备驱动器被相继修改成不相容的水平,该系统可能不像期望的那样工作。在一个最坏的情况中,固件、BIOS和设备驱动器的组合将不显示出明显的故障,但可能在将来的某一点造成故障和/或数据丢失。这些相容性问题在现场服务事件之后往往会显现出来,这种现场服务事件包括现场替换一个或多个外围设备,这里也称作现场可替换单元(FRU)。训练服务技术人员以保证在任何现场服务之后系统的固件、BIOS以及设备驱动器全部是相容的。不幸的是,这一水平的验证没有被严格遵守,因为有许多因素,包括在不适当的时间进行现场服务活动,在现场服务期间缺少对因特网的访问,以及在对时间很敏感的环境中处置大量系统时的人为错误。所以,特别希望实现一种方法和系统,它能在替换或更新一个或多个外围设备的现场服务之后保证各种系统软件部件之间的相容性。如果所实现的解决方案能自动操作而无需与现场服务技术人员进行任何实质性的交互作用,则更是人们所希望的。尽管本专利技术允许各种修改和替代形式,但这里将详细描述本专利技术的一些具体实施例,它们作为举例示于附图中。然而,应该理解,这里展现的附图和详细描述不是要把本专利技术限制于所公开的特定实施例,相反,本专利技术要覆盖落入所附权利要求定义的本专利技术的精神和范围的所有修改、等效物和替换物。含有系统BIOS代码的非易失存储器(NVM)设备103连接于系统总线104。NVM103通常是作为闪速存储器卡或其他电可擦和可编程存储器来实现的。此外,系统存储器106可由每个处理器102经由系统总线104通过中介存储器控制器105进行访问。因为每个处理器102对系统存储器106有基本相同的访问权限,使得存储器访问时间基本上与处理器无关,所描绘的系统实施例100是对称多处理器(SMP)系统的实例。然而,应该理解,本专利技术可以适合在具有不同体系结构的系统上实现,例如单处理系统和非均匀存储器访问(NUMA)多处理器系统。在所描绘的系统实施例100中,总线桥108提供系统总线104和连接一个或多个外围设备的I/O总线110之间的接口。I/O总线110通常遵循若干工业标准I/O总线规程之一,包括例如由PCI特别兴趣工作组在PCI局部总线规程修订版2.2中规定的外围部件接口(PCI)总线(www.pcisig.com)。总线桥108和存储器控制器105可以由专为用于处理器102和系统总线104设计的芯片组实现。连到I/O总线110的外围设备可以包括例如,高速网络适配器或网络接口卡(NIC)114,系统100通过它连接到一个数据处理网络,如局域网(它本身可以与一广域网如因特网连接);DASD控制器116,DASD120与它相连;以及,通用I/O适配器112,服务处理器113与它相连。在一个实施例中,DASD控制器116和DASD120是遵循AT嵌入式接口(ATA)的设备,一般还称作IDE设备,如ANSI信息技术标准化国家委员会(NCITS)317-1998中规定的那样。ATA硬盘包含绝大多数桌面和膝上类个人计算机中的主引导设备。在其他实施例中,DASD120可以作为由SCSI主机适配器控制的SCSI硬盘或作为廉价冗余磁盘阵列(RAID)来实现,在RAID的情况中,DASD控制器116代表一个RAID控制器。现在参考附图说明图1B,图中显示适用于数据处理系统100中的一个普通外围设备121的选定部件的简化方框图。外围设备121拟代表系统100中使用的任何特定外围设备。这样,外围设备121的选定部件对于DASD控制器116、NIC114以及服务处理器113是共同的,包括嵌入式控制器123、可随机访问的而且通常为易失的存储器(RAM)125以及标识成固件127的非易失代码。固件127代表由控制器123执行的针对设备的指令序列,它规定外围设备127与主机系统交互作用的方式。当系统100经由特定设备的驱动器发出一个I/O命令时,该设备的固件把该设备驱动器调用翻译成可由控制器123执行的一组命令。固件127通常存储在ROM或闪速存储器卡之类的非易失存储器中。除了设备的固件外,这个非易失设备还可以进一步包括内部存储的标识(ID)信息,它可经由I/O总线110被访问以识别该外围设备。如已经针对固件127说明的那样,本专利技术的一些部分可以作为一组可由计算机执行的指令(软件)来实现,这些指令存储在计算机可读介质中,如系统存储器106、处理器102的高速缓冲存储器(未画出)、NVM103、软盘、硬盘、CD ROM、DVD、磁带或其他适用的存储部件中。参考图2,图中显示可以构成系统100一部分的选定软件模块的概念描述。在所描述的实施例中,NVM103含有BIOS代码130,每次系统100加电或复位时它被调用或执行。BIOS代码130通常被配置成为操作系统建立到硬件接口的低水平抽象层,以执行系统的POST和至少把操作系统的一部分从DASD120复制到系统存储器106。些外,BIOS代码130被配置成借助其相应的设备标识信息(图2中用参考数字128代表)识别连到I/O总线110(示于图1A)的每个外围设备。根据本专利技术的一个实施例,BIOS130被配置成在成功完成POST之后确定对每个被识别出的外围设备是否存在BIOS扩展文件。如果系统BIOS130检测到对应于一个被识别出的外围设备的BIOS扩展文件,BIOS130验证该文件并把有效扩展文件的一些部分复制到系统存储器106的一部分中。BIOS扩展文件的加载可以按美国专利申请“使用存储设备的隐藏分区存储BIOS扩展文件”(序列号10/050,032,2002年1月15日申请)中描述的方式来完成,该申请被转证给本申请的共同受让人。BIOS130通常还包括一个初始程序装入(IPL)部件,它被配置成至少把部分操作系统130提取到系统存储器106。通常,IPL提取为建立分页表、段描述符和其他存储器管理模块所需要的操作系统130的核心或内核部分。此外,IPL可以被配置成提取一个或多个外围设备驱动器(由参考数字141a至141n标识)。系统100的每个外围设备通常需要设备驱动器141使本文档来自技高网...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:R·W·帕尔默G·B·普鲁厄特D·B·罗兹I·维拉
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:

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

1
相关领域技术
  • 暂无相关专利