首页> 中国专利> 在硬件平台上实现多个安全引导路径

在硬件平台上实现多个安全引导路径

摘要

一种计算系统被配置为安全地引导不同操作系统(图1A)。该计算系统包括一个或多个处理器(110),存储用于引导第一操作系统的第一固件元件的第一存储器设备(122),存储用于引导第二操作系统的第二固件元件的第二存储器设备(124),被配置为提供用于引导第一操作系统的认证的第一安全模块(132),和被配置为提供用于引导第二操作系统的认证的第二安全模块(134)。该计算系统被配置为使得在第一安全模块被连接至一个或多个处理器时,第一操作系统或第二操作系统基于选择信号(150)来被选择以用于引导,并且在第一安全模块未被连接至一个或多个处理器时,第二操作系统被选择用于引导。

著录项

  • 公开/公告号CN112219187A

    专利类型发明专利

  • 公开/公告日2021-01-12

    原文格式PDF

  • 申请/专利权人 谷歌有限责任公司;

    申请/专利号CN201980037554.X

  • 申请日2019-06-05

  • 分类号G06F9/4401(20060101);G06F21/44(20060101);G06F21/57(20060101);

  • 代理机构11219 中原信达知识产权代理有限责任公司;

  • 代理人李佳;邓聪惠

  • 地址 美国加利福尼亚州

  • 入库时间 2023-06-19 09:30:39

说明书

相关申请的交叉引用

本申请要求于2018年06月11日提交的美国专利申请No.16/004,586的提交日的权益,其公开内容通过引用合并于此。

固件是向计算设备的具体硬件提供指令的软件,所述指令诸如用于引导操作系统的指令。计算设备可以被配置为引导多个操作系统。例如,常规计算设备可以具有被配置为引导多个操作系统的一个固件元件。或者可替换地,计算设备可以具有一个固件元件,其运行另一个固件元件作为有效载荷。然而,在这种情况下,并不保证每个操作系统的所有特征都被完全支持。进一步地,计算设备可能未配备有每个操作系统所必需的安全认证。

发明内容

本公开提供了一种计算系统,其包括操作地连接至一个或多个处理器的第一存储器设备,该第一存储器设备存储用于引导第一操作系统的第一固件元件;操作地连接至该一个或多个处理器的第二存储器设备,该第二存储器设备存储用于引导第二操作系统的第二固件元件;被配置为提供用于引导该第一操作系统的认证的第一安全模块;和操作地连接至该一个或多个处理器的第二安全模块,该第二安全模块被配置为提供用于引导该第二操作系统的认证;其中在该第一安全模块被操作地连接至该一个或多个处理器时,该一个或多个处理器被配置为响应于选择信号而选择该第一操作系统或第二操作系统中的任一个,并且在该第一安全模块未被操作地连接至该一个或多个处理器时,该一个或多个处理器被配置为引导该第二操作系统。

该计算系统可以进一步包括操作地连接至该一个或多个处理器、该第一存储器设备和该第二存储器设备的选择器电路,其中该选择器电路被配置为基于该选择信号来将该第一存储器设备或该第二存储器设备中的一个操作地连接至该一个或多个处理器。该选择信号可以基于该第一安全模块是否操作地连接至该一个或多个处理器。该选择器电路可以被配置为基于该选择信号来启用或禁用该第一安全模块。

该计算系统可以进一步包括以可移除方式连接至该一个或多个处理器的可移除外围组件,其中该第一安全模块被安装在该可移除外围组件中。该可移除外围组件可以包括利用第一操作系统能够识别的一个或多个特征。该可移除外围组件可以是键盘模块。该键盘模块可以包括利用第一操作系统能够识别的一个或多个特征。该一个或多个能够识别的特征可以包括该键盘模块上的按键的布局。该可移除外围组件可以是电路板。该计算系统可以进一步包括操作地连接至该一个或多个处理器、该第一存储器设备、该第二存储器设备和该可移除外围组件的选择器电路,其中该选择器电路被配置为在该可移除外围组件被操作地连接至该选择器电路时将该第一存储器设备操作地连接至该一个或多个处理器。

