一种BIOS启动操作系统的方法、装置、设备及介质与流程

文档序号:15980865发布日期:2018-11-17 00:18阅读:224来源:国知局

本发明实施例涉及数据存储技术领域,特别是涉及一种bios启动操作系统的方法、装置、设备及计算机可读存储介质。

背景技术

bios(basicinputandoutputsystem,基本输入输出系统)为一组固化到计算机主板上一个rom芯片上的程序,保存着计算机最重要的基本输入输出的程序、开机后自检程序和系统自启动程序,可从cmos中读写系统设置的具体信息,为计算机启动时加载的第一个软件。bios的主要功能是为计算机提供最底层的、最直接的硬件设置和控制,及还向作业系统提供一些系统参数。

bios包含支持usb/sata/raid/cdrom等存储设备的程序代码或者专为bios环境开发的驱动程序,执行完这些程序代码驱动初始化完毕此类设备后,才能通过bios指定的接口去访问存储设备上的数据并加载其上的操作系统到内存中去执行。

举例来说,x86服务器上bios启动系统的方法通常是bios中包含特定外接存储设备的驱动,执行完这些外接存储设备的程序代码初始化完毕此类设备后,才能通过bios指定的接口去访问存储设备上的数据并装载其上的操作系统到内存中执行。

由于bios中包含的存储设备的程序代码或者专为bios环境开发的驱动程序数量有限,难以覆盖大量不同类型接口的存储设备,服务器系统bios支持启动操作系统单一,即只可启动包含设备驱动的特定存储设备的操作系统,扩展性较差。



技术实现要素:

本发明实施例的目的是提供一种bios启动操作系统的方法、装置、设备及计算机可读存储介质,识别读写外部存储设备无需针对性写bios下的驱动代码,降低了bios代码的复杂度,扩展性好,增加了服务器系统bios支持启动操作系统的多样性,有利于提高服务器支持外部存储设备的广度。

为解决上述技术问题,本发明实施例提供以下技术方案:

本发明实施例一方面提供了一种bios启动操作系统的方法,包括:

加载bios闪存芯片中包含的mosi的文件,并启动所述mosi;

获取各存储设备相对应操作系统的脚本;

当检测到所述mosi启动完成后,将所述mosi的文件读取到内存中,调用所述mosi自动执行各脚本以读取各存储设备的操作系统并加载。

可选的,所述获取各存储设备相对应操作系统的脚本包括:

当检测到所述mosi编译时,加入扫描系统中所有存储设备相对应操作系统的脚本。

可选的,在所述调用所述mosi自动执行各脚本以读取各存储设备的操作系统并加载之后,还包括:

当检测到存储设备的操作系统加载不成功时,反馈操作系统加载不成功的存储设备的信息和错误提示信息。

可选的,在所述调用所述mosi自动执行各脚本以读取各存储设备的操作系统并加载之后,还包括:

当检测到各存储设备的操作系统加载不成功时,进行报警提示。

本发明实施例另一方面提供了一种bios启动操作系统的装置,包括:

启动模块,用于加载bios闪存芯片中包含的mosi的文件,并启动所述mosi;

脚本获取模块,用于获取各存储设备相对应操作系统的脚本;

操作系统加载模块,用于当检测到所述mosi启动完成后,将所述mosi的文件读取到内存中,调用所述mosi自动执行各脚本以读取各存储设备的操作系统并加载。

可选的,所述脚本获取模块为当检测到所述mosi编译时,加入扫描系统中所有存储设备相对应操作系统的脚本的模块。

可选的,还包括:

信息反馈模块,用于当检测到存储设备的操作系统加载不成功时,反馈操作系统加载不成功的存储设备的信息和错误提示信息。

可选的,还包括:

报警模块,用于当检测到各存储设备的操作系统加载不成功时,进行报警提示。

本发明实施例还提供了一种bios启动操作系统的设备,包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如前任一项所述bios启动操作系统的方法的步骤。

本发明实施例最后还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有bios启动操作系统的程序,所述bios启动操作系统的程序被处理器执行时实现如前任一项所述bios启动操作系统的方法的步骤。

本发明实施例提供了一种bios启动操作系统的方法,预先在bios的flash芯片上划定一区域存放裁剪的操作系统内核映像(m0si)文件,通过加载bios闪存芯片中包含的mosi的文件以启动mosi;在mosi启动完成后,将mosi的文件读取到内存中,调用mosi自动执行系统中各存储设备相对应操作系统的脚本以读取各存储设备的操作系统并加载,以实现bios启动操作系统。由于mosi中包含一定数量的设备驱动程序,且提供通用的调用接口,与现有技术相比,本申请提供的技术方案扩展性好,只要存放m0si的存储芯片容量足够大即可,识别读写外部存储设备无需针对性写bios下的驱动代码,降低了bios代码的复杂度,增加了服务器系统bios支持启动操作系统的多样性,有利于提高服务器支持外部存储设备的广度。

此外,本发明实施例还针对bios启动操作系统的方法提供了相应的实现装置、设备及计算机可读存储介质,进一步使得所述方法更具有实用性,所述装置、设备及计算机可读存储介质具有相应的优点。

附图说明

为了更清楚的说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种bios启动操作系统的方法的流程示意图;

图2为本发明实施例提供的另一种bios启动操作系统的方法的流程示意图;

图3为本发明实施例提供的bios启动操作系统的装置的一种具体实施方式结构图;

图4为本发明实施例提供的bios启动操作系统的装置的另一种具体实施方式结构图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等是用于区别不同的对象,而不是用于描述特定的顺序。此外术语“包括”和“具有”以及他们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可包括没有列出的步骤或单元。

