首页 / 专利库 / 专利权 / 第I章 / 国际申请 / 修改 / 一种修改BIOS SETUP界面的方法

一种修改BIOS SETUP界面的方法

阅读:290发布:2020-07-12

专利汇可以提供一种修改BIOS SETUP界面的方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种 修改 BIOS SETUP界面的方法,属于计算机UEFI技术领域。 计算机系统 在UEFI Shell环境中,所述方法使用的系统架构包括提供图形 接口 的图形抽象层、提供 鼠标 和 键盘 驱动的输入抽象层、图形设备接口层、图形用户接口层、 应用程序编程接口 ,图形抽象层和输入抽象层位于系统最底层,图形设备接口层位于系统的 中间层 ,图形用户接口层位于图形设备接口层上方,系统的最顶层为应用程序编程接口。本发明大大降低了系统的耦合度,提高了系统的可扩展性;使系统取得了较好的交互体验和较美观的界面效果。,下面是一种修改BIOS SETUP界面的方法专利的具体信息内容。

1.一种修改BIOS SETUP界面的方法,其特征在于计算机系统在UEFI Shell环境中,所述方法使用的系统架构包括提供图形接口的图形抽象层、提供鼠标键盘驱动的输入抽象层、图形设备接口层、图形用户接口层、应用程序编程接口,图形抽象层和输入抽象层位于系统最底层,图形设备接口层位于系统的中间层,图形用户接口层位于图形设备接口层上方,系统的最顶层为应用程序编程接口;
与图形抽象层和输入抽象层相对应的接口部分是UEFI中的UGA协议、Simple Pointer 协议和Simple TextIn协议,其中系统的图形抽象层对UGA 协议进行封装,并为上层的图形设备接口层提供统一的接口,图形设备接口层则对图形抽象层进行封装,为上层的图形用户接口层提供功能使用;输入抽象层则对Simple Pointer协议 与SimpleTextIn协议进行封装,并通过对鼠标键盘输入的监视生成消息,通过消息可以进行窗口之间的通信,为图形用户接口层的功能提供服务;图形用户接口层通过应用程序编程接口访问BIOS Setup的应用程序;
所述方法步骤为:
(1)、在UEFI的BIOS源代码中添加图形抽象层和输入抽象层的驱动并实现相关的UGA协议、Simple Pointer 协议和Simple TextIn协议;
(2)、编译UEFI的BIOS源代码产生可执行的ROM文件;
(3)、更新步骤(2)中编译的BIOS源代码文件到计算机系统Firmware中;
(4)、编写UEFI应用程序实现BIOS Setup界面的显示和控制;
(5)、启动计算机系统配置文件到UEFI Shell模式下,运行应用程序。
2.根据权利要求1所述的一种修改BIOS SETUP界面的方法,其特征在于步骤(1)的实现,将图形抽象层和输入抽象层的程序按照驱动协议模型编写;包括如下步骤:①、编写UGA协议、Simple Pointer 协议和Simple TextIn协议的接口;②、用驱动格式实现上述接口。
3.根据权利要求2所述的一种修改BIOS SETUP界面的方法,其特征在于步骤(1)的①编写协议部分,需要在BIOS的Protocol文件夹下建立图形抽象层或输入抽象层的文件夹,并在该文件夹中编写Protocol的接口函数;
步骤(1)的②驱动格式是在BIOS的Driver 文件夹下建立图形抽象层或输入抽象层的文件夹,在这个文件夹下编写Protocol 文件中GAL 函数接口的具体实现;需要实现Supported函数、Start函数 与Stop函数;
Supported 函数实现步骤:用UEFI 规范的OpenProtocol 函数打开UEFI的UGA 协议并加以测试,以保证之后的GAL 功能函数可以调用UGA 的服务,之后用UEFI 规范的CloseProtocol 函数关闭UGA 协议;
Start 函数实现步骤:在得到Supported 函数的保证下,用 OpenProtocol函数打开UEFI 的UGA 协议以调用其提供的服务;随后构造相应的数据结构并用之前Protocol 中的接口 函 数 指 针 指 向 驱 动程 序 中 对 应的 函 数 ;最 后 用 UE F I  规 范的InstallProtocolInterface 函数将GAL 协议安装到Controller Handle 上;
Stop 函数实现步骤:将Start 中安装的协议用CloseProtocol 关闭,并用UEFI 规范的UninstallProtocolInterface 函数卸载,最后释放所构造的数据结构;
具备了上面 3 个函数的驱动程序就实现了UEFI 驱动的绑定协议,为GAL 功能函数的开发提供了一个符合UEFI 驱动模式的框架
接下来用图形学的算法实现相应的函数接口;
最后,通过在UEFI应用程序中调用GAL和IAL的驱动来实现对BIOS Setup界面的显示和修改;这包括图形设备接口的实现、字符的显示、窗口的管理和控制操作;窗口的管理和控制通过消息传递的方式来实现,通过调用IAL的驱动产生消息传递给窗口控制程序;
对于BIOS Setup菜单的显示需要调用UEFI运行时服务的接口函数GetVariable和GetNextVariableName以及QueryVariableInfo;在对Setup菜单的数值进行修改后需要调用SetVariable接口函数。

