系统启动方法及计算机系统的制作方法

文档序号:6483602阅读:227来源:国知局
专利名称:系统启动方法及计算机系统的制作方法
技术领域
本发明涉及计算机技术领域,特别涉及一种系统启动方法及计算机系统。
背景技术
基本输入输出系统(Basic Input Output System, BIOS)是直接与硬件发生交互 的底层代码,它为操作系统提供了控制硬件设备的基本功能。BIOS包括系统BIOS (即常说 的主板BIOS)、显卡BIOS和其它设备(例如IDE控制器、SCSI卡或网卡等)的BI0S。其中, 计算机启动过程在系统BIOS的控制下进行。BIOS —般被存放在非易失性存储器/存储芯 片中,这样,即使在关机或掉电以后,这些代码也不会消失。 BIOS中保存着计算机重要的基本输入输出的程序、系统设置信息、开机上电自检 程序和系统启动自举等程序。计算机启动过程,需要从BIOS中获取启动所需的程序指令。
但是,随着计算机系统功能的逐渐强大,系统启动过程中需要从BIOS中获取的指 令也越来越多,因此,BIOS的体积也越来越大,这就导致专门用于存储BIOS的存储器件的 容量不得不随之增大。

发明内容
本发明实施例的目的是提供一种系统启动方法及计算机系统,以减少计算机系统 中专门存储BIOS所需的存储器件的容量。 为解决上述技术问题,本发明实施例提供一种系统启动方法、计算机终端及计算 机系统是这样实现的 —种系统启动方法,应用于包括主系统和辅助系统的计算机系统中,主系统启动 所需要的BIOS程序存储于网络中的一设备上,所述方法包括
由辅助系统通过所述网络从所述设备获得所述BIOS程序;
存储所述BIOS程序在所述辅助系统中;
所述主系统接收上电信号; 所述主系统启动一用于实现通信功能的初始化程序; 所述主系统利用所述初始化程序,从所述辅助系统中载入所述BIOS程序;
所述主系统使用所述BIOS程序启动所述主系统。 —种系统启动方法,应用于包括主系统和辅助系统的计算机系统中,主系统启动 所需要的BIOS程序存储于网络中一设备上,主系统和辅助系统都与一存储器相连,辅助系 统预先从所述设备上获得BIOS并存储在所述存储器上之后,将主系统内存中载入BIOS的 地址映射到所述存储器中下载的BIOS的地址,并将所述存储器的读写功能切换至主系统, 且该方法包括 主系统接收上电信号,根据主系统内存中的BIOS程序与所述存储器中存储的 BIOS的映射关系,通过读取所述存储器中存储的BIOS完成系统启动。 —种计算机系统,所述系统通过一网络与所述网络中的一设备相连接,所述设备
4上存储有BIOS程序,包括 主系统,包括有内存和一用于实现通信功能的初始化模块; 辅助系统,包括有网络连接模块及存储模块,所述网络连接模块用于通过所述网 络从所述设备上获得所述BIOS程序,所述存储模块用于存储所述BIOS程序;
其中,在所述主系统通过所述初始化模块将所述BIOS程序载入所述内存后,所述 主系统使用所述BIOS程序启动所述主系统。 —种计算机系统,包括主系统、辅助系统和存储器,所述系统通过一网络与所述网 络中的一设备相连接,所述设备上存储有BIOS程序,该系统包括 辅助系统,包括网络连接单元、映射单元和切换单元,其中网络连接单元用于从所 述设备上获得BI0S并存储在所述存储器上,所述映射单元用于将主系统内存中载入BIOS 的地址映射到所述存储器中下载的BIOS的地址,所述切换单元用于将所述存储器的读写 功能切换至主系统; 存储器,用于存储辅助系统从所述设备上获得的BIOS ;
主系统,包括有内存和一用于实现通信功能的初始化模块; 其中,在所述主系统通过所述初始化模块将所述BIOS程序载入所述内存后,所述 主系统使用所述BIOS程序启动所述主系统。 由以上本发明实施例提供的技术方案可见,辅助系统预先从服务器上下载BIOS 并存储,主系统接收上电信号,启动预存的实现通信功能的初始化程序,主系统利用初始化 的通信功能,从辅助系统中载入BIOS程序到主系统内存,主系统使用内存中载入的BIOS程 序完成系统启动,这样,可以减少主系统中专门用于存储系统BIOS的存储器件的容量。


