首页 / 专利库 / 专利权 / 第I章 / 国际申请 / 修改 / 引导过程修改

引导过程修改

阅读:886发布:2020-05-13

专利汇可以提供引导过程修改专利检索,专利查询,专利分析的服务。并且示例实施方式涉及 存储器 模式分类。示例引导过程 修改 可以包括在已启用的主机 操作系统 (OS)之上调用客户端OS的第一服务,使用第一服务对主机OS的引导过程进行修改,以及基于主机OS的经修改的引导过程在客户端OS内执行应用。,下面是引导过程修改专利的具体信息内容。

1.一种用于引导过程修改的系统,包括:
服务引擎,用以在已启用的主机操作系统(OS)之上调用客户端OS的第一服务;
引导过程引擎,用以使用第一服务来对主机OS的引导过程进行修改;以及应用引擎,用以基于主机OS的经修改的引导过程在客户端OS内执行应用。
2.根据权利要求1所述的系统,其中,用以对引导过程进行修改的引导过程引擎包括用以使用第一服务来模仿客户端OS的引导过程的引导过程引擎。
3.根据权利要求1所述的系统,进一步包括用以经由第二服务促进客户端OS与主机OS之间的通信的通信引擎。
4.根据权利要求3所述的系统,其中第一服务位于客户端OS上,并且第二服务位于主机OS上。
5.根据权利要求1所述的系统,其中客户端OS是主机OS的更新版本。
6.一种存储指令的机器可读介质,所述指令可由处理资源执行以促使计算系统:
使用第一服务对主机OS的引导过程进行修改,包括:
引导主机OS的图形资源提供器;以及
将客户端OS的显示管理器附接到所述图形资源提供器;
使用第二服务对主机OS的引导过程进行修改,包括:
发出与客户端OS的本机引导过程相关联的一列启动事件;以及
以客户端OS的视来看照常在客户端OS上初始化应用;以及使用经修改的引导过程在客户端OS中执行客户端应用。
7.根据权利要求6所述的机器可读介质,进一步包括指令,其可执行以使用第一服务来对引导过程进行修改,并且包括在主机OS与客户端OS之间建立通信链路。
8.根据权利要求7所述的机器可读介质,进一步包括可执行以经由所述链路传递系统管理命令的指令。
9.根据权利要求7所述的机器可读介质,进一步包括可执行以经由所述链路从客户端OS内与主机OS进行通信的指令。
10.一种用于引导过程修改的方法,包括:
在已启用的主机OS之上引导客户端OS;
对主机OS引导过程进行修改,包括:
使用第一服务将位于主机OS的根文件系统上的客户端映像挂载到用作用于客户端OS的工作文件系统根部的子目录上;以及
使用第一服务将主机OS的虚拟分区绑定-挂载到工作文件系统根部的子目录中;以及使用经修改的主机OS在客户端OS内执行客户端OS应用。
11.根据权利要求10所述的方法,进一步包括第二服务在客户端OS的初始化过程中模仿启动事件,所述模仿包括:
基于在初始化过程期间发出的事件来引导客户端应用;以及
以特定的次序模仿启动事件以使得客户端应用以本机的方式进行引导。
12.根据权利要求10所述的方法,进一步包括在同一内核上并发地运行主机OS和客户端OS。
13.根据权利要求10所述的方法,其中对主机OS引导过程进行修改进一步包括使用第一服务来在改变操作内执行第二服务。
14.根据权利要求10所述的方法,其中对主机OS引导过程进行修改进一步包括:
在主机OS上挂载映像中的分区和子卷;
重新绑定挂载由内核为主机OS创建的虚拟文件系统;以及
在客户端OS中调用第二服务。
15.根据权利要求14所述的方法,进一步包括经由重新绑定挂载来给予本机设备对客户端OS的自主访问

说明书全文

引导过程修改

背景技术

[0001] 操作系统(OS)引导过程可以是例如计算机(例如,计算设备、智能电话、游戏系统、智能手表平板电脑等)以及其它的计算机化系统的初始化的部分。在引导过程期间,可以将OS加载到计算机化系统的主存储器随机存取存储器等中。一旦加载了OS,用户就可以在OS上运行应用。附图说明
[0002] 图1图示了根据示例的在OS与跟引导过程修改相关联的经修改的OS之间的对比图;
[0003] 图2图示了根据示例的引导过程修改的图示;
[0004] 图3图示了根据示例的用于引导过程修改的方法的图示;
[0005] 图4图示了根据示例的包括数据库、子系统和数个引擎的系统的图示;以及[0006] 图5图示了根据示例的包括处理资源、存储器资源和数个模的示例计算设备的图示。