说明书全文

一种修改BIOS SETUP界面的方法

技术领域

[0001] 本发明涉及一种计算机UEFI技术领域,具体地说是一种修改BIOS SETUP界面的方法。

背景技术

[0002] UEFI为英文Unified Extensible Firmware Interface的缩写,翻译为统一的可扩展固件接口, 是一种详细描述类型接口的标准。UEFI是操作系统与平台固件之间的接口模型。UEFI用于操作系统自动从预启动的操作环境,加载到一种操作系统上,为启动一个操作系统与执行启动前程序提供了一个标准环境。
[0003] 在计算机科学中,Shell俗称壳(用来区别于核),是指“提供使用者使用界面”的软件(命令解析器)。它接收用户命令,然后调用相应的应用程序。UEFI Shell 提供了类似DOS的命令行文字界面。
[0004] BIOS是英文“Basic Input Output System”的缩略语,直译过来后中文名称就是“基本输入输出系统”。其实,它是一组固化到计算机内主板上一个ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、系统设置信息、开机后自检程序和系统自启动程序。 其主要功能是为计算机提供最底层的、最直接的硬件设置和控制。BIOS Setup菜单提供了对系统的配置信息进行设置的人机图形界面。
[0005] 如何在UEFI Shell下修改BIOS Setup界面是本领域技术人员迫切需要解决的问题。
[0006] 发明内容
[0007] 本发明的技术任务是针对以上不足之处,提供一种大大降低了系统的耦合度,提高了系统的可扩展性;使系统取得了较好的交互体验和较美观的界面效果的一种修改BIOS SETUP界面的方法。
[0008] 在UEFI 规范中包括了UGA(universal graphics adapter通用的图形适配器)协议,该协议提供了一个Blt 的函数接口在内存与设备之间进行像素数据的传输; 另外用于鼠标控制的Simple Pointer 协议与用于键盘输入的Simple TextIn 协议提供了鼠标与键盘的交互功能。但是按照UEFI 的规范,使用底层的设备需要按照协议-驱动模型结构编写代码,这样如果将来上述这3 个协议产生了变化,也就需要同时对GDI (英文全称graphics device interface,翻译为图形设备接口层)中的绘图支持部分以及鼠标键盘部分进行相应的修改,进一步会牵涉到GDI 中其他功能对绘图支持部分与鼠标键盘部分的调用,极大地增加了不稳定性。因此为了提高系统的可移植性,这3 个协议的调用部分需要重新剥离出去生成新的层次,以满足UEFI 协议-驱动模型的要求。对CMOS和变量区域的访问可以通过调用运行时服务的函数接口GetVariable和SetVariable以及QueryVariableInfo来实现。
[0009] 本发明解决其技术问题所采用的技术方案是:
[0010] 一种修改BIOS SETUP界面的方法,计算机系统在UEFI Shell环境中,所述方法使用的系统架构包括提供图形接口的图形抽象层(英文全称为graphics abstraction layer,简称GAL)、提供鼠标和键盘驱动的输入抽象层(英文全称为input abstraction layer、简称IAL)、图形设备接口层(英文全称为graphics device interface、简称GDI)、图形用户接口层(英文全称为graphics user interface、简称GUI)、应用程序编程接口(英文全称为Application Programming Interface、简称API),图形抽象层和输入抽象层位于系统最底层,图形设备接口层位于系统的中间层,图形用户接口层位于图形设备接口层上方,系统的最顶层为应用程序编程接口;
[0011] 与图形抽象层和输入抽象层相对应的接口部分是UEFI中的UGA协议、Simple Pointer 协议和Simple TextIn协议,其中系统的图形抽象层对UGA 协议进行封装,并为上层的图形设备接口层提供统一的接口,图形设备接口层则对图形抽象层进行封装,实现了更多的功能,如位图读取与绘制、区域剪切、文字输出等,为上层的图形用户接口层提供功能使用;输入抽象层则对Simple Pointer协议 与SimpleTextIn协议进行封装,并通过对鼠标键盘输入的监视生成消息(Message),通过消息可以进行窗口之间的通信,为图形用户接口层的(窗口创建与绘制、多窗口之间的剪切等)的功能提供服务;图形用户接口层通过应用程序编程接口访问BIOS Setup的应用程序;
[0012] 所述方法步骤为:
[0013] (1)、在UEFI的BIOS源代码中添加图形抽象层和输入抽象层的驱动并实现相关的UGA协议、Simple Pointer 协议和Simple TextIn协议;
[0014] (2)、编译UEFI的BIOS源代码产生可执行的ROM文件;
[0015] (3)、更新步骤(2)中编译的BIOS源代码文件到计算机系统Firmware中;
[0016] (4)、编写UEFI应用程序实现BIOS Setup界面的显示和控制;
[0017] (5)、启动计算机系统配置文件到UEFI Shell模式下,运行应用程序。
[0018] 步骤(1)的实现,将图形抽象层和输入抽象层的程序按照驱动协议模型编写;包括如下步骤:①、编写UGA协议、Simple Pointer 协议和Simple TextIn协议的接口;②、用驱动格式实现上述接口。
[0019] 步骤(1)的①编写协议部分,需要在BIOS的Protocol文件夹下建立图形抽象层或输入抽象层的文件夹,并在该文件夹中编写Protocol的接口函数;
[0020] 步骤(1)的②驱动格式是在BIOS的Driver 文件夹下建立图形抽象层或输入抽象层的文件夹,在这个文件夹下编写Protocol 文件中GAL 函数接口的具体实现;需要实现Supported函数、Start函数 与Stop函数;
[0021] Supported 函数实现步骤:用UEFI 规范的OpenProtocol 函数打开UEFI的UGA 协议并加以测试,以保证之后的GAL 功能函数可以调用UGA 的服务,之后用UEFI 规范的CloseProtocol 函数关闭UGA 协议;
[0022] Start 函数实现步骤:在得到Supported 函数的保证下,用 OpenProtocol函数打开UEFI 的UGA 协议以调用其提供的服务;随后构造相应的数据结构并用之前Protocol 中的 接口 函数指 针指向驱 动程序中 对应的 函数 ;最后 用UEFI  规范的InstallProtocolInterface 函数将GAL 协议安装到Controller Handle 上;
[0023] Stop 函数实现步骤:将Start 中安装的协议用CloseProtocol 关闭,并用UEFI 规范的UninstallProtocolInterface 函数卸载,最后释放所构造的数据结构;
[0024] 具备了上面 3 个函数的驱动程序就实现了UEFI 驱动的绑定协议,为GAL 功能函数的开发提供了一个符合UEFI 驱动模式的框架
[0025] 接下来用图形学的算法实现相应的函数接口;
[0026] 最后,通过在UEFI应用程序中调用GAL和IAL的驱动来实现对BIOS Setup界面的显示和修改;这包括图形设备接口的实现、字符的显示、窗口的管理和控制操作;窗口的管理和控制通过消息传递的方式来实现,通过调用IAL的驱动产生消息传递给窗口控制程序;
[0027] 对于BIOS Setup菜单的显示需要调用UEFI运行时服务的接口函数GetVariable和GetNextVariableName以及QueryVariableInfo;在对Setup菜单的数值进行修改后需要调用SetVariable接口函数。具体的实现可以参考目前UEFI BIOS的实现方法。
[0028] 本发明的一种修改BIOS SETUP界面的方法和现有技术相比,基于UEFI 系统中GAL 与IAL 的分层设计大大降低了系统的耦合度,提高了系统的可扩展性。GAL 与IAL 和UEFI 驱动模型的集成,为系统在UEFI SHELL下实现修改BIOS SETUP界面提供了坚实的基础,使系统取得了较好的交互体验和较美观的界面效果;因而,具有很好的推广使用价值。附图说明
[0029] 下面结合附图对本发明进一步说明。
[0030] 附图1为一种修改BIOS SETUP界面的方法使用的系统架构的结构框图