图1为本发明第一方法实施例的流程图;
图2为本发明第一系统实施例的框图;
图3为本发明第二系统实施例的框图。
具体实施例方式
本发明实施例提供一种系统启动方法及计算机系统。 为了使本技术领域的人员更好地理解本发明方案,下面结合附图和实施方式对本 发明实施例作进一步的详细说明。 现有的BIOS —般存储在计算机系统专用的FLASH芯片中,且一般都只涉及一个系 统。而本发明实施例之中,与此不同 1、本发明实施例应用于包括主系统和辅助系统的计算机系统中,所述包括主系统 和辅助系统的计算机系统,例如可以是联想的Always On计算机系统或Intel ME架构的双 系统等。双系统在业界是较常见的,比如通常手机中就存在两套系统,一套用于作通讯,另 一套用于实现应用处理,如照片处理,计事本等等。 在这样的计算机系统中,主系统和辅助系统一般是独立的两套系统,可以位于同 一个机箱中,也可以不在一个机箱中。 2、主系统启动所需要的BI0S程序存储于网络中的一设备上,例如网络服务器上,
5以下实施例中以存储于网络服务器上为例加以说明。 以下介绍本发明系统启动方法第一实施例,该实施例中,辅助系统可以预先从网 络服务器上下载BIOS并存储。则当主系统启动时,执行如图l所示的流程,具体包括如下
S101 :主系统接收上电信号,启动预存的实现通信功能的初始化程序。
开机时,会产生上电信号,通俗地说,如用户按下机箱上的电源键,则产生上电信 号。这样,电源就开始向系统主板及其它设备供电。 主系统通过信号线接收到上电信号,会启动预存的实现通信功能的初始化程序。
该实现通信功能的初始化程序,在现有技术的BIOS中也包括。而在本实施例中,主系统中
可以仅预先存储该实现通信功能的初始化程序,而并不是存储整个BIOS。 —般的,初上电的电压还不稳定,系统的主板控制芯片组会向CPU发出并保持一
个重置(Reset)信号,令CPU初始化。当电源开始稳定供电后,芯片组撤去Reset信号,现
有技术中,CPU马上会跳转到系统BIOS中真正的启动代码处,从而,CPU从所述启动代码处
开始,可以进一步执行一系列的初始化程序。而本发明实施例中,系统中并不保存完整的
BIOS,但是,CPU仍然会跳转到一系列的初始化程序的初始代码处。如上电自检(Power On
SelfTest, POST)初始化程序,显卡BIOS初始化程序,CPU、内存初始化程序,还可能包括启
动即插即用类型设备的初始化程序。以下对这些初始化程序简单加以介绍。 POST初始化的主要任务是检测系统中的一些关键设备是否存在和能否正常工作,
如内存和显卡等。完整的POST自检将包括CPU、640K基本内存、1M以上的扩展内存、ROM、
主板、CMOS存贮器、串并口、显示卡、软硬盘子系统及键盘测试。自检中若发现问题,系统将
给出提示信息或鸣笛警告。 显卡BIOS初始化,包括查找显示卡的BIOS。系统找到显卡BIOS之后调用其初始
化代码,由显卡BIOS来完成显示卡的初始化。系统BIOS也会查找其它设备的BIOS程序,
找到之后同样要调用这些BIOS内部的初始化代码来初始化这些设备。 系统还将检测CPU的类型和工作频率,内存。内存检测通过之后,系统将开始检测
已安装的一些标准硬件设备,这些设备包括硬件、CD-ROM、键盘、软驱、串行接口和并行接
口等连接的设备,另外,大多数情况下,系统在这一过程中还要自动检测和设置内存的定时
参数、硬盘参数和访问模式等。 标准设备检测完毕后,系统内部的支持即插即用的代码将开始检测和配置系统中 安装的即插即用设备,每找到一个设备之后,系统还会为该设备分配中断、DMA通道和I/O 端口等资源。 S102 :主系统利用初始化的实现通信功能的程序,从辅助系统中载入BIOS程序。
主系统从辅助系统中获取BIOS程序,可以是从辅助系统中下载BIOS程序并存储 到主系统内存。 该步骤中,主系统可以是利用初始化的通信功能通过总线接口从辅助系统中载入 BIOS程序到主系统内存。 所述辅助系统中存储的BIOS,可以是BIOS镜像。这样,所述主系统利用初始化的
通信功能从辅助系统中载入BIOS程序到主系统内存,可以是主系统利用初始化的通信功
能从辅助系统中载入BIOS镜像,并将所述BIOS镜像解压到主系统内存中。 系统中一般安装有一定容量的内存(如128MB、256MB、512MB或更高),这些内存
6的每一个字节都被赋予了一个地址,以便CPU访问内存。其中BIOS将占用内存中的一段特定地址空间。作为简单说明,现有的一种情况,以32MB的地址范围来说,十六进制数表示是0 1FFFFFFH,其中0 FFFFFH的低端1MB内存非常特殊,因为最初的8086处理器能够访问的内存最大只有1MB,这1MB的低端640KB被称为基本内存,而A0000H BFFFFH要保留给显示卡的显存使用,COOOOH FFFFFH则被保留给BIOS使用,其中系统BIOS —般占用了最后的64KB或更多一点的空间,显卡BIOS —般在COOOOH C7FFFH处,IDE控制器的BIOS在C8000H CBFFFH处。其中,内存中的BIOS占用的空间,现有技术中用以由主机从存储BIOS的存储器件中载入BIOS。 而S102中,主系统是从辅助系统中载入BIOS程序到主系统内存,而不是从主系统上存储BIOS的存储器件中载入BIOS。也就是说,本实施例中,主系统上不必存储如现有技术中的完整BIOS。 S103 :主系统使用获取的BIOS程序启动所述主系统。 主系统使用内存中载入的BIOS,进一步可以完成系统启动工作。 例如,有些情况下,接下来主系根据BIOS更新扩展系统配置数据(Extended
System Configuration Data, ESCD) 。 ESCD是系统BIOS用来与操作系统交换硬件配置信
息的数据,这些数据可以被存放在COMS之中。通常ESCD数据只在系统硬件配置发生改变
后才会进行更新,所以并不是每次系统启动时都会更新ESCD。但是,采用某些芯片组的系统
BIOS在保存ESCD数据时使用了与操作系统(如Windows操作系统)不相同的数据格式,
于是Windows在自身的启动过程中,会将ESCD数据转换成适合Windows的格式,而在下一
次启动系统时(即使硬件配置没有发生改变),系统BIOS又会把ESCD的数据格式改回来。
如此循环,将会导致在每次启动机器时,系统BIOS都要更新一遍ESCD。 BIOS的启动代码还可能根据一定的启动顺序从软盘、硬盘、光驱、网络等启动。以
从硬盘(如通常的C盘)启动Windows操作系统为例,系统BIOS将读取并执行硬盘上的主
引导记录,主引导记录接着从分区表中找到第一个活动分区,然后读取并执行这个活动分
区的分区引导记录,而分区引导记录将读取系统文件启动Windows。当然,如果安装其它操
作系统,主引导记录将被替换成对应操作系统的引导代码。 该实施例中,辅助系统预先从服务器上下载BIOS并存储,可以是根据BIOS的更新频率,在每次主系统关机或掉电后,启动从网络服务器上下载BIOS并存储的程序,或者,也可以是辅助系统按照预定的规则从网络服务器上下载BIOS并存储,如按照一定的周期或是其它规则下载并存储。 需要说明的是,上述实施例可以应用于网络中存在多个系统时,某一系统(其中的主系统)或某些系统(其中的主系统)启动的情形。如果,每一系统(其中的主系统)的BIOS都相同,则每一系统启动的过程,与上述实施例类似。如果每一系统(其中的主系统)的BIOS各不相同,则该系统中的辅助系统预先从服务器上下载并存储的BIOS,为与其对应主系统相适应的BIOS。 由以上实施例可见,辅助系统预先从服务器上下载BIOS并存储,主系统接收上电信号,启动预存的实现通信功能的初始化程序,主系统利用初始化的通信功能,从辅助系统中载入BIOS程序到主系统内存,主系统使用内存中载入的BIOS程序完成系统启动,这样,可以减少主系统中专门用于存储系统BIOS的存储器件的容量。
而且,还可以使BIOS的管理变得方便和容易,特别对于网络中存在众多相同系统的情况。现有技术中,每一系统的BIOS需要单独管理和升级,较为繁琐,特别是每次升级时,都要为每台机器进行刷新Flash的动作。对于用户来讲操作繁杂,而且在BIOS升级过程中容易因刷新失败导致系统崩溃。而利用上述本发明的实施例,对于BIOS的管理,只需对存储的一份BIOS进行管理即可,特别是更新BIOS时,只需要替换服务器上的BIOS文件即可为成百上千台甚至更多台电脑完成升级,因此便于BIOS的管理和升级。
再者,利用上述实施例,还可以使网络中差异化的BIOS管理变成可能。如,辅助系统向网络服务器发出下载BIOS的请求,该请求中包含主系统的标识,网络服务器可以根据主系统的标识,返回所述主系统对应的BIOS给所述辅助系统,这样,所述辅助系统保存所述网络服务器返回的BIOS,进而,依据上述实施例,所述主系统可以利用该BIOS完成启动。同时不同系统(主系统)的BIOS都集中存储于网络服务器上,利于对这些BIOS进行集中管理和维护。 以下介绍本发明系统启动方法第二实施例,该实施例中,主系统和辅助系统都与一存储器相连,辅助系统预先从服务器上下载BIOS并存储在所述存储器上之后,将主系统内存中载入BIOS的地址映射到所述存储器中下载的BIOS的地址,并将所述存储器的读写功能切换至主系统。 则当主系统启动时,具体包括 根据主系统内存中的BIOS程序与所述存储器中存储的BIOS的映射关系,通过读取所述存储器中存储的BIOS完成系统启动。 主系统接收上电信号后,从内存中读取载入的BIOS,以完成系统启动。但是,由于内存中载入的BIOS的地址,如前所述,已被映射到所述存储器中存储的BIOS的地址,因此,主系统使用内存中载入的BIOS,将自动转为使用所述存储器中存储的BIOS的地址,从而完成系统启动。 这样,本实施例中,主系统上不必存储如现有技术中的完整BIOS,而是将完整的BIOS存储在第三方的存储器上。 如前所述,有些情况下,接下来主系统根据BIOS更新扩展系统配置数据(Extended System Configuration Data, ESCD) 。 ESCD是系统BIOS用来与操作系统交换硬件配置信息的数据,这些数据可以被存放在COMS之中。通常ESCD数据只在系统硬件配置发生改变后才会进行更新,所以并不是每次系统启动时都会更新ESCD。但是,采用某些芯片组的系统BIOS在保存ESCD数据时使用了与操作系统(如Windows操作系统)不相同的数据格式,于是Windows在自身的启动过程中,会将ESCD数据转换成适合Windows的格式,而在下一次启动系统时(即使硬件配置没有发生改变),系统BIOS又会把ESCD的数据格式改回来。如此循环,将会导致在每次启动机器时,系统BIOS都要更新一遍ESCD。
BIOS的启动代码还可能根据一定的启动顺序从软盘、硬盘、光驱、网络等启动。以从硬盘(如通常的C盘)启动Windows操作系统为例,系统BIOS将读取并执行硬盘上的主引导记录,主引导记录接着从分区表中找到第一个活动分区,然后读取并执行这个活动分区的分区引导记录,而分区引导记录将读取系统文件启动Windows。当然,如果安装其它操作系统,主引导记录将被替换成对应操作系统的引导代码。 由以上实施例可见,主系统和辅助系统都与一存储器相连,辅助系统预先从服务
8器上下载BI0S并存储在所述存储器上之后,将主系统内存中载入BIOS的地址映射到所述存储器中下载的BIOS的地址,并将所述存储器的读写功能切换至主系统,主系统接收上电信号,根据内存中的BIOS程序与所述存储器中存储的BIOS的映射关系,通过读取所述存储器中存储的BIOS完成系统启动,这样,可以减少主系统中专门用于存储系统BIOS的存储器件的容量。 而且,还可以使BIOS的管理变得方便和容易,特别对于网络中存在众多相同系统的情况。现有技术中,每一系统的BIOS需要单独管理和升级,较为繁琐,特别是每次升级时,都要为每台机器进行刷新Flash的动作。对于用户来讲操作繁杂,而且在BIOS升级过程中容易因刷新失败导致系统崩溃。而利用上述本发明的实施例,对于BIOS的管理,只需对存储的一份BIOS进行管理即可,特别是更新BIOS时,只需要替换服务器上的BIOS文件即可为成百上千台甚至更多台电脑完成升级,因此便于BIOS的管理和升级。
再者,利用上述实施例,还可以使网络中差异化的BIOS管理变成可能。如,辅助系统向网络服务器发出下载BIOS的请求,该请求中包含主系统的标识,网络服务器可以根据主系统的标识,返回所述主系统对应的BIOS给所述辅助系统,这样,所述辅助系统保存所述网络服务器返回的BIOS,进而,依据上述实施例,所述主系统可以利用该BIOS完成启动。同时不同系统(主系统)的BIOS都集中存储于网络服务器上,利于对这些BIOS进行集中管理和维护。 所述存储器,包括但不限于静态随机存储器(Static Random AccessMemory,S廳)、云力态存储器(Dynamic Random Access Memory,DRAM)、快闪存储器(Flash Memory)、磁盘。 以下介绍本发明计算机系统第一实施例,图2示出了该系统实施例的框图,所述系统通过一网络与所述网络中的一服务器相连接,所述服务器上存储有BI0S程序,如图2中,包括 辅助系统21,包括有网络连接模块及存储模块,所述网络连接模块用于通过所述
网络从所述设备上获得所述BIOS程序,所述存储模块用于存储所述BIOS程序; 主系统22,包括有内存和一用于实现通信功能的初始化模块; 其中,在所述主系统通过所述初始化模块将所述BIOS程序载入所述内存后,所述
主系统22使用所述BIOS程序启动所述主系统。 利用上述实施例实现系统启动的方法与前述方法第一实施例类似,在此不再赘述。 以下介绍本发明计算机系统第二实施例,图3示出了该系统实施例的框图,所述系统通过一网络与所述网络中的一设备相连接,所述设备上存储有BIOS程序,如图3中,所述系统包括主系统32、辅助系统31和存储器33,主系统32启动所需要的BIOS程序存储于网络服务器上,所述主系统32和辅助系统31都与所述存储器相连33,其中
辅助系统31 ,包括网络连接单元、映射单元和切换单元,其中网络连接单元用于从所述设备上获得BI0S并存储在所述存储器上,所述映射单元用于将主系统内存中载入BIOS的地址映射到所述存储器中下载的BIOS的地址,所述切换单元用于将所述存储器的读写功能切换至主系统; 存储器33,用于存储辅助系统31从服务器上获得的BIOS ;
主系统32,包括有内存和一用于实现通信功能的初始化模块; 其中,在所述主系统通过所述初始化模块将所述BIOS程序载入所述内存后,所述主系统使用所述BIOS程序启动所述主系统。 利用上述实施例实现系统启动的方法与前述方法第二实施例类似,在此不再赘述。 虽然通过实施例描绘了本发明实施例,本领域普通技术人员知道,本发明有许多变形和变化而不脱离本发明的精神,希望所附的权利要求包括这些变形和变化而不脱离本
权利要求
一种系统启动方法,应用于包括主系统和辅助系统的计算机系统中,其特征在于,主系统启动所需要的BIOS程序存储于网络中的一设备上,所述方法包括由辅助系统通过所述网络从所述设备获得所述BIOS程序;存储所述BIOS程序在所述辅助系统中;所述主系统接收上电信号;所述主系统启动一用于实现通信功能的初始化程序;所述主系统利用所述初始化程序,从所述辅助系统中载入所述BIOS程序;所述主系统使用所述BIOS程序启动所述主系统。
2. 如权利要求1所述的方法,其特征在于,所述主系统利用所述初始化的程序从辅助 系统中载入所述BIOS程序,包括主系统利用初始化的通信功能通过总线接口从辅助系统中载入BIOS程序。
3. 如权利要求l所述的方法,其特征在于,所述辅助系统中获得的BIOS包括BIOS镜 像,相应地,所述主系统利用所述初始化的程序从所述辅助系统中载入BIOS程序,包括主系统利用所述初始化的程序从辅助系统中载入BIOS镜像,并将所述BIOS镜像解压 到主系统内存中。
4. 如权利要求1所述的方法,其特征在于,所述辅助系统从所述网络中的设备上获得 BIOS,包括辅助系统向网络服务器发出下载BIOS的请求,该请求中包含主系统的标识; 所述网络设备根据主系统的标识,返回所述主系统对应的BIOS给所述辅助系统;所述辅助系统保存所述网络设备返回的BIOS。
5. 如权利要求l所述的方法,其特征在于,所述辅助系统从所述网络设备上获得BIOS,包括根据BIOS的更新频率,在主系统关机或掉电后,辅助系统从所述网络设备上获得BIOS ;或,辅助系统按照预定的规则从网络服务器上下载BIOS并存储。
6. —种系统启动方法,应用于包括主系统和辅助系统的计算机系统中,主系统启动所 需要的BIOS程序存储于网络中一设备上,其特征在于,主系统和辅助系统都与一存储器相 连,辅助系统预先从所述设备上获得BIOS并存储在所述存储器上之后,将主系统内存中载 入BIOS的地址映射到所述存储器中下载的BIOS的地址,并将所述存储器的读写功能切换 至主系统,且该方法包括主系统接收上电信号,根据主系统内存中的BIOS程序与所述存储器中存储的BIOS的 映射关系,通过读取所述存储器中存储的BIOS完成系统启动。
7. 如权利要求6所述的方法,其特征在于,所述辅助系统从所述设备上获得BIOS并存 储在所述服务器,包括辅助系统向所述设备发出下载BIOS的请求,该请求中包含主系统的标识; 所述设备根据主系统的标识,返回所述主系统对应的BIOS给所述辅助系统; 所述辅助系统保存所述所述设备返回的BIOS于所述存储器。
8. 如权利要求6所述的方法,其特征在于,所述辅助系统预先从所述设备上获得BIOS并存储于所述存储器,包括根据BIOS的更新频率,在主系统关机或掉电后,辅助系统从所述设备上获得BIOS并存 储;或,辅助系统按照预定的规则从网络服务器上下载BIOS并存储。
9 如权利要求1所述的方法,其特征在于,所述存储器,包括但不限于静态随机存储 器、动态存储器、快闪存储器、磁盘。
10. —种计算机系统,所述系统通过一网络与所述网络中的一设备相连接,所述设备上 存储有BIOS程序,其特征在于,包括主系统,包括有内存和一用于实现通信功能的初始化模块;辅助系统,包括有网络连接模块及存储模块,所述网络连接模块用于通过所述网络从 所述设备上获得所述BIOS程序,所述存储模块用于存储所述BIOS程序;其中,在所述主系统通过所述初始化模块将所述BIOS程序载入所述内存后,所述主系 统使用所述BIOS程序启动所述主系统。
11. 一种计算机系统,包括主系统、辅助系统和存储器,所述系统通过一网络与所述网 络中的一设备相连接,所述设备上存储有BIOS程序,其特征在于,该系统包括辅助系统,包括网络连接单元、映射单元和切换单元,其中网络连接单元用于从所述设 备上获得BIOS并存储在所述存储器上,所述映射单元用于将主系统内存中载入BIOS的地 址映射到所述存储器中下载的BIOS的地址,所述切换单元用于将所述存储器的读写功能 切换至主系统;存储器,用于存储辅助系统从所述设备上获得的BIOS ;主系统,包括有内存和一用于实现通信功能的初始化模块;其中,在所述主系统通过所述初始化模块将所述BIOS程序载入所述内存后,所述主系 统使用所述BIOS程序启动所述主系统。
全文摘要
一种系统启动方法及计算机系统。一种系统启动方法实施例,应用于包括主系统和辅助系统的计算机系统中,主系统启动所需要的BIOS程序存储于网络服务器上,辅助系统预先从所述网络服务器上下载BIOS并存储,且包括主系统接收上电信号,启动预存的实现通信功能的初始化程序;主系统利用初始化的通信功能,从辅助系统中载入BIOS程序到主系统内存;主系统使用内存中载入的BIOS程序完成系统启动。利用本发明,可以减少主系统中专门用于存储系统BIOS的存储器件的容量。
文档编号G06F9/445GK101770382SQ20091007648
公开日2010年7月7日 申请日期2009年1月4日 优先权日2009年1月4日
发明者张建辉 申请人:北京联想软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1