该一个或多个处理器可以包括中央处理单元或嵌入式控制器中的至少一个。

该第一存储器设备或该第二存储器设备中的至少一个可以是串行外围接口(SPI)。

该第一固件元件或该第二固件元件中的一个可以是coreboot固件元件、通用可扩展固件接口(UEFI)或基本输入/输出系统(BIOS)中的一个。

该第一安全模块或第二安全模块中的至少一个可以是受信平台模块(TPM)。

本公开进一步提供了一种计算系统,其包括一个或多个处理器;操作地连接至该一个或多个处理器的第一存储器设备,该第一存储器设备存储用于引导第一操作系统的第一固件元件;操作地连接至该一个或多个处理器的第二存储器设备,该第二存储器设备存储用于引导第二操作系统的第二固件元件;和被配置为提供用于引导该第一操作系统的认证的第一安全模块或者被配置为提供用于引导该第二操作系统的认证的第二安全模块中的任一个;其中该一个或多个处理器被配置为响应于该第一安全模块还是该第二安全模块操作地连接至该一个或多个处理器而选择该第一操作系统或该第二操作系统来引导。

该计算系统可以进一步包括操作地连接至该一个或多个处理器、该第一存储器设备和该第二存储器设备的选择器电路,其中该选择器电路被配置为基于该第一安全模块还是该第二安全模块操作地连接至该一个或多个处理器而将该第一存储器设备或第二存储器操作地连接至该一个或多个处理器。该选择信号可以是从开关、跳线或另一个芯片中的一个接收的信号的一部分。该选择信号可以是从用户接收的信号的一部分。

本公开进一步提供了确定是否在计算系统中提供了多个固件元件以用于在该计算系统上引导不同的操作系统,检测特定安全模块是否在该计算系统中可用,并且响应于检测到该特定安全模块而选择该固件元件中的一个以用于引导不同的操作系统中的一个。

附图说明

图1A图示了依据本公开的方面的示例系统。

图1B图示了依据本公开的方面的示例系统。

图2A图示了依据本公开的方面的示例系统。

图2B图示了依据本公开的方面的示例系统。

图3图示了依据本公开的方面的示例系统。

图4图示了依据本公开的方面的示例系统。

图5图示了依据本公开的方面的示例系统。

图6是图示依据本公开的方面的示例方法的示例流程图。

具体实施方式

概述

该技术总体上涉及一种使用多个固件元件在相同硬件平台上安全地引导不同操作系统的系统,所述硬件平台诸如膝上计算机、平板计算机、诸如智能手表的可穿戴设备或者其它的客户端设备。就此而言,该系统包括被配置为引导操作系统的一个或多个处理器。第一存储器设备和第二存储器设备连接至处理器。存储器设备可以被配置为提供单独的引导路径。例如,第一存储器设备可以存储用于引导第一操作系统的第一固件元件,而第二存储器设备可以存储用于引导第二操作系统的第二固件元件。为了提供每个操作系统的安全引导,一个或多个安全模块可以被连接至处理器。例如,第一安全模块可以被配置为提供用于引导第一操作系统的认证,而第二安全模块可以被配置为提供用于引导第二操作系统的认证。

该系统可以被配置为基于多种因素来选择预期操作系统。例如,该系统可以被配置为使得在该第一安全模块连接至处理器时,响应于选择信号而选择第一操作系统或第二操作系统,但是在该第一安全模块未连接至处理器时,则选择第二操作系统。以这种方式,确保了该系统在第一安全模块不可用于提供认证时不引导第一操作系统。

对于另一个示例,该系统可以被配置为使得在第一和第二安全模块都可用于提供认证时,基于选择信号来选择操作系统中的一个。安全模块随后可以基于该选择信号而选择性地被启用和/或禁用。以这种方式,该系统可以轻易地被设置并重置为任一引导路径。

