提供均匀观感的bios图形引擎的制作方法

文档序号:6479392阅读:175来源:国知局
专利名称:提供均匀观感的bios图形引擎的制作方法
提供均匀观感的BIOS图形引擎
背景技术
计算机典型地包含称为基本输入/输出系统(“BIOS”)代码的可执行代码。BIOS 代码被执行以初始化(引导)计算机并且将控制传递给操作系统,例如微软 Windows 或Linux。此外,BIOS测试计算机硬件以确保正确的操作、定位驻留在外设上的专用BIOS 代码(例如图形板上的图形BIOS)并且提供到供操作系统使用的计算机低层功能(例如访 问存储驱动器、与输入设备交互等等)的各种接口。BIOS典型地存储在复位时可由计算机处理器寻址的只读存储器(“ROM”)或者闪 存设备中。尽管这些设备提供了对于引导计算机的BIOS程序的访问,但是它们也限制了可 用于BIOS存储的存储量。BIOS典型地通过原始文本界面,而不是用户在操作现代计算机时期望的图形界面 与计算机用户交互。通过BIOS用户界面,计算机用户可以访问并且修改各种系统设置。这 样的设置的示例包括系统日期和时间、驱动器配置、安全设置、电源管理设置以及存储器定 时。此外,BIOS可以通过输入口令或者通过生物特征识别(例如指纹扫描)执行用户认证。 虽然文本界面相对容易开发并且消耗很少的系统资源,但是计算机用户已经变得习惯于图 形界面的简单性和视觉吸引力。因此,高效利用存储器和计算资源的灵活的BIOS图形界面 是所希望的。


