一种UEFI引导系统的多启动系统及方法与流程

文档序号:18524375发布日期:2019-08-24 10:05阅读:3726来源:国知局
一种UEFI引导系统的多启动系统及方法与流程

本发明涉及uefi系统引导启动方法技术领域,特别涉及一种uefi引导系统的多启动系统及方法。



背景技术:

一、uefi的含义:uefi是一种详细描述类型接口的标准。这种接口用于操作系统自动从预启动的操作环境,加载到一种操作系统上。

二、uefi与bios的区别:uefi是一种所谓的“固件”,负责在开机时做硬件启动和检测等工作,并且担任操作系统控制硬件时的中介角色;与bios相比,uefi编码99%都是由c语言完成;uefi一改之前的中断、硬件端口操作的方法,而采用了driver/protocol的新方式;uefi将不支持x86实模式,而直接采用flatmode(也就是不能用dos了,现在有些efi或uefi能用是因为做了兼容,但实际上这部分不属于uefi的定义了);uefi输出也不再是单纯的二进制code,改为removablebinarydrivers;os启动不再是调用int19,而是直接利用protocol/devicepath;对于第三方的开发,bios基本上做不到,除非参与bios的设计,但是还要受到rom的大小限制,而uefi就便利多了。uefi弥补bios对新硬件的支持不足的问题。

三、与bios显著不同的是,uefi是用模块化、c语言风格的参数堆栈传递方式、动态链接的形式构建系统,它比bios更易于实现,容错和纠错特性也更强,从而缩短了系统研发的时间。更加重要的是,它运行于32位或64位模式,突破了传统16位代码的寻址能力,达到处理器的最大寻址,此举克服了bios代码运行缓慢的弊端。

相对于传统bios引导系统方式,uefibios引导系统方式越来越普遍。uefi引导的流程是开机初始化uefi,然后,直接引导操作系统,进入系统。和传统的bios引导相比,uefi引导少了一道bios自检的过程,所以开机就会更快一些,这也成为了电脑的新宠。针对uefibios系统引导也需要多种启动方法,增加启动可靠性。

其中uefi的启动过程包括sec(security设置cpu的保护模式)、pei(efi前初始化pei)、dxe(执行驱动,安装devicehandle,安装protocol)、bds(开机设备选择)、tsl(暂时性系统载入)、rt(运行时间)等几个阶段。