对于又一个示例,该系统可以被配置为使得在第一和第二安全模块中的仅一个可用于提供认证时,该系统选择可用的安全模块能够认证的操作系统。以这种方式,确保了该系统引导能够被认证的操作系统。

为了该系统制造期间容易且安全的组装,给定安全模块可以被安装在该系统的可移除组件上。可移除组件可以具有利用预期操作系统轻易能够识别的特征。通过识别这些特征,技术人员可以轻易地在可移除组件上安装能够认证预期操作系统的安全模块。进一步地,在制造和组装期间,技术人员可以通过连接具有利用预期操作系统能够识别的特征的可移除组件而轻易地设置预期操作系统。

总而言之,技术问题是在具体硬件平台上引导不同的操作系统可能存在安全问题。本文所公开的技术提供了使得引导路径能够基于可用于认证操作系统的安全模块来安全地被选择的各种解决方案。因此,该技术是有利的,因为其提供了一种在一个硬件平台上引导多个操作系统的安全方式。通过以可移除方式连接安全模块或者基于选择信号来选择性地启用安全模块,该技术确保了预期操作系统的安全引导。进一步地,将安全模块安装至可移除组件使得能够实现在硬件平台的制造期间进行容易且安全的组装。

示例系统

图1A示出了根据本公开的方面的示例系统100A。计算设备(未示出)的处理器110被操作地连接至两个存储器设备,所述存储器设备被示为第一存储器设备122和第二存储器设备124。处理器110可以是任何常规的处理器,诸如市场上能够获得的中央处理单元(“CPU”)。可替换地,处理器可以是计算设备的嵌入式控制器,诸如平台控制单元(“PCH”,其是控制数据路径并且支持结合CPU使用的功能的芯片的集合,所述功能例如包括时钟、媒体接口、I/O功能等)、片上系统(“SoC”)等。作为其他替代,处理器110可以是专用组件,诸如专用集成电路(“ASIC”)或其它基于硬件的处理器。虽然并非必需,但是计算设备(未示出)可以进一步包括专用硬件组件以执行具体的计算过程,诸如解码视频、将视频帧与图像匹配、使视频失真、编码失真视频,等等。处理器可以被配置为引导多个操作系统。

第一存储器设备122和第二存储器设备124被配置为存储能够由处理器110所访问的信息,包括能够由处理器110执行的指令。第一存储器设备122和第二存储器设备124还可以包括能够由处理器110所检索、操纵或存储的数据。第一存储器设备122和第二存储器设备124可以是能够存储处理器110所能够访问的信息的任何非瞬时类型,诸如硬盘、存储卡、ROM、RAM、DVD、CD-ROM、闪存设备、能写入的以及只读存储器。作为示例,对于闪存设备而言,可以使用多个接口中的任何一个,例如串行外围接口(“SPI”)、低引脚计数(“LPC”)、多路复用地址数据(“MuxedAD”)等。

指令可以是诸如机器代码的要被处理器110直接执行的任意指令集合或诸如脚本的间接执行的任意指令集合。在该方面,术语“指令”、“应用”、“步骤”和“程序”可以在本文可互换地使用。指令可以以目标代码格式存储以便由处理器执行处理,或者以包括被按需解释或事先编译的独立源代码模块的脚本或合集在内的任何其它计算机设备语言被存储。下文更详细地解释指令的功能、方法和例程。

数据可以依据指令而被处理器110所检索、存储或修改。例如,虽然本文所描述的主题并不被任何特定的数据结构所限制,但是数据可以被存储在计算机寄存器中,作为具有许多不同字段和记录的表格或者XML文档被存储在关系数据库中。数据也可以以任何计算设备可读的格式被格式化,诸如但不限于二进制值、ASCII或Unicode。此外,数据可以包括足以识别相关信息的任何信息,诸如数字、描述性文本、专有代码、指针、针对诸如其它网络位置处的其它存储器中所存储的数据的引用,或者被函数用来计算相关数据的信息。