在介绍了本发明实施例的技术方案后,下面详细的说明本申请的各种非限制性实施方式。

首先参见图1,图1为本发明实施例提供的一种bios启动操作系统的方法的流程示意图,本发明实施例可包括以下内容:

s101:加载bios闪存芯片中包含的mosi的文件,并启动mosi。

在bios的flash芯片内划分预设容量值的空间区域,该空间区域用于存放mosi(modifiedoperatingsystemimage,裁剪的操作系统内核映像)文件,mosi文件中包含一定数量的设备驱动程序,且提供通用的调用接口,与在bios中单独包含某指定设备驱动相比,该方法扩展性好,减少了服务器系统bios支持存储介质的单一性,只要存放bios映像的存储芯片容量足够大即可,该方法也可以推广在其他架构服务上应用。

在bios初始化启动完成之后,启动bios闪存芯片中包含的mosi镜像。

s102:获取各存储设备相对应操作系统的脚本。

当检测到mosi编译时,可加入扫描系统中所有存储设备相对应操作系统的脚本。

s103:判断mosi是否完成启动;若是,则执行s104。

s104:将mosi的文件读取到内存中,调用mosi自动执行各脚本以读取各存储设备的操作系统并加载。

在bios启动阶段,将mosi装载到内存中,然后跳入到mosi内核映像地址执行,mosi内核加载过程中加载该os下的驱动程序,然后在该mosi基础上,加载启动该系统中连接的各存储设备上的操作系统,已完成bios启动操作系统。

在本发明实施例提供的技术方案中,由于mosi中包含一定数量的设备驱动程序,且提供通用的调用接口,扩展性好,只要存放m0si的存储芯片容量足够大即可,识别读写外部存储设备无需针对性写bios下的驱动代码,降低了bios代码的复杂度,增加了服务器系统bios支持启动操作系统的多样性,有利于提高服务器支持外部存储设备的广度。

基于上述实施例,请参阅图2,例如应用于服务器中,还可包括:

s105:判断是否存在操作系统加载不成功的存储设备,若是,则执行s106。

s106:反馈操作系统加载不成功的存储设备的信息和错误提示信息。

s107:进行报警提示。

当服务器所连接的存储设备中,有一个存储设备的操作系统加载不成功,可将该存储设备的相关信息(例如mac地址、存储设备的自身属性信息)进行反馈,并返回一个error信息。此外,还可同时或者是之前、之后进行报警提示(本申请对s106和s107的执行顺序不限定),以使相关工作人员或相关检测模块及时捕捉到加载不成功的信息,及时进行查找出错原因并修复,有利于提升服务器的稳定性和可靠性。

本发明实施例还针对bios启动操作系统的方法提供了相应的实现装置,进一步使得所述方法更具有实用性。下面对本发明实施例提供的bios启动操作系统的装置进行介绍,下文描述的bios启动操作系统的装置与上文描述的bios启动操作系统的方法可相互对应参照。

参见图3,图3为本发明实施例提供的bios启动操作系统的装置在一种具体实施方式下的结构图,该装置可包括:

启动模块301,用于加载bios闪存芯片中包含的mosi的文件,并启动mosi。

脚本获取模块302,用于获取各存储设备相对应操作系统的脚本。

操作系统加载模块303,用于当检测到mosi启动完成后,将mosi的文件读取到内存中,调用mosi自动执行各脚本以读取各存储设备的操作系统并加载。

可选的,在本实施例的一些实施方式中,请参阅图4,所述装置例如还可以包括:

信息反馈模块304,用于当检测到存储设备的操作系统加载不成功时,反馈操作系统加载不成功的存储设备的信息和错误提示信息。

报警模块305,用于当检测到各存储设备的操作系统加载不成功时,进行报警提示。

具体的,在一种实施方式中,所述脚本获取模块302可为当检测到mosi编译时,加入扫描系统中所有存储设备相对应操作系统的脚本的模块。

本发明实施例所述bios启动操作系统的装置的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。

由上可知,本发明实施例由于mosi中包含一定数量的设备驱动程序,且提供通用的调用接口,扩展性好,只要存放m0si的存储芯片容量足够大即可,识别读写外部存储设备无需针对性写bios下的驱动代码,降低了bios代码的复杂度,增加了服务器系统bios支持启动操作系统的多样性,有利于提高服务器支持外部存储设备的广度。

本发明实施例还提供了一种bios启动操作系统的设备,具体可包括:

存储器,用于存储计算机程序;

处理器,用于执行计算机程序以实现如上任意一实施例所述bios启动操作系统的方法的步骤。

本发明实施例所述bios启动操作系统的设备的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。

由上可知,本发明实施例识别读写外部存储设备无需针对性写bios下的驱动代码,降低了bios代码的复杂度,扩展性好,增加了服务器系统bios支持启动操作系统的多样性,有利于提高服务器支持外部存储设备的广度。

本发明实施例还提供了一种计算机可读存储介质,存储有bios启动操作系统的程序,所述bios启动操作系统的程序被处理器执行时如上任意一实施例所述bios启动操作系统的方法的步骤。

本发明实施例所述计算机可读存储介质的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。

由上可知,本发明实施例识别读写外部存储设备无需针对性写bios下的驱动代码,降低了bios代码的复杂度,扩展性好,增加了服务器系统bios支持启动操作系统的多样性,有利于提高服务器支持外部存储设备的广度。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

以上对本发明所提供的一种bios启动操作系统的方法、装置、设备及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1