[发明专利]支持启动类外部设备的驱动的方法、装置和系统有效
申请号: | 201811599440.8 | 申请日: | 2018-12-26 |
公开(公告)号: | CN109614156B | 公开(公告)日: | 2021-10-15 |
发明(设计)人: | 宋歌;李经宇;金正雄 | 申请(专利权)人: | 贵州华芯通半导体技术有限公司 |
主分类号: | G06F9/4401 | 分类号: | G06F9/4401;G06F9/445 |
代理公司: | 北京市柳沈律师事务所 11105 | 代理人: | 万里晴 |
地址: | 550081 贵州省贵阳市*** | 国省代码: | 贵州;52 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 支持 启动 外部设备 驱动 方法 装置 系统 | ||
提供了一种用于扩展UEFI固件以支持启动类外部设备的驱动的方法。该方法包括:响应于加载目标操作系统,运行扩展的UEFI固件;引导外围设备支持模块以支持UEFI固件无法直接驱动的启动类外部设备的驱动,其中所述外围设备支持模块通过修改基于Linux的微型操作系统而获得,其中所述基于Linux的微型操作系统与扩展的UEFI固件所要加载的目标操作系统不同;以及在驱动了所述启动类外部设备之后,通过所述外围设备支持模块加载目标操作系统,其中,所述外围设备支持模块通过以下步骤来获得:在基于Linux的微型操作系统中开启kexec和device mapper特性;在基于Linux的微型操作系统中引入udev和petitboot组件,其中,所述petitboot组件是利用Linux kexec机制的启动器;在基于Linux的微型操作系统中加入启动类外部设备所需的驱动。
技术领域
本公开涉及外部设备的驱动的技术,具体地涉及一种用于扩展UEFI(UnifiedExtensible Firmware Interface,统一可扩展固件接口)固件以支持启动类外部设备的驱动的方法、装置和系统。
背景技术
ARM(Advanced RISC Machines,先进RISC机器)处理器具有低功耗、低成本、高集成度等优势,已广泛应用于移动终端领域,然而在服务器领域,ARM服务器尚处于初期阶段。
当前,由于启动类设备对ARM服务器的AARCH64架构的支持度还不够,比如,要求使用某一型号的网卡并在此卡上完成PXE(Pre-boot Execution Environment,预启动运行环境)启动,但该网卡可能无法提供对AARCH64的支持,因此,限制了服务器厂商对于启动类设备的选择。
目前ARM服务器厂商已尝试与其商业伙伴合作,共同推进外部设备厂商对AARCH64的支持,这势必会带来额外的开发时间和经济代价,且在ARM服务器生态成熟之前,外部设备厂商缺乏动力,这会反过来限制ARM服务器生态的发展。此外,在Linaro组织内部还进行过实验性的尝试,意图通过在UEFI固件中引入QEMU x86虚拟机来直接运行x86版的UEFI驱动,但此方法繁琐复杂,且目前还只能达到驱动VGA(Video Graphics Array,视频图形阵列)显示类外部设备的程度,无法对启动类外部设备提供支持。
因此,需要一种操作简单且使得启动类外部设备能够支持ARM服务器的AARCH64架构的方法。
发明内容
本公开提供了用于扩展UEFI固件以支持启动类外部设备的驱动的方法、装置和系统。其利用Linux对外部设备的广泛支持,将Linux作为一个模块引入AARCH64UEFI固件,间接扩充固件对外部设备的支持,且同时不影响固件对Windows操作系统的支持。
本公开的第一方面,提供了一种用于扩展UEFI固件以支持启动类外部设备的驱动的方法。该方法包括:响应于加载目标操作系统,运行扩展的UEFI固件;引导外围设备支持模块以支持UEFI固件无法直接驱动的启动类外部设备的驱动,其中外围设备支持模块通过修改基于Linux的微型操作系统而获得,其中基于Linux的微型操作系统与扩展的UEFI固件所要加载的目标操作系统不同;以及在驱动了启动类外部设备之后,通过外围设备支持模块加载目标操作系统。其中外围设备支持模块通过以下步骤来获得:在基于Linux的微型操作系统中开启kexec和device mapper特性;在基于Linux的微型操作系统中引入udev和petitboot组件,其中,petitboot组件是利用Linux kexec机制的启动器;在基于Linux的微型操作系统中加入启动类外部设备所需的驱动。
此外,结合第一方面,其中,通过外围设备支持模块加载目标操作系统包括通过基于Linux的微型操作系统的petitboot组件的Kexec启动器加载目标操作系统。
此外,结合第一方面,其中,所述获得外围设备支持模块的步骤还包括:定制init流程以自动启动petitboot的用户端和服务端程序以及其依赖的系统组件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于贵州华芯通半导体技术有限公司,未经贵州华芯通半导体技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811599440.8/2.html,转载请声明来源钻瓜专利网。