第一存储器设备122和第二存储器设备124可以均存储不同的固件元件。每个存储器设备所存储的固件元件可以是任何类型的固件,诸如coreboot(执行硬件初始化并且执行被称作有效载荷的附加引导逻辑的轻量级固件)、通用可扩展固件接口(“UEFI”)、基本输入/输出系统(“BIOS”)、实时操作系统(“RTOS”)等。例如,第一存储设备122可以存储用于引导第一操作系统的第一固件元件,例如用于引导第一操作系统的coreboot,而第二存储器设备124可以存储用于引导第二操作系统的第二固件元件,例如用于引导第二操作系统的UEFI。由于第一存储器设备122和第二存储器设备124如所示出地被单独连接至处理器,所以针对处理器110创建了两个单独的引导路径——每一个均使用不同的固件元件。

处理器110操作地连接至不同的安全模块,诸如第一安全模块132和第二安全模块134。第一安全模块132和第二安全模块134可以是任何类型的安全模块,例如受信平台模块(“TPM”)、智能卡、安全芯片等。例如TPM的某些类型的安全模块被设计为确保特定操作系统能够在诸如处理器110的具体硬件上安全运行。在该示例中,第一安全模块132提供用于引导第一存储器设备122上存储的第一固件元件被配置为引导的第一操作系统的认证,而第二安全模块134提供用于引导第二存储器设备124上存储的第二固件元件被配置为引导的第二操作系统的认证。

在这种情形中,第一安全模块132被安装在第一可移除组件140上。第一可移除组件140以可移除方式且操作地连接至处理器110。第一可移除组件140可以是外围组件,诸如键盘模块、硬盘、图形卡、监视器等。可替换地、第一可移除组件140可以是与处理器110、第一存储器设备122、第二存储器设备124和第二安全模块134安装于其上的一个或多个其它电路板分离的电路板。

第一可移除组件140可以具有利用特定操作系统能够识别的一个或多个特征。以这种方式,在计算设备的制造期间,技术人员可以简单地通过以下来放置与预期用于计算设备的操作系统相对应的安全模块:识别第一可移除组件140对应于预期操作系统。在该示例中,第一可移除组件140可以具有利用第一存储器设备122上所存储的第一固件元件被配置为引导的第一操作系统能够识别的至少一个特征。例如,该能够识别特征可以是标志、颜色方案、键盘布置等。

示例系统100A可以被配置为使得在第一安全模块132操作地连接至处理器110时,处理器110被配置为响应于选择信号而选择第一操作系统或第二操作系统来引导。就此而言,如所示出的选择器电路150操作地连接至处理器110、第一存储器设备122和第二存储器设备124。选择器电路150可以包括多个电路元件中的任一个,例如多路复用器、开关、逻辑门等。选择器电路150被配置为基于选择信号而选择第一存储器设备122和第二存储器设备124所提供的引导路径中的一个。

例如,选择器电路150可以被配置为使得在第一可移除组件140被操作地连接以向选择器电路150提供选择信号时(指示第一安全模块132被操作地连接至处理器110),这使得选择器电路150将第一存储器设备122操作地连接至处理器110。以这种方式,在计算设备的制造期间,可以仅通过将第一可移除组件140操作地连接至选择器电路150而由技术人员选择第一存储器设备122所提供的引导路径,所述第一可移除组件140具有利用第一操作系统能够识别的特征。

相比之下,选择器电路150可以进一步被配置为使得在第一可移除组件140未被操作地连接以向选择器电路150提供选择信号时(指示第一安全模块132未操作地连接至处理器110),这使得选择器电路150将第二存储器设备124操作地连接至处理器110。这确保了处理器110在第一安全模块132未操作地连接至处理器110时不运行第一操作系统。