pxe(prebootexecuteenvironment,预启动执行环境)是由intel公司开发的最新技术,工作于client/server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配ip地址,再用tftp(trivialfiletransferprotocol)或mtftp(multicasttrivialfiletransferprotocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端(客户端)基本软件设置,从而引导预先安装在服务器中的终端操作系统。

综上,现提出一种uefi的多启动方法,可解决如下问题:具有计算机本地引导程序和网络引导两种系统启动方式。



技术实现要素:

为了解决现有技术的问题,本发明提供了一种uefi引导系统的多启动系统及方法,其可以选择本地磁盘引导启动或网络启动方法,如果本地磁盘启动出现问题时及时得到解决。同时增加uefi系统启动的方法和启动稳定性。

本发明所采用的技术方案如下:

一种uefi引导系统的多启动系统,包括本地磁盘引导启动模块和网络引导启动模块,当系统启动过程中,分别选择利用本地磁盘引导启动模块启动,还是利用网络引导启动模块启动,其中,本地磁盘引导启动模块的选择优先级大于网络引导启动模块,当所述的本地磁盘引导启动模块损坏时,才选择使用网络引导启动模块进行系统启动。

本地磁盘引导启动模块包括本地磁盘bootloader读取单元和uefi引导执行单元,所述的本地磁盘bootloader读取单元用于当选择利用本地磁盘引导启动模块启动时,读取本地磁盘中的bootloader;所述的uefi引导执行单元用于,读取本地磁盘中的bootloader后,引导uefi经过sec、pei、dxe、bds、tsl、rt各阶段执行系统并启动。

网络引导启动模块包括bootloader获取单元,pxe及网卡信息获取单元,uefi虚拟磁盘获取注册单元和uefi引导启动单元,所述的bootloader获取单元用于,当选择利用网络引导启动模块启动时,根据dhcp获取的ip地址,客户端通过tftp连接服务器端,并下载uefi的bootloader;所述的pxe及网卡信息获取单元用于执行bootloader,获取本机的pxe及网卡信息,与服务器端建立通信;所述的uefi虚拟磁盘获取注册单元用于,客户端从服务器端下载并加载uefi虚拟磁盘,在uefi中注册;所述的uefi引导启动单元用于,读取本地磁盘中的bootloader后,引导uefi经过sec、pei、dxe、bds、tsl、rt各阶段执行系统并启动。

一种uefi引导系统的多启动方法,包括以下步骤:

a、系统启动过程中,选择启动的方式:本地磁盘引导启动或网络引导启动;

b、根据启动方式优先级,首先选择最高级的本地磁盘引导启动;

c、如果本地磁盘引导启动失败,则选择网络引导启动。

步骤b具体包括:

b1、读取本地磁盘中的bootloader;

b2、引导uefi经过sec、pei、dxe、bds、tsl、rt各阶段执行系统并启动。

步骤c具体包括:

c1、根据dhcp获取的ip地址,客户端通过tftp连接服务器端,并下载uefi的bootloader;

c2、执行bootloader,获取本机的pxe及网卡信息,与服务器端建立通信;

c3、客户端从服务器端下载并加载uefi虚拟磁盘,在uefi中注册;

c4、bootloader继续读取执行操作系统引导文件,引导uefi经过sec、pei、dxe、bds、tsl、rt各阶段执行系统并启动。

本发明提供的技术方案带来的有益效果是:

采用本发明的一种uefi引导系统的多启动系统及方法,其能够实现uefi启动方法多样性,一种启动方式受阻时,可切换系统启动方式,从而增加系统启动的可靠性。

附图说明

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

图1为本发明的一种uefi引导系统的多启动方法的基础方法流程图(实施例2);

图2为本发明的一种uefi引导系统的多启动方法的具体方法流程图(实施例3)。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

实施例一

一种uefi引导系统的多启动系统,包括本地磁盘引导启动模块和网络引导启动模块,当系统启动过程中,分别选择利用本地磁盘引导启动模块启动,还是利用网络引导启动模块启动,其中,本地磁盘引导启动模块的选择优先级大于网络引导启动模块,当所述的本地磁盘引导启动模块损坏时,才选择使用网络引导启动模块进行系统启动。

本地磁盘引导启动模块包括本地磁盘bootloader读取单元和uefi引导执行单元,所述的本地磁盘bootloader读取单元用于当选择利用本地磁盘引导启动模块启动时,读取本地磁盘中的bootloader;所述的uefi引导执行单元用于,读取本地磁盘中的bootloader后,引导uefi经过sec、pei、dxe、bds、tsl、rt各阶段执行系统并启动。

网络引导启动模块包括bootloader获取单元,pxe及网卡信息获取单元,uefi虚拟磁盘获取注册单元和uefi引导启动单元,所述的bootloader获取单元用于,当选择利用网络引导启动模块启动时,根据dhcp获取的ip地址,客户端通过tftp连接服务器端,并下载uefi的bootloader;所述的pxe及网卡信息获取单元用于执行bootloader,获取本机的pxe及网卡信息,与服务器端建立通信;所述的uefi虚拟磁盘获取注册单元用于,客户端从服务器端下载并加载uefi虚拟磁盘,在uefi中注册;所述的uefi引导启动单元用于,读取本地磁盘中的bootloader后,引导uefi经过sec、pei、dxe、bds、tsl、rt各阶段执行系统并启动。

实施例二

如附图1所示,一种uefi引导系统的多启动方法,包括以下步骤:

a、系统启动过程中,选择启动的方式:本地磁盘引导启动或网络引导启动;

b、根据启动方式优先级,首先选择最高级的本地磁盘引导启动;

b1、读取本地磁盘中的bootloader;

b2、引导uefi经过sec、pei、dxe、bds、tsl、rt各阶段执行系统并启动。

c、如果本地磁盘引导启动失败,则选择网络引导启动。

c1、根据dhcp获取的ip地址,客户端通过tftp连接服务器端,并下载uefi的bootloader;

c2、执行bootloader,获取本机的pxe及网卡信息,与服务器端建立通信;

c3、客户端从服务器端下载并加载uefi虚拟磁盘,在uefi中注册;

c4、bootloader继续读取执行操作系统引导文件,引导uefi经过sec、pei、dxe、bds、tsl、rt各阶段执行系统并启动。

实施例三

如附图2所示,本实施例的一种uefi引导系统的多启动方法,包括以下步骤:

a、计算机上电启动,默认选择uefi本地磁盘启动方式,或选择网络引导启动方式。

b、检查选择的启动方法。

c、是默认本地磁盘启动方法时,直接读取本地磁盘中的bootloader,引导uefi经过sec、pei、dxe、bds、tsl、rt等几个阶段执行系统并启动。

d、是网络启动方式时,启动网络引导程序,根据dhcp获取的ip地址,客户端通过tftp连接服务器端,并下载uefi的bootloader。

e、执行bootloader,获取本机的pxe及网卡信息,与服务器端建立通信。

f、然后客户端从服务器端下载并加载uefi虚拟磁盘,在uefi中注册。

g、bootloader继续读取执行操作系统引导文件,引导uefi经过sec、pei、dxe、bds、tsl、rt等几个阶段执行系统并启动。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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