具体实施方式

[0031] 下面结合附图和具体实施例对本发明作进一步说明。
[0032] 实施例1:
[0033] 一种修改BIOS SETUP界面的方法,计算机系统在UEFI Shell环境中,所述方法使用的系统架构包括提供图形接口的图形抽象层(英文全称为graphics abstraction layer,简称GAL)、提供鼠标和键盘驱动的输入抽象层(英文全称为input abstraction layer、简称IAL)、图形设备接口层(英文全称为graphics device interface、简称GDI)、图形用户接口层(英文全称为graphics user interface、简称GUI)、应用程序编程接口(英文全称为Application Programming Interface、简称API),图形抽象层和输入抽象层位于系统最底层,图形设备接口层位于系统的中间层,图形用户接口层位于图形设备接口层上方,系统的最顶层为应用程序编程接口;
[0034] 与图形抽象层和输入抽象层相对应的接口部分是UEFI中的UGA协议、Simple Pointer 协议和Simple TextIn协议,其中系统的图形抽象层对UGA 协议进行封装,并为上层的图形设备接口层提供统一的接口,图形设备接口层则对图形抽象层进行封装,实现了更多的功能,如位图读取与绘制、区域剪切、文字输出等,为上层的图形用户接口层提供功能使用;输入抽象层则对Simple Pointer协议 与SimpleTextIn协议进行封装,并通过对鼠标键盘输入的监视生成消息(Message),通过消息可以进行窗口之间的通信,为图形用户接口层的(窗口创建与绘制、多窗口之间的剪切等)的功能提供服务;图形用户接口层通过应用程序编程接口访问BIOS Setup的应用程序;
[0035] 所述方法步骤为:
[0036] (1)、在UEFI的BIOS源代码中添加图形抽象层和输入抽象层的驱动并实现相关的UGA协议、Simple Pointer 协议和Simple TextIn协议;
[0037] (2)、编译UEFI的BIOS源代码产生可执行的ROM文件;
[0038] (3)、更新步骤(2)中编译的BIOS源代码文件到计算机系统Firmware中;
[0039] (4)、编写UEFI应用程序实现BIOS Setup界面的显示和控制;
[0040] (5)、启动计算机系统配置文件到UEFI Shell模式下,运行应用程序。
[0041] 实施例2:
[0042] 一种修改BIOS SETUP界面的方法,计算机系统在UEFI Shell环境中,所述方法使用的系统架构包括提供图形接口的图形抽象层(英文全称为graphics abstraction layer,简称GAL)、提供鼠标和键盘驱动的输入抽象层(英文全称为input abstraction layer、简称IAL)、图形设备接口层(英文全称为graphics device interface、简称GDI)、图形用户接口层(英文全称为graphics user interface、简称GUI)、应用程序编程接口(英文全称为Application Programming Interface、简称API),图形抽象层和输入抽象层位于系统最底层,图形设备接口层位于系统的中间层,图形用户接口层位于图形设备接口层上方,系统的最顶层为应用程序编程接口;
[0043] 与图形抽象层和输入抽象层相对应的接口部分是UEFI中的UGA协议、Simple Pointer 协议和Simple TextIn协议,其中系统的图形抽象层对UGA 协议进行封装,并为上层的图形设备接口层提供统一的接口,图形设备接口层则对图形抽象层进行封装,实现了更多的功能,如位图读取与绘制、区域剪切、文字输出等,为上层的图形用户接口层提供功能使用;输入抽象层则对Simple Pointer协议 与SimpleTextIn协议进行封装,并通过对鼠标键盘输入的监视生成消息(Message),通过消息可以进行窗口之间的通信,为图形用户接口层的(窗口创建与绘制、多窗口之间的剪切等)的功能提供服务;图形用户接口层通过应用程序编程接口访问BIOS Setup的应用程序;
[0044] 所述方法步骤为:
[0045] (1)、在UEFI的BIOS源代码中添加图形抽象层和输入抽象层的驱动并实现相关的UGA协议、Simple Pointer 协议和Simple TextIn协议;
[0046] (2)、编译UEFI的BIOS源代码产生可执行的ROM文件;
[0047] (3)、更新步骤(2)中编译的BIOS源代码文件到计算机系统Firmware中;
[0048] (4)、编写UEFI应用程序实现BIOS Setup界面的显示和控制;
[0049] (5)、启动计算机系统配置文件到UEFI Shell模式下,运行应用程序。
[0050] 步骤(1)的实现,将图形抽象层和输入抽象层的程序按照驱动协议模型编写;包括如下步骤:①、编写UGA协议、Simple Pointer 协议和Simple TextIn协议的接口;②、用驱动格式实现上述接口。
[0051] 实施例3:
[0052] 一种修改BIOS SETUP界面的方法,计算机系统在UEFI Shell环境中,所述方法使用的系统架构包括提供图形接口的图形抽象层(英文全称为graphics abstraction layer,简称GAL)、提供鼠标和键盘驱动的输入抽象层(英文全称为input abstraction layer、简称IAL)、图形设备接口层(英文全称为graphics device interface、简称GDI)、图形用户接口层(英文全称为graphics user interface、简称GUI)、应用程序编程接口(英文全称为Application Programming Interface、简称API),图形抽象层和输入抽象层位于系统最底层,图形设备接口层位于系统的中间层,图形用户接口层位于图形设备接口层上方,系统的最顶层为应用程序编程接口;
[0053] 与图形抽象层和输入抽象层相对应的接口部分是UEFI中的UGA协议、Simple Pointer 协议和Simple TextIn协议,其中系统的图形抽象层对UGA 协议进行封装,并为上层的图形设备接口层提供统一的接口,图形设备接口层则对图形抽象层进行封装,实现了更多的功能,如位图读取与绘制、区域剪切、文字输出等,为上层的图形用户接口层提供功能使用;输入抽象层则对Simple Pointer协议 与SimpleTextIn协议进行封装,并通过对鼠标键盘输入的监视生成消息(Message),通过消息可以进行窗口之间的通信,为图形用户接口层的(窗口创建与绘制、多窗口之间的剪切等)的功能提供服务;图形用户接口层通过应用程序编程接口访问BIOS Setup的应用程序;
[0054] 所述方法步骤为:
[0055] (1)、在UEFI的BIOS源代码中添加图形抽象层和输入抽象层的驱动并实现相关的UGA协议、Simple Pointer 协议和Simple TextIn协议;
[0056] (2)、编译UEFI的BIOS源代码产生可执行的ROM文件;
[0057] (3)、更新步骤(2)中编译的BIOS源代码文件到计算机系统Firmware中;
[0058] (4)、编写UEFI应用程序实现BIOS Setup界面的显示和控制;
[0059] (5)、启动计算机系统配置文件到UEFI Shell模式下,运行应用程序。
[0060] 步骤(1)的实现,将图形抽象层和输入抽象层的程序按照驱动协议模型编写;包括如下步骤:①、编写UGA协议、Simple Pointer 协议和Simple TextIn协议的接口;②、用驱动格式实现上述接口。
[0061] 步骤(1)的①编写协议部分,需要在BIOS的Protocol文件夹下建立图形抽象层或输入抽象层的文件夹,并在该文件夹中编写Protocol的接口函数;
[0062] 步骤(1)的②驱动格式是在BIOS的Driver 文件夹下建立图形抽象层或输入抽象层的文件夹,在这个文件夹下编写Protocol 文件中GAL 函数接口的具体实现;需要实现Supported函数、Start函数 与Stop函数;
[0063] Supported 函数实现步骤:用UEFI 规范的OpenProtocol 函数打开UEFI的UGA 协议并加以测试,以保证之后的GAL 功能函数可以调用UGA 的服务,之后用UEFI 规范的CloseProtocol 函数关闭UGA 协议;
[0064] Start 函数实现步骤:在得到Supported 函数的保证下,用 OpenProtocol函数打开UEFI 的UGA 协议以调用其提供的服务;随后构造相应的数据结构并用之前Protocol 中的 接口 函数指 针指向驱 动程序中 对应的 函数 ;最后 用UEFI  规范的InstallProtocolInterface 函数将GAL 协议安装到Controller Handle 上;
[0065] Stop 函数实现步骤:将Start 中安装的协议用CloseProtocol 关闭,并用UEFI 规范的UninstallProtocolInterface 函数卸载,最后释放所构造的数据结构;
[0066] 具备了上面 3 个函数的驱动程序就实现了UEFI 驱动的绑定协议,为GAL 功能函数的开发提供了一个符合UEFI 驱动模式的框架;
[0067] 接下来用图形学的算法实现相应的函数接口;
[0068] 最后,通过在UEFI应用程序中调用GAL和IAL的驱动来实现对BIOS Setup界面的显示和修改;这包括图形设备接口的实现、字符的显示、窗口的管理和控制操作;窗口的管理和控制通过消息传递的方式来实现,通过调用IAL的驱动产生消息传递给窗口控制程序;
[0069] 对于BIOS SETUP菜单的显示需要调用UEFI运行时服务的接口函数GetVariable和GetNextVariableName以及QueryVariableInfo;在对SETUP菜单的数值进行修改后需要调用SetVariable接口函数。具体的实现可以参考目前UEFI BIOS的实现方法。
[0070] 上述具体实施方式仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述具体实施方式,任何符合本发明的一种修改BIOS SETUP界面的方法的权利要求书的且任何所属技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。
[0071] 除说明书所述的技术特征外,均为本专业技术人员的已知技术。
相关专利内容
标题 发布/更新时间 阅读量
一种修改纸 2020-05-11 922
声学信号修改 2020-05-12 965
修改分析流 2020-05-11 489
修改命令 2020-05-11 446
路线修改 2020-05-11 126
修改比特流 2020-05-12 695
百叶修改器 2020-05-12 789
修改带 2020-05-11 1030
修改对话窗口 2020-05-12 7
修改书写笔 2020-05-12 825
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