处理器110、第一存储器设备122、第二存储器设备124、第二安全模块134和选择器电路150可以被安装在相同电路板上,或者被安装在不同电路板上。例如,制造被专门设计用于第二操作系统的硬件的供应商可以制造包括处理器110、第一存储器设备122、第二存储器设备124、第二安全模块134和选择器电路150的主板。因此,该主板上的处理器110被提供有在第一存储器设备122和第二存储器设备124上分开存储的两个引导路径。这里,供应商可能仅能够在该主板上提供第二安全模块134,因为其未制造用于诸如第一操作系统的其它操作系统的具体硬件。然而,制造被专门设计用于第一操作系统的硬件的另一个供应商可以采用该主板,并且将包括第一安全模块132的第一可移除组件140连接至该主板。以这种方式,该供应商专门制造用于安全运行一个操作系统的硬件易于被其它供应商所定制以安全运行另一个操作系统。技术人员可以简单地通过连接具有对应于预期操作系统的能够识别特征的可移除组件来执行该定制。

图1B示出了根据本公开的进一步方面的示例系统100B。示例系统100B包括示例系统100A的许多特征,但是具有如下文进一步讨论的某些差异。在图1B中,第二可移除组件142被以可移除方式且操作地连接至处理器110。在该示例中,第二可移除组件142具有利用存储在第二存储器设备124上的第二固件元件被配置为引导的第二操作系统能够识别的一个或多个特征。例如,该能够识别特征可以是标志、颜色方案、键盘布置等。在该示例中,选择器电路150被配置为使得在第二可移除组件142被操作地连接以向选择器电路150提供选择信号时,这使得选择器电路150将第二存储器设备124操作地连接至处理器110。与图1A的示例系统100A相比,示例系统100B的第二可移除组件142没有安装于其上的任何安全模块。

对于示例系统100B而言同样地,处理器110、第一存储器设备122、第二存储器设备124、第二安全模块134和选择器电路150可以被安装在相同电路板上,或者被安装在不同电路板上。与图1A中的示例相似,制造被专门设计用于第二操作系统的硬件的供应商可以制造包括处理器110、第一存储器设备122、第二存储器设备124、第二安全模块134和选择器电路150的主板。在示例系统100B中,预期操作系统是第二操作系统,从而供应商简单地将具有利用第二操作系统能够识别的特征的第二可移除组件142连接至选择器电路150。由于该供应商所制造的主板已经包括了用于认证第二操作系统的第二安全模块134,所以不需要在第二可移除组件142中包括另一个安全模块。

图2A和2B示出了根据本公开的方面的示例系统200A和200B。示例系统200A和200B包括示例系统100A和100B的许多特征,但是具有如下文进一步讨论的差异。在图2A中,第一安全模块132被安装在第一键盘模块144上。第一键盘模块144被以可移除方式且操作地连接至处理器110。在该示例中,第一键盘模块144具有利用第一存储器设备122上所存储的第一固件元件被配置为引导的第一操作系统能够识别的特征。例如,第一键盘模块144可以具有针对第一制造商所提供的第一类型的计算设备设计的布置或布局,其不同于针对第二制造商所提供的另一种类型的计算设备设计的布置/布局。该布置/布局可以由操作地连接至第一安全模块132的第一键盘扫描元件145所反映。以这种方式,在计算设备的制造期间,技术人员可以简单地通过以下来放置与预期用于计算设备的操作系统相对应的安全模块:识别键盘模块对应于预期操作系统,这可能通过快速扫视是可能的。2-1多路复用器152被操作地连接至处理器110、第一存储器设备122和第二存储器设备124。2-1多路复用器152被配置为使得在第一键盘模块144被操作地连接至2-1多路复用器152时,其提供逻辑值“0”(或者“1”)作为用于该2-1多路复用器152的选择信号,并且使得该2-1多路复用器152将第一存储器设备操作地连接至处理器110。