具体实施方式

[0007] 可能会频繁地(例如每6个月、一年一次等)引入OS的新版本,其中每个新版本支持新的硬件。进而,可能需要新的驱动器和映像以及其它事物用于新支持的硬件。这可能造成每次开发新的OS版本都使用越来越多的时间和资源。
[0008] 在引入新OS时使用的一些方法包括硬件虚拟化。因为可能需要模仿整个个人计算机(PC)环境,所以该方法可能要求大量的资源开销。该方法还可能要求在来宾OS上使用特殊的驱动器以支持所模仿的硬件环境。
[0009] 相比之下,本公开的示例通过利用或“劫持”由当前OS所支持的硬件而允许扩展硬件支持(例如,用于新的OS)。例如,如果当前OS在特定系统上引导并且支持经扩展的硬件,则新的OS将在经扩展的硬件上运行。
[0010] 换言之,本公开的示例利用已经启用的OS,包括其硬件调谐的内核和驱动器堆栈。如本文中使用的,已启用的主机OS是可操作和/或已激活的OS。例如,已启用的主机OS已被引导并且准备好供用户使用(例如,用来运行应用)。通过利用已启用的OS,通过将现有OS(例如,Linux环境)移植以供在另一预先存在的OS上使用,与未利用已启用OS的方法相比,周转时间可以更快。作为结果,在一些示例中,主机OS和客户端OS可以在同一内核上并发运行。
[0011] 图1图示了根据示例的在OS与跟引导过程修改相关联的经修改的OS之间的对比图。OS 102是经历未修改引导过程的OS。OS 102例如可以是Linux OS。OS 102包括在OS上运行的多个元件,包括图形用户接口(GUI)和应用104-1、图形资源提供器(例如X-server)106-1、服务108-1(例如主机服务)、驱动器110、内核112和硬件114。在一些示例中,应用
104-1、图形资源提供器106-1、服务108-1(例如主机服务)、驱动器110、内核112可以被实现为机器可读指令。OS 102(例如主机OS)上的引导过程可以包括引导主机内核、加载驱动器、挂载本地盘、初始化主机OS上的应用(例如服务)、启动图形资源提供器106-1以及将显示管理器附接到图形资源提供器106-1。图形资源提供器106-1可以是在本地机器(例如,由用户直接使用的计算机)上运行并且处置对本地机器上的图形卡、显示屏和输入设备(例如键盘鼠标等)的访问的程序。此时,引导过程可以结束,并且用户可以按照期望在主机OS上执行应用。
[0012] 经修改的OS 100包括在经修改的OS 100之上引导的客户端OS。经修改的OS 100例如可以是经修改的Linux OS。如本文中使用的,客户端OS在经修改的OS或主机OS之上引导或者客户端OS在经修改的OS或主机OS之上运行指的是客户端OS依赖于经修改的OS或主机OS来提供某些服务,如本文中进一步讨论的那样。换言之,如本文中使用的,客户端OS在经修改的OS或主机OS之上运行意指客户端OS正在使用由经修改的OS或主机OS所提供的服务。经修改的OS 100仍然运行GUI和应用104-1、图形资源提供器106-1、服务108-1、驱动器110、内核112和硬件114。然而,客户端GUI和应用104-2在经修改的OS的图形资源提供器106-1上运行,并且来宾服务108-2可以在经修改的OS上运行。在经修改的OS或“主机”OS上运行客户端元件(element)允许利用已经启用的操作系统,这例如可以增加周转时间并且减少其它资源的使用。
[0013] 经修改的OS 100上的引导过程可以以与OS 102的引导过程相似的方式开始。例如,引导过程可以包括引导主机内核、加载驱动器、挂载本地盘、初始化主机OS上的应用(例如服务)和/或启动图形资源提供器106-1。然而,此时,修改可以开始。例如,依照本公开可以在安装“劫持”程序包期间注入如在本文中关于图2进一步讨论的第一服务。
[0014] 图2图示了根据示例的引导过程修改的图示220。虽然在图2中以特定的次序示出了引导过程修改的元素,但是示例并不限于此。可以以不同的次序执行所述元素。
[0015] 在222处,在使用主机OS的系统上加载内核。例如,按下计算设备(或其它设备)上的电源按键。在224处,挂载盘和/或驱动器,并且在主机OS上启动主机服务(例如,配置在主机OS上的服务)和/或应用。
[0016] 在主机OS之上引导客户端OS始于236处。主机OS引导过程被修改,因此主机OS的引导步骤和服务中的一些替代地在客户端环境中运行。在示例中,部分238表示在主机OS之上引导的客户端OS。在236处调用在本文中称为伪引导-主机(fakeboot-host)的第一服务。在234处,伪引导-主机可以挂载分区和/或本地盘并启动由客户端OS使用的服务。伪引导-主机可以将位于主机OS的根文件系统上的客户端OS映像挂载到可以用作用于客户端OS的工作文件系统根部的子目录上。附加地或替换地,伪引导-主机可以将主机OS的虚拟分区(例如,/dev、/proc、/sys等)绑定-挂载到客户端OS的根文件系统的子目录中,以使得客户端OS能够自主访问诸如通用串行总线(USB)驱动、盘、显示硬件等之类的本机设备。如本文中使用的,与挂载命令相比,绑定-挂载是目录树的不同的视图。绑定挂载使用现有目录树并且复制不同的点下的目录树。绑定挂载中的目录和文件是与原物相同的。绑定挂载虚拟分区允许将虚拟分区从一个路径挂载到另一路径中(例如,允许访问本机设备)。
[0017] 在232处,伪引导-主机调用在本文中称为伪引导-客户端(fakeboot-client)的第二服务,其为周于从客户端OS向主机OS传递命令和信息的机制。在一些示例中,伪引导-客户端可以在改变操作内运行。例如,改变操作可以是改变用于当前过程和其子代的表面上的根目录的操作。一个示例是改变根目录(chroot)。在230处,在于主机OS之上引导客户端OS的同时,伪引导-客户端模拟主机OS(例如Linux OS)发起过程,并且当结束时,在227处将控制归还给主机OS。修改或“劫持”过程可以在此处终止,并且客户端OS可以接管引导过程的其余部分。
[0018] 在示例中,部分238可以被分成前述的两个服务,伪引导-主机和伪引导-客户端。在主机OS上,伪引导-主机在主机OS上挂载映像中的分区和子卷。伪引导-主机重新绑定挂载由内核为主机OS创建的虚拟文件系统,并且调用在客户端OS中的伪引导-客户端服务。在主机上,客户端OS的显示管理器可以附接到在主机OS上启动的图形资源提供器(例如,在图
1中图示的图形资源提供器106-1),并且可以建立链路以便将命令传递给底层的主机OS,其可以用于系统管理以及从客户端环境内与主机OS的通信。
[0019] 在客户端OS上,伪引导-客户端在客户端OS初始化过程(例如,本机引导过程)中模仿了成功的启动事件。例如,客户端应用基于在初始化期间发出的事件而起动,并且通过以特定的次序(例如,恰当的次序)模仿启动事件,客户端应用以本机的方式启动。例如,从客户端OS的视来看,客户端上的服务和/或应用可以照常开始初始化。在示例中,在客户端OS上,这可以是在正常引导期间发生的基本的Linux初始化过程。换言之,用户可能不知道已对主机OS进行了修改以便它们的客户端OS正确地运行。
[0020] 在228处,主机OS可以启动主机的图形资源提供器,可以将显示管理器附接到图形资源提供器,并且在226处,可以启动图形用户接口(GUI)。此时,引导过程可以完成,并且用户可以按照期望来执行应用。在一些示例中,可以在主机的图形资源提供器上启动客户端应用。例如,可以不使用客户端图形资源提供器。
[0021] 箭头223图示了其中未修改的引导过程可能采取的路径。例如,如果没有在主机OS之上引导客户端OS,则在于224处挂载分区和/或本地盘并启动服务之后,可以启动图形资源提供器和GUI。
[0022] 就客户端OS和主机OS而言,主机OS可以始终如一地运行而客户端OS可以在主机OS之上运行。客户端OS可以在主机OS的引导过程期间的某点处启动,并且可以串行地、并行地、作为一系列事件和/或与主机OS同时地运行。
[0023] 图3图示了根据示例的用于引导过程修改的方法340的图示。在342处,在已启用的主机OS之上引导客户端OS。在一些示例中,主机OS和客户端OS并发地运行在同一内核上。在344处,对主机OS引导过程进行修改。修改可以包括,在346处使用第一服务来将位于主机OS的根文件系统上的客户端映像挂载到用作用于客户端OS的工作文件系统根部的子目录上。
替换地或附加地,修改可以包括,在348处使用第一服务来将主机OS的虚拟分区绑定-挂载到工作文件系统根部的子目录中。
[0024] 在一些实施例中,修改主机OS引导过程可以进一步包括,使用第一服务来在改变操作内执行第二服务。方法340还可以包括第二服务在客户端OS的初始化过程中模仿启动事件。模仿可以包括基于在初始化过程期间发出的事件来引导客户端应用以及以特定的次序模仿启动事件,以使得客户端应用以本机的方式进行引导。
[0025] 在一些实施例中,修改主机OS还可以包括在主机OS上挂载映像中的分区和子卷,重新绑定挂载由内核为主机OS创建的虚拟文件系统,以及在客户端OS中调用第二服务。可以经由重新绑定挂载来对客户端OS给予本机设备对客户端OS的自主访问。
[0026] 在350处,方法340包括使用经修改的主机OS在客户端OS内执行客户端OS应用。例如,用户可以在不知道主机OS被修改成允许在客户端OS上运行应用的情况下在客户端OS上运行应用。在示例中,因为原始OS版本可以被修改成适应对硬件的改变,所以可能无法在原始OS版本上运行的经更新的硬件可能能够在根据本公开的原始OS的经修改的版本上运行。
[0027] 图4和图5分别图示了根据本公开的系统460和设备580的示例。亦即,图4图示了根据示例的包括数据库462、子系统464和数个引擎465、466、467的系统460的示例的图示。子系统464可以包括经由通信链路与数据库462通信的所述数个引擎。系统460可以包括比图示的额外添加的或更少的引擎来执行本文中描述的各种功能。系统460可以表示网络控制器(例如,如图6中参照的系统680等)的指令和/或硬件。
[0028] 所述数个引擎465、466、467可以包括用以执行包括本文中描述的那些的功能的硬件和编程的组合。指令可以包括存储在存储器资源(例如,计算机可读介质(CRM)、机器可读介质(MRM)等)中的指令(例如,软件固件等)以及硬接线程序(例如逻辑)。
[0029] 服务引擎465可以包括用以在已启用的主机OS之上调用客户端OS的第一服务的硬件和/或硬件和指令的组合。例如,第一服务(伪引导-主机)可以用于启动和改变元素和过程以允许修改主机OS。
[0030] 引导过程引擎466可以包括用以使用第一服务对主机OS的引导过程进行修改的硬件和/或硬件和指令的组合。为了这样做,引导过程引擎可以使用第一服务来模仿客户端OS的引导过程。应用引擎467可以包括用以基于主机OS的经修改的引导过程来在客户端OS内执行应用的硬件和/或硬件和指令的组合。例如,可以在用户不知道主机OS被修改成使应用执行变成可能的情况下执行应用。
[0031] 系统460还可以包括通信引擎(未画出),其可以包括用以经由第二服务促进在客户端OS与主机OS之间的通信的硬件和/或硬件和指令的组合。在至少一个实施例中,第一服务位于客户端OS上,并且第二服务位于主机OS上。在一些示例中,客户端OS可以是主机OS的更新版本。例如,主机OS可以是Linux OS,并且客户端OS可以是Linux OS的更新版本。
[0032] 图5图示了根据示例的包括处理资源582、存储器资源584和数个模块585、586、587的示例计算设备580的图示。计算设备580可以利用指令(例如软件和/或固件)、硬件和/或逻辑来执行包括本文中描述的那些的数个功能。计算设备580可以是被配置成共享信息的程序指令和硬件的组合。硬件例如可以包括处理资源582和/或存储器资源584(例如,CRM、MRM、数据库等)。
[0033] 如本文中使用的处理资源582可以包括能够执行由存储器资源584所存储的指令的处理器。处理资源582可以被实现在单个设备中或者可以跨多个设备分布。程序指令(例如机器可读指令(MRI))可以包括存储在存储器资源584上并且可由处理资源582执行以实现期望的功能(例如,存储器模式分类)的指令。
[0034] 存储器资源584可以与处理资源582通信。如本文中使用的存储器资源584可以包括能够存储可以由处理资源582执行的指令的存储器组件。这样的存储器资源584可以是非暂时性CRM或MRM。存储器资源584可以集成在单个设备中或者跨多个设备分布。进一步地,存储器资源584可以完全或部分地集成在与处理资源582相同的设备中,或者其可以是分离的但可由该设备和处理资源582访问。因此要指出的是,可以在参与者设备上、在服务器设备上、在服务器设备的集合和/或用户设备和服务器设备的组合上实现计算设备580。
[0035] 存储器资源584可以经由通信链路(例如路径)588与处理资源582通信。通信链路588对与处理资源582相关联的机器(例如计算设备)来说可以是本地的或远程的。本地通信链路588的示例可以包括机器(例如计算设备)内部的电子总线,其中存储器资源584是经由该电子总线与处理资源582通信的易失性、非易失性、固定和/或可移动存储介质之一。
[0036] 模块和/或多个模块585、586、587可以包括MRI,其当被处理资源582执行时可以实行包括本文中描述的那些的数个功能。所述数个模块585、586、587可以是其它模块的子模块。例如,服务模块I 585和服务模块II 586可以是子模块和/或是包含在同一计算设备内的。在另一示例中,所述数个模块585、586、587可以包括在分离且不同的位置处的单独的模块(例如MRM等)。
[0037] 所述数个模块585、586、587中的每个模块都可以包括指令,其当被处理资源582执行时可以起到如本文中描述的对应引擎的作用。例如,服务模块I 585可以包括指令,其当被处理资源582执行时可以起到服务引擎465的作用。相似地,服务模块II 586和应用模块587中的每个模块都可以包括指令,其当被处理资源582执行时可以起到引擎的作用。
[0038] 在示例中,服务模块I 585可以包括指令,其当被处理资源582执行时可以促使计算系统使用第一服务对主机OS的引导过程进行修改。使用第一服务的修改可以包括引导主机OS的图形资源提供器并将客户端OS的显示管理器附接到该图形资源提供器。
[0039] 使用第一服务的修改还可以包括在主机OS与客户端OS之间建立通信链路。可以经由所述链路传递系统管理命令,并且使用所述链路,可以发生从客户端OS内与主机OS的通信。
[0040] 服务模块II 586可以包括指令,其当被处理资源582执行时可以促使计算系统使用第二服务对主机OS的引导过程进行修改。使用第二服务的修改可以包括发出与客户端OS的本机引导过程相关联的一列启动事件以及以客户端OS的视角来看照常在客户端OS上初始化应用。
[0041] 应用模块587可以包括指令,其当被处理资源582执行时可以促使计算系统使用经修改的引导过程在客户端OS中执行客户端应用。
[0042] 在本公开的前述详细描述中,参照了形成本公开的一部分的附图,并且其中以例证的方式示出了可以如何实践本公开的示例。以充分的细节描述了这些示例以使得本领域技术人员能够实践本公开的示例,并且要理解的是,可以利用其它示例,并且可以做出过程、电气和/或结构的改变而不脱离本公开的范围。
[0043] 本文中的各图遵循编号惯例,其中第一位数对应于附图的图号并且其余位数标识附图中的元素或组件。可以添加、交换和/或去除本文中的各图中示出的元素以便提供本公开的数个附加的示例。另外,在各图中提供的元件的比例和相对标度旨在例证本公开的示例,而不应被理解为限制性意义。进一步地,如本文中使用的,“数个”元件和/或特征可以是指一个或多个的这样的元件和/或特征。
相关专利内容
标题 发布/更新时间 阅读量
OCT图像修改 2020-05-11 581
已修改流同步 2020-05-12 34
修改带式胶带 2020-05-13 179
定向声音修改 2020-05-13 713
修改带 2020-05-11 472
一种修改液 2020-05-12 886
修改液笔 2020-05-11 350
声学信号修改 2020-05-12 755
修改颜色色域 2020-05-13 448
错字修改笔 2020-05-12 675
高效检索全球专利

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

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

申请试用

分析报告

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

申请试用

QQ群二维码
意见反馈