为了对本发明的示例性实施例进行详细描述,现在将参照附图,其中图1示出了依照不同实施例的包括以可定制统一观感(look and feel)为特征的 BIOS图形用户界面的系统的框图;图2示出了依照不同实施例的用于处理信息和观感数据以便产生具有均勻观感 的图形BIOS显示的流程图;图3示出了依照不同实施例的用于为BIOS图形界面提供可定制统一观感的方法 的流程图;图4示出了依照不同实施例的用于BIOS图形元素的背景处理的方法的流程图;图5示出了依照不同实施例的用于再现BIOS图形显示的方法的流程图;图6示出了依照不同实施例的用于BIOS图形元素的背景再现的方法的流程图;图7示出了依照不同实施例的用于使用背景处理以产生对象的再现的方法的流 程图;以及图8示出了依照不同实施例的若干对象再现的示例。符号与命名特定的术语在以下整个描述和权利要求书中用来表示特定的系统部件。本领域技 术人员应当理解的是,计算机公司可能用不同的名称来指代某部件。本文并不打算区分名 称不同但功能相同的部件。在以下讨论中以及在权利要求书中,术语“包含”和“包括”以 开放式方式使用并且因而应当被解释成表示“包含,但不限于......”。此外,术语“耦合”预期表示间接的、直接的、光学的或无线电连接。因此,如果第一设备耦合到第二设备,那么 该连接可能通过直接电连接、通过经由其他设备和连接的间接电连接、通过光学电连接或 者通过无线电连接。术语“系统”表示两个或更多硬件和/或软件部件的集合,并且可以用 来表示一个或多个电子设备或者其子系统。此外,术语“软件”包括任何能够在处理器上运 行的可执行代码,而不管用来存储该软件的介质如何。因此,存储在非易失性存储器中并且 有时称为“嵌入式固件”的代码包含在软件的定义之中。
具体实施例方式以下讨论针对本发明的各个实施例。尽管这些实施例中的一个或多个可能是优选 的,但是所公开的实施例不应当被解释为或者另外地用作对包括权利要求书的本公开的范 围的限制。此外,本领域技术人员应当理解,以下描述具有广阔的应用并且任何实施例的讨 论仅仅意在例示该实施例,并不预期暗示包括权利要求书的本公开的范围限于该实施例。图1示出了依照不同实施例的包括具有可定制统一“观感”的BIOS图形用户界面 的系统的框图。“观感”在本公开中使用时表示用户界面的外观和操作。统一观感指的是用 户界面显示上的外观和操作的一致性。这样的一致性使得图形界面更易于了解和使用,并 且给界面提供了完整的感觉。系统100包括处理器102、北桥104和南桥112。不同实施例 可以将北桥和南桥104、112实现为分开的部件或者实现为单个部件。系统100还包括易失 性存储器106,典型地为动态随机存取存储器(“DRAM”);然而,也可以使用静态随机存取 存储器(“SRAM”)或者其他适当的随机存取存储器技术。显示器108提供可视信息给用 户。可以采用液晶显示器、阴极射线管显示器、等离子体显示器、有机发光二极管显示器、电 致发光显示器、投影显示器或者其他用来为用户显示文本和图形的显示器技术。基本输入/输出系统(“BIOS”)存储装置114包括BIOS程序122,其用于引导计 算机并且将控制传递给操作系统,例如Linux或微软 Windows 。术语BIOS在本文中使 用时预期包括本领域技术人员已知的各种各样的引导、初始化和操作系统启动程序,包括 基于统一可扩展固件接口(“UEFI”)的这样的程序。BIOS存储装置114可以实现为使其 内容在制造时固定的只读存储器(“ROM”)、其内容在制造后可以修改的闪速存储器、或者 适合用于存储BIOS的其他类型的非易失性存储器,例如可编程R0M( “PROM”)、电可擦除 PROM( “EEPR0M”)、磁阻随机存取存储器(“MRAM”)或者铁电存储器。一些实施例直接从 BIOS存储装置114执行BIOS程序122。其他实施例将BIOS程序122的全部或一部分从 BIOS存储装置114拷贝到易失性存储器106以便执行。外部存储装置110与BIOS存储装置114分开地提供程序和数据元素的存储。外 部存储装置110典型地包括硬驱动器,但是更一般地可以包括闪速驱动器或者与BIOS存储 装置114分离的任何其他非易失性存储介质。因此,“外部存储装置”在本文中使用时指的 是BIOS存储装置114之外的数据存储设备。外部存储装置110通过操作系统文件访问而 对于用户是可访问的(写、读等等)。形成对照的是,BIOS存储装置114写限于专用BIOS 编程工具以便限制BIOS被破坏的机会。外部存储设备110的容量典型地远大于BIOS存储 装置114的容量。例如,外部存储装置110通常将具有至少以吉字节测量的容量,而BIOS 存储装置114可能限于数兆字节。将外部存储设备110耦合到系统100的其余部分的接口 (例如高级技术附件、小型计算机系统接口、通用串行总线、光纤通道等等)是软件控制的,
5从而使得设备110直到系统100软件运行时才可访问。另一方面,为了引导系统100,BI0S 存储装置114没有软件支持也可访问。BIOS程序122包括允许计算机用户访问并且修改系统100的各种操作设置的用户 界面程序。BIOS程序122提供了具有可容易定制的统一观感的图形用户界面。BIOS程序 122中的图形界面处理被分成三个部件。图形引擎116包括处理例程128,即产生图形增强 的BIOS用户界面显示的代码和逻辑。观感模块120规定用户显示中包含的图形元素的外 观和行为,并且数据126包含以提示、反馈或者其他通过图形界面的通信的形式呈现给用 户的信息,例如字符串。如图2中所示,原始数据126以及定义显示外观和行为的观感数据120被提供给 处理例程128。处理例程128获得原始数据126以便显示并且使用观感数据120变换数据 126以便产生具有均勻的观感202的显示。通过将BIOS图形数据和处理分割成分开的模块, 实施例向所有BIOS用户提示和信息显示提供了一致的观感同时避免了将观感信息集成到 各个不同的用户交互部件中。这种集成使得观感变化更加困难,在需要这样的变化时不必 要地消耗工程资源,并且可能容易导致数据部件间不同的观感。这里描述的包括分开的处 理、数据和观感模块的实施例避免了这样的困难。 再次参照图1,观感模块118包含在外部存储装置110中。通过将观感数据隔离在 单个模块中,实施例允许改变BIOS图形显示的观感而不影响处理例程128或数据126。例 如,观感模块120可以在制造期间与BIOS程序122的其他部件一起编程到BIOS存储装置 114中。在制造之后,BIOS图形界面的观感可以通过用新的BIOS观感模块118代替观感模 块120以供使用来改变。一些实施例通过将新的观感模块118写到外部存储装置110来改 变BIOS界面的观感。由于BIOS存储装置110的相对较小的大小,定义观感的图形元素的 大小可能使得在外部存储装置110中存储成为必要。其他实施例通过用新的观感模块重写 BIOS存储装置114中的观感模块120来改变BIOS观感。因此,实施例有利地在BIOS软件 开发期间无需考虑界面观感。BIOS界面观感的设计可以留给设计专业人员,并且得到的观 感模块118、120在制造之后集成到系统100中而不影响BIOS固件开发或系统制造。观感模块118、120包含定义BIOS用户界面的观感的各种图像和控制信息。例如, 观感模块120的实施例包括(1)背景图像和透明度;(2)显示区域定义,包括大小、位置、 背景图像和透明度、边界图像和透明度以及规定显示区域内字符的大小、颜色、间距和对齐 的字体参数;(3)覆盖背景图像的图像以及该覆盖的位置和透明度;(4)按钮图像和透明 度,包括用于在按钮选择期间显示的图像和用于在光标通过按钮时显示的图像;(5)帮助 信息字段宽度和行为;(6)弹出框背景、边界、透明度和字体参数;以及(7)规定用户界面的 观感的其他参数。提供用户认证的BIOS程序122实施例(例如支持指纹扫描的实施例)可以包括 旨在通知用户需要这种验证以及这种验证的状态的观感元素。这样的元素可以包括指纹扫 描等待图像和透明度、指纹扫描接受图像和透明度以及指纹扫描错误图像和透明度。图3示出了依照不同实施例的用于为BIOS图形界面提供可定制统一观感的方法 的流程图。尽管为了方便起见顺序地绘出,所示动作的至少一些可以以不同的顺序执行和/ 或并行地执行。在框302中,将BIOS图形引擎116安装在BIOS存储设备114中。BIOS图 形引擎116产生用于BIOS图形用户界面的显示。在框304中,将提供用于在BIOS图形用户界面上显示的提示或其他信息的各个数据源部件126安装在BIOS存储设备114中。既不 是BIOS图形引擎116也不是数据源部件126定义应用到BIOS图形用户界面显示的观感。在框306中,设计BIOS图形界面的观感。观感设计努力的时机不受系统100的设 计或制造的其他方面的约束,因为观感模块120没有集成到BIOS图形引擎处理例程128或 者数据源部件126中。为了最大化BIOS图形用户界面的视觉吸引力,可以由设计专业人员 (诸如图形设计者)而不是软件工程师或程序员结合用于定义观感元素的准则集合来设计 观感。在框308中,转换程序处理观感设计者提供的观感配置文件和伴随的图像以便创建 适合BIOS图形引擎116使用的观感二进制模块120。观感模块120包含允许BIOS图形引 擎处理例程128将观感施加到为用户显示的数据126的所有相关观感信息。在框310中,将观感模块120安装到系统100中。在一些实施例中,观感模块120 安装在BIOS存储设备114中。在其他实施例中,观感模块118安装在外部存储设备110中。在框312中,BIOS图形引擎的处理例程128使用从观感模块120读取的观感数据 处理数据126,例如为用户显示的提示或其他信息,以便提供具有统一观感的BIOS图形用 户界面。如果希望新的观感,那么所述过程继续框306中的观感设计。在框310中,安装新 的观感,而不干扰先前安装的处理例程128或数据126。因此,实施例将BIOS图形界面观感 120的设计和安装与BIOS图形引擎处理例程128和数据部件126的设计和安装去关联,从 而简化了设计并且给BIOS用户界面添加了灵活性。准备用于显示的图形元素(例如施加阴影或可变透明度)是耗时的过程。为了加 速图形元素的显示,BIOS图形引擎116的实施例采用背景处理124以便在用户希望观看图 形元素之前再现这些元素。图4示出了依照不同实施例的用于BIOS图形元素的背景处理的 方法的流程图。尽管为了方便起见顺序地绘出,所示动作的至少一些可以以不同的顺序执 行和/或并行地执行。在框402中,BIOS图形用户界面是活动的。图形元素显示在显示设 备108上并且BIOS可用来响应用户交互。在框406中,BIOS检查用户交互。在框408中, 如果用户不与图形界面交互,那么BIOS图形引擎执行背景再现。在背景再现期间,BIOS图形引擎再现当前无需用于显示但是很可能在将来显示的 图形元素。例如,实施例将图形元素的不同再现定义为规则再现、翻转(rollover)再现、激 活再现和选择再现。规则再现是被再现元素未被选择、激活或处于光标下(被翻转)时的 正常状态。翻转再现是定位在移动光标之下的图形元素的显示状态。例如,翻转再现可以 被加亮显示。选择再现是在元素可以被选择并且当前被选择的情况下所需的再现。在元素 处于其中其选择或逻辑正被使用的状态下的情况下需要激活再现。例如,下拉菜单仅在被 激活时示出。当显示表单(用户与之交互的图形显示)时,在可以完全显示表单(form)之 前必须完成表单元素的所有规则再现。在表单被显示之后,可以在等待用户交互的同时在 后台处理表单元素的交替再现(例如翻转、选择、激活)。例如,可能需要在其他元素之前显 示光标附近的元素的可替换再现,因此,实施例可以认为最靠近光标的元素具有最高的优 先级,并且在再现更远的元素之前通过后台处理再现这些元素。通过预先再现很可能在不 久的将来显示的图形元素,BIOS图形引擎减少了操作者交互与显示更新之间的时间,从而 使得界面更容易响应于用户。如果在框406中检测到用户与界面的交互,那么在框404中处理用户交互并且之 后处理在框406中继续。
图5示出了依照不同实施例的用于再现BIOS图形显示的方法的流程图。尽管为了 方便起见顺序地绘出,所示动作的至少一些可以以不同的顺序执行和/或并行地执行。在 框502中,用户通过选择要观看的表单与BIOS图形界面交互。当表单被选择用于显示时, 在可以完全显示表单之前,必须处理先前并未为其创建规则再现的所有表单图形元素(对 象)以便提供规则再现。在框504中,表单对象被选择用于规则再现。在框506中,执行该 对象的规则再现。如果在框508中,没有完成所有的表单对象规则再现,那么在框504中选 择未再现的对象并且再现继续。如果在框508中,完成了所有表单对象的规则再现,那么在 框510中显示表单。在框510中显示表单规则再现之后,在框512中针对用户交互检查界面。如果没 有检测到用户交互,那么在框514中执行背景再现。背景再现操作以在用户不与BIOS图形 界面交互时的时间间隔期间再现很可能在不久的将来显示的图形元素,例如表单对象的翻 转再现。在返回到框512以检查用户与界面的交互之前,背景再现514继续至少预定的时 间间隔。如果在框512中检测到用户交互,那么在框516中处理用户交互。如果在框518 中用户交互指示显示不同的表单,那么在框502中继续执行。如果不需要新的表单,那么在 框512中继续轮询用户与界面的交互。图6示出了依照不同实施例的用于BIOS图形元素的背景再现的方法的流程图。实 施例采用背景再现来预先再现当前未显示的图形元素的版本。背景再现因此减少了显示预 再现元素所需的时间,从而导致更容易响应的用户界面。尽管为了方便起见顺序地绘出,所 示动作的至少一些可以以不同的顺序执行和/或并行地执行。背景再现在框602中开始, 其中表单和图形元素优先级等级被选择用于处理。将处理优先级分配给可以被显示的各种 再现,其中该分配依照这些再现将被显示的可能性。实施例可以例如如下分配再现优先级 第一优先级(最可能被显示)分配给当前表单中的选择对象的激活再现,第二优先级分配 给当前表单翻转再现,第三优先级分配给当前表单选择再现,第四优先级分配给可以从当 前表单链接到的、按照到当前表单中的选择的项目(例如特定对象)的邻近程度排序的表 单的规则再现。背景再现以具有相对较短的持续时间的时间片(间隔)执行。在框604中,复位 用来测量背景再现时间的定时器。在框608中,在任何先前会话中停止再现的点处继续再 现选择的表单和优先级。BIOS图形引擎116的实施例记录先前针对每个图形元素执行的再 现,以及用户交互是否指示重新再现先前再现的元素。该记录允许选择表单的背景再现重 新开始选择具有所请求优先级的未再现的对象。在框612中,发起选择对象的再现并且在 完成时存储该再现以便将来显示。在框618中,检查背景再现定时器。如果定时器没有到期,那么在框620中检查当 前再现是否完成。如果由于再现被细分成多个处理步骤,框612中发起的再现循环没有导 致对象的完成的再现,那么在框612中继续对象的再现。如果在框620中发现对象再现完 成,并且在框622中发现已经再现了当前表单上具有选择优先级的所有对象,那么在框602 中背景再现继续选择表单和优先级用于再现。如果在框622中当前表单上且具有选择的优 先级的对象留待再现,那么在框624中选择下一个对象以用于再现并且在框612中继续背 景再现。如果在框618中发现背景再现定时器已经到期,那么在框616中检查用户与界面
8的交互。如果用户未与界面交互,那么在检查当前对象再现是否完成的框620中继续背景 处理。另一方面,如果用户与界面交互,那么在框614中处理用户交互。在处理用户交互之 后,在框610中进行对于进一步的用户交互的轮询。如果检测到用户交互,那么在框614中 进行处理。如果没有检测到用户交互,那么在框602中背景再现继续选择表单和优先级。图7示出了依照不同实施例的用于使用背景处理以产生对象的再现的方法的流 程图。尽管为了方便起见顺序地绘出,所示动作的至少一些可以以不同的顺序执行和/或 并行地执行。图7中示出的动作考虑了单个对象的再现。实施例可以在背景再现时间间隔 期间执行一个或多个所绘动作。其他实施例可以在多个背景再现时间间隔上分割描绘的动 作。对象实施例可能需要比所示的再现更多或更少的再现。本公开的实施例并不限于任何 数量的再现,而是包含产生BIOS图形用户界面所需的任何数量的再现。在框702中,将包含操作代码(opcode)、提示串标记(token)、帮助串标记以及选 项串标记阵列的原始输入数据提供给背景处理124。opcode规定要执行的再现。每个标记 包含字符串。在框704中从标记中提取这些串。在框706(第一中间处理级)中,再现每个 字符串的黑白图像。应用到字符串的字体可以由观感模块120提供。在中间处理级2 (框708)中,依照例如观感模块120中规定的参数对框706的黑 白字符串再现着色并且添加透明度。在框710中,创建对象的规则再现。该规则再现是对 象未被选择、激活或处于光标之下时显示的对象再现。需要所有表单对象的规则再现以便 完整地显示表单。在框712中,产生对象的翻转再现。翻转再现在光标处于对象之上时显 示。最后,在框714中,创建对象的激活再现。激活再现在正使用对象选择或逻辑时显示, 例如下拉菜单选项仅在对象被激活时显示。实施例依照观感模块120、118中包含的观感信 息再现每个对象以便提供具有统一观感的BIOS显示。图8示出了依照不同实施例的若干对象再现的示例。示出了分别如框710、712和 714中创建的示例性规则再现802、示例性翻转再现804以及示例性激活再现806。上面的讨论意在说明本发明的原理和各个实施例。一旦完全理解上面的公开内 容,许多变型和修改对于本领域技术人员应当变得清楚明白。下列权利要求旨在被解释为 包含所有这样的变型和修改。
权利要求
一种计算机系统,包括基本输入/输出系统(“BIOS”)图形引擎;以及与所述BIOS图形引擎分离的BIOS图形观感模块,该BIOS图形观感模块包含定义在操作系统获得该系统的控制之前呈现给用户的BIOS图形用户界面显示的外观和行为的观感定义;并且其中所述BIOS图形引擎依照观感定义变换要为用户显示的信息以便提供均匀外观和行为给提供给用户的图形显示。
2.权利要求1的计算机系统,其中BIOS图形观感模块存储在与BIOS图形引擎不同的 存储设备中。
3.权利要求1的计算机系统,其中BIOS图形观感模块的安装与BIOS图形引擎安装无关。
4.权利要求1的计算机系统,其中改变BIOS图形观感模块改变图形显示的外观和行为。
5.权利要求1的计算机系统,其中BIOS图形观感模块提供选自以下组的至少一个显示 属性,该组由背景图像、背景透明度、字体字符大小、字体字符颜色、字体字符间距、字体字 符轮廓颜色以及字体字符轮廓厚度组成。
6.权利要求1的计算机系统,其中BIOS图形观感模块提供选自以下组的至少一个显示 属性,该组由边界图像、边界图像透明度、边界图像旋转、按钮图像、按钮图像透明度、按钮 选择图像、按钮选择图像透明度、按钮翻转图像以及按钮翻转图像透明度组成。
7.权利要求1的计算机系统,其中BIOS图形观感模块提供选自以下组的至少一个显示 属性,该组由指纹等待图像、指纹等待图像透明度、指纹接受图像、指纹接受图像透明度、指 纹错误图像以及指纹错误图像透明度组成。
8.权利要求1的计算机系统,其中BIOS图形引擎包括在用户不与BIOS图形界面交互 时的时间间隔期间再现不是立即需要显示的图形元素的后台处理。
9.权利要求8的计算机系统,其中BIOS图形引擎依照一定元素将早于其他元素显示的 概率执行图形元素的后台处理。
10.权利要求1的计算机系统,其中BIOS图形引擎仅在检测到图形元素的变化的情况 下才重新再现先前再现的图形元素。
11.一种方法,包括执行产生BIOS图形用户界面的BIOS图形引擎;执行生成在BIOS图形用户界面上向用户显示的信息的BIOS数据部件,该BIOS数据部 件与所述BIOS图形引擎分离;从BIOS图形观感模块检索定义BIOS图形界面显示的外观和行为的观感定义,所述观 感模块与所述BIOS图形引擎和BIOS数据部件分离;以及在所述BIOS图形引擎中处理从所述观感模块检索的观感定义以及由所述BIOS数据部 件提供的信息以便生成包含该信息并且具有由所述观感定义确定的外观和行为的BIOS图 形用户界面显示。
12.权利要求11的方法,还包括通过在计算机系统中安装BIOS图形观感模块而不重新 安装BIOS图形引擎或者BIOS数据部件来改变BIOS图形用户界面的观感。
13.权利要求11的方法,还包括执行将定义BIOS图形用户界面的观感的图像转换成观 感模块的变换程序。
14.权利要求11的方法,还包括依照从观感模块检索的观感定义处理由多个BIOS数据 部件提供的信息以便提供统一观感给所有BIOS图形用户界面显示。
15.权利要求11的方法,还包括在用户不与图形界面交互时再现不是立即需要显示的 图形元素(背景再现)。
16.权利要求15的方法,还包括基于图形元素将早于其他元素显示的可能性选择该元 素用于背景再现。
17.权利要求11的方法,还包括在检测到先前再现的图形元素中的变化的情况下重新 再现该元素。
18.一种系统,包括用于定义计算机BIOS图形界面的观感的装置;用于再现计算机BIOS的图形显示的装置;以及其中所述再现装置和定义装置是分离的部件,并且再现装置依照所述定义装置处理要 显示的所有BIOS数据以便提供一致的外观和行为给BIOS图形显示。
19.权利要求18的系统,还包括用于在背景中创建图形再现的装置,其在用户不与图 形界面交互时的时间间隔期间创建不是立即需要显示的图形再现。
20.权利要求18的系统,还包括用于对未显示的图形再现排序的装置,其中所述排序 依照直到该再现将被显示的估计的时间。
全文摘要
一种计算机系统包括基本输入/输出系统(“BIOS”)图形引擎以及BIOS图形观感模块。BIOS图形观感模块与BIOS图形引擎分离并且包含定义在操作系统获得系统的控制之前呈现给用户的BIOS图形用户界面显示的外观和行为的观感定义。BIOS图形引擎依照观感定义变换要为用户显示的信息以便提供均匀外观和行为给提供给用户的图形显示。
文档编号G06F3/00GK101911004SQ200880124465
公开日2010年12月8日 申请日期2008年1月9日 优先权日2008年1月9日
发明者J·E·斯科特, K·D·吉列斯皮 申请人:惠普开发有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1