将图2A与图2B中所示的示例系统200B相比较,其中第二键盘模块146而不是第一键盘模块144被以可移除方式且操作地连接至处理器110。在该示例中,第二键盘模块146具有利用第二存储器设备124上所存储的第二固件元件被设计为引导的第二操作系统能够识别的特征。例如,第二键盘模块146可以具有针对所选择类型的计算设备设计的布置/布局。该布置/布局可以由操作地连接至处理器110的第二键盘扫描元件147所反映。在此情形中,第二键盘模块146未被提供有用于向2-1多路复用器152提供选择信号的连接。相反,电阻器或其它选择器元件153被操作地连接至2-1多路复用器152。选择器元件153可以提供逻辑值“1”(或者“0”)作为使得2-1多路复用器152将第二存储器设备124操作地连接至处理器110的选择信号。与图2A相比,示例系统200B的第二键盘模块146不具有安装于其上的安全模块。

类似于上文所讨论的示例系统100A和100B,在示例系统200A和200B中,处理器110、第一存储器设备122、第二存储器设备124、第二安全模块134和2-1多路复用器152可以被安装在相同电路板上,或者被安装在不同电路板上。示例系统200A和200B被配置为允许预期操作系统被轻易选取,并且被提供有相对应的安全性保证。如上文所讨论的,制造专门针对第二操作系统设计的硬件的供应商可以制造包括处理器110、第一存储器设备122、第二存储器设备124、第二安全模块134和2-1多路复用器152的主板。在制造期间,如果针对计算设备的预期操作系统是第一操作系统,则技术人员可以识别第一键盘模块144具有利用第一操作系统能够识别的特征,并且将第一键盘模块144操作地连接至2-1多路复用器152。如果针对计算设备的预期操作系统是第二操作系统,则技术人员可以识别第二键盘模块146具有利用第二操作系统能够识别的特征,并且不将第二键盘模块146连接至2-1多路复用器152。以任一种方式,所得到的计算设备将具有利用相对应的安全模块运行预期操作系统的处理器110。

图3示出了根据本公开的方面的示例系统300。示例系统300包括示例系统100A的许多特征,但是具有如下文进一步讨论的差异。在示例系统300中,处理器110被操作地连接至第一存储器设备122和第二存储器设备124,以及第一安全模块132和第二安全模块134。

示例系统300可以被配置为使得在第一安全模块132被操作地连接至处理器110时,处理器110被配置为响应于选择信号而选择第一操作系统或第二操作系统来引导。就此而言,选择器电路154被操作地连接至处理器110、第一存储器设备122、第二存储器设备124和第一安全模块132。选择器电路154被配置为基于选择信号来选择第一存储器设备122和第二存储器设备124所提供的引导路径中的一个。例如,选择信号可以是来自诸如开关、跳线或另一个芯片之类的元件的信号的一部分,用于在计算设备的制造、安装或操作期间在不同引导路径之间进行选取。作为另一个示例,该选择信号可以是来自技术人员或用户的信号的一部分。

进一步地,选择器电路154可以被配置为使得在选择信号使得第一存储器设备122被选取以用于为处理器110提供引导路径时,选择器电路154启用第一安全模块132。启用第一安全模块132例如可以包括接通电源,而使得第一安全模块132可以提供用于使用存储在第一存储器设备122上的第一固件元件引导第一操作系统的认证。另一方面,在选择信号使得第二存储器设备124被选取以用于为处理器110提供引导路径时,选择器电路154可以被配置为禁用第一安全模块132。禁用第一安全模块132例如可以包括关断该设备的电源,而使得第二安全模块134可以提供用于使用存储在第二存储器设备124上的第二固件元件引导第二操作系统的认证。可替换地或另外(如所示出的),选择器电路154可以被操作地连接至第二安全模块134,并且还可以被配置为基于选择信号来启用或禁用第二安全模块134。因此,基于预期引导路径,相对应的安全模块可以被自动选择。虽然仅示出了两个安全模块,但是该方法能够扩展至三个或更多个安全模块而使得能够实现引导各种不同的操作系统。

在该示例系统300中,处理器110、第一存储器设备122、第二存储器设备124、第一安全模块132、第二安全模块134和选择器电路154可以全部安装在相同电路板上。以这种方式,在制造或安装期间,技术人员可以简单地改变选择器电路154的选择信号以选择针对预期操作系统的引导路径,并且作为该选择的结果,对应于预期操作系统的安全模块也将会被选择。

图4示出了根据本公开的方面的示例系统400。示例系统400包括示例系统100A的许多特征,但是具有如下文进一步讨论的差异。在示例系统400中,处理器110被操作地连接至第一存储器设备122、第二存储器设备124和选择器电路156。如所示出的,安全模块130被操作地连接至处理器110和选择器电路156。

选择器电路156被配置为使得其基于安全模块130被配置为认证的操作系统来选择引导路径。例如,如果操作地连接至选择器电路156的安全模块130被配置为提供用于引导第一存储器设备122中所存储的操作系统的认证,则连接安全模块130提供了使得选择器电路156将第一存储器设备122操作地连接至处理器110的选择信号。该过程选择第一操作系统以由存储在第一存储器设备122上的第一固件元件来引导。作为另一个示例,如果操作地连接至选择器电路156的安全模块130被配置为提供用于引导第二存储器设备124中所存储的操作系统的认证,则连接安全模块130提供了使得选择器电路156将第二存储器设备124操作地连接至处理器110的选择信号。该过程选择第二操作系统以由存储在第二存储器设备124上的第二固件元件来引导。

在示例系统400中,处理器110、第一存储器设备122、第二存储器设备124、选择器电路156和安全模块132可以全部安装在相同电路板上。以这种方式,在制造或安装期间,技术人员可以简单地将针对预期操作系统的安全模块连接至选择器电路156和处理器110,并且作为该连接的结果,针对预期操作系统的相对应引导路径将会被选择。这也确保了仅具有相对应安全模块的操作系统在处理器100上被引导。

虽然以上示例中的每一个都具有在相同硬件系统上提供两个单独引导路径的两个存储器设备,但是关于以上示例所描述的特征可以轻易地被扩展至在相同硬件系统上提供任意数量的单独引导路径的任意数量的存储器设备。

图5示出了根据本公开的方面的示例系统500。图5图示了示例系统100A的特征可以如何被扩展至多于两个的存储器设备的一个示例。如所示出的,示例系统500的处理器110被操作地连接至多个存储器设备,诸如第一存储器设备122、第二存储器设备124,直至第N存储器设备128,其中N是示例系统500中的存储器设备的总数。例如,第N存储器设备128可以存储用于引导第N操作系统的第N固件元件。处理器110可以被操作地连接至第二安全模块134和第N安全模块138。例如,第N安全模块138模块可以提供用于引导第N操作系统的认证。第N安全模块138被安装在第N可移除组件148上。例如,第N可移除组件可以具有利用第N操作系统能够识别的特征。

示例系统500可以被配置为使得在第N安全模块138被操作地连接至处理器110时,处理器110被配置为响应于选择信号而选择存储在存储器设备中的任一个存储器设备(包括第一存储器设备122、第二存储器设备124,直至第N存储器设备128)上的固件元件中的任一个固件元件被配置为引导的操作系统中的任一个操作系统。就此而言,选择器电路158被操作地连接至处理器110和存储器设备中的每一个(包括第一存储器设备122、第二存储器设备124,直至第N存储器设备128)。选择器电路158被配置为基于选择信号来选择存储器设备所提供的引导路径中的一个。

例如,选择器电路158可以被配置为使得在第N可移除组件148被操作地连接以向选择器电路158提供选择信号时(指示第N安全模块138被操作地连接至处理器110),这使得选择器电路158将第N存储器设备128操作地连接至处理器110。以这种方式,在制造期间,存储器设备中的任一个所提供的引导路径可以仅通过将对应于预期操作系统的可移除组件连接至选择器电路158而被技术人员所选择。

作为另一个示例,选择器电路158可以进一步被配置为使得在第N可移除组件148未被操作地连接以向选择器电路158提供选择信号时(指示第N安全模块138未被操作地连接至处理器110),这使得选择器电路158将另一个存储器设备操作地连接至处理器110。例如,选择器电路158可以被配置为将具有操作地连接至处理器110的相对应安全模块的存储器设备操作地连接至处理器110,在这种情况下,所述存储器设备将是第二存储器设备124(相对应的第二安全模块134被操作地连接至处理器110)。这确保了处理器110在第N安全模块138未操作地连接至处理器110时不运行第N操作系统。

虽然图5图示了将示例系统100A的特征扩展至多于两个的存储器设备,但是示例系统100B-400B的任何特征都可以以类似方式被扩展。例如,N-1多路复用器可以被用于扩展示例系统200A和200B以具有多于两个的存储器设备。作为另一个示例,多于两个的存储器设备和多于两个的安全模块可以被包括在示例系统300中,并且选择器电路154可以被修改以基于选择信号来选取存储器设备中的任一个并且启用/禁用安全模块中的一个或多个。作为又一个示例,多于两个的存储器设备可以被包括在示例系统400中,并且选择器电路156可以被修改以基于选择信号来选取存储器设备中的任一个。

再进一步地,以上示例中的每一个可以在没有多于两个的存储器设备的情况下被扩展,因为给定的固件元件可能能够引导多于一个的操作系统。例如,第一操作系统可以使用存储在第一存储器设备122上的第一固件元件来引导,而第二操作系统和第三操作系统可以使用存储在第二存储器设备124上的第二固件元件来引导,并且处理器110被配置为响应于选择信号而选择操作系统来引导。

示例方法

关于上文描述的示例系统更进一步地,现在描述示例方法。

图6提供了用于操作具有多个引导路径的系统的示例流程图600。例如,示例系统100A、100B、200A、200B、300、400和500可以根据示例流程图600进行操作。

在框610中,确定是否在计算系统中提供了用于在该计算系统上引导不同操作系统的多个固件元件。例如,参考图1A、1B、2A、2B、3和4,可以确定示例系统具有多个固件元件,诸如存储在第一存储器设备122上用于引导第一操作系统以及存储在第二存储器设备124上用于引导第二操作系统的那些固件元件。作为另一个示例,参考图5,可以确定示例系统500具有存储在第一存储器设备122、第二存储器设备124直至第N存储器设备128中的用于引导不同操作系统的多个固件元件。

在框620中,检测特定安全模块在计算系统中可用。例如,参考图1A、2A和3,可以确定示例系统具有可用于认证第一操作系统的第一安全模块132以及可用于认证第二操作系统的第二安全模块134。作为另一个示例,参考图1B和2B,可以确定示例系统仅有第二安全模块134可用。例如,可以基于选择信号来进行该检测,所述选择信号例如可以从图1A中的第一可移除组件140、图2B中的电路元件153或图4中的安全模块130所接收。

在框630中,固件元件中的一个响应于检测到特定安全模块而被选择用于引导不同操作系统中的一个。例如,参考图1A和2A,第一存储器设备122可以响应于第一安全模块132的检测而被选择。作为另一个示例,参考图4,第一存储器设备122或第二存储器设备124可以基于安全模块130被配置为认证的哪个操作系统的检测而被选择。作为又一个示例,参考图5,第N存储器设备128可以响应于第N安全模块138的检测而被选择。

除非另外有所指出,否则以上的可替换示例并不是相互排斥的,而是可以以各种组合形式来实施从而实现独特的优势。由于上文所讨论的特征的这些和其它变化和组合可以被利用而并不背离权利要求所限定的主题,所以以上对实施例的描述应当被理解为是作为说明而并不是对权利要求所限定主题的限制。此外,本文所描述的示例的提供以及表达为“诸如”、“包括”的分句等并不应当被解释为将权利要求的主题限制为具体示例;相反,该示例意在仅说明许多可能的实施例中的一个。进一步地,不同附图中的相同附图标记可以识别相同或相似的要素。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号