Connect public, paid and private patent data with Google Patents Public Datasets

虚拟操作系统创建方法

Info

Publication number
CN101645019A
CN101645019A CN 200810117733 CN200810117733A CN101645019A CN 101645019 A CN101645019 A CN 101645019A CN 200810117733 CN200810117733 CN 200810117733 CN 200810117733 A CN200810117733 A CN 200810117733A CN 101645019 A CN101645019 A CN 101645019A
Authority
CN
Grant status
Application
Patent type
Prior art keywords
operating
system
virtual
hanger
information
Prior art date
Application number
CN 200810117733
Other languages
English (en)
Inventor
谢威领
Original Assignee
优诺威讯国际有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for programme control, e.g. control unit
    • G06F9/06Arrangements for programme control, e.g. control unit using stored programme, i.e. using internal store of processing equipment to receive and retain programme
    • G06F9/44Arrangements for executing specific programmes
    • G06F9/445Programme loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for programme control, e.g. control unit
    • G06F9/06Arrangements for programme control, e.g. control unit using stored programme, i.e. using internal store of processing equipment to receive and retain programme
    • G06F9/44Arrangements for executing specific programmes
    • G06F9/455Emulation; Software simulation, i.e. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45537Provision of facilities of other operating environments, e.g. WINE

Abstract

本发明提供一种虚拟操作系统创建方法。该方法包括获取载入虚拟操作系统的指令消息,指令消息中包括所要载入的虚拟操作系统对应的应用程序的标识信息;在虚拟环境数据库中,获取执行标识信息对应的应用程序所需的虚拟操作系统挂件的配置信息;根据配置信息,将执行应用程序所需的虚拟操作系统挂件与虚拟操作系统核心部分建立链接,并载入使用者模式内存空间中。本发明以资源为单位形成虚拟操作系统挂件,实现资源共享,将独立功能的挂件独立出来,需要时进行组合调用灵活有弹性,便于后续虚拟操作系统的动态更新及升级,让每个应用程序都有自己专属的虚拟操作系统,而且可以根据要求动态地调整虚拟操作系统的能力,实现个性化修改。

Description

技术领域

本发明涉及计算机技术领域,尤其涉及一种虚拟操作系统创建方法。背景技术

随着计算机技术的不断发展,计算机的功能越来越强大,已经涵盖了人们生活的方方面面,包括了学习、娱乐、办公以及购物等。虽然移动存储设备或存储服务器给用户带来的方便,使用户能够在不同的计算机上工作,但由于不同计算机的工作环境以及安装的应用软件大相径庭,因此给用户带来

极大的困扰,虚拟操作系统(Virtual Operating System;简称:VOS)可以解决这样的困扰。虚拟操作系统是基于虛拟机运行的主机操作系统创建了 一个虛拟层,用来虛拟主机的操作系统。虛拟操作系统运行于操作系统之上,应用程序之下,虛拟操作系统提供用户不同于一般的操作环境,并将上面执行的应用程序进行修改,以符合当时的需求。现有技术中载入内存空间的虚拟操作系统是一个整体,对于虛拟环境中的所有应用程序均加载相同的虚拟操作系统,因此不能根据应用程序的实际需要加载相适应的虛拟操作系统,无法动态调整所加载的虚拟操作系统,适应能力差。

发明内容

本发明提供一种虚拟操作系统创建方法,用以解决现有技术中载入的虛拟操作系统适应能力差的缺陷,提高虛拟操作系统的适应能力。本发明提供一种虚拟操作系统创建方法,包括:

获取载入虛拟操作系统的指令消息,所述指令消息中包括所要载入的虚拟操作系统对应的应用程序的标识信息;在虚拟环境数据库中,获取执行所述标识信息对应的应用程序所需的虚

拟操作系统挂件的配置信息;

根据所述配置信息,将执行所述应用程序所需的虚拟操作系统桂件与虛拟操作系统核心部分建立链接,并载入使用者模式内存空间中。

本发明提供的虚拟操作系统创建方法,以资源为单位形成虚拟操作系统挂件,实现资源共享,由于并不是每个应用程序都有相同的资源需求,将独立功能的资源挂件独立出来,需要时进行组合调用,灵活有弹性;由于虚拟操作系统以资源挂件的形式进行调用资源,修改应用程序,因此便于后续虚拟操作系统的动态更新及升级;让每个应用程序都有自己专属的虚拟操作系统,而且可以根据要求动态地调整虚拟操作系统的能力,实现个性化修改。

附图说明

图1为本发明虚拟环境组成示意图;图2为本发明虚拟操作系统实现示意图;图3为本发明虚拟搡作系统创建方法流程图。

具体实施方式

下面结合附图和具体实施例进一步说明本发明实施例的技术方案。虛拟操作系统的实现给人们的工作生活带来了极大的方便。虚拟操作系统能够模拟出用户习惯的操作界面,使用户能够在异地使用到以自己习惯的操作方式和用户界面进行配置的操作系统;能够携带软件,在异地主机没有安装软件的环境下,用户可以使用虚拟搡作系统虛拟出所需的软件进行相应的编辑;可以存储在移动存储设备或存储服务器中,使用户不需要携带沉重的笔记本电脑即可在不同的地方使用同 一个熟悉的系统环境。虛拟操作系统不是真正的操作系统,而是一个特殊程序,负责拦截应用程序的行为,并根据需求,改变应用程序的行为。虛拟操作系统在应用程序和操作系统之间扮演中介的角色。图1为本发明虚拟环境组成示意图,如图1所示,所创建的虚拟环境(VE)连接一虛拟环境服务器(VES) , VES负责该VE的综合管理;VE为使用者提供用户交互界面(UI),使用者在UI中进行操作如同在实际的操作系统中进行操作。在VE中为使用者提供多个应用程序(APP),每个APP被执行时均会生成专属于该APP的虛拟操作系统,虚拟操作系统负责修改APP调用操作系统的接口,使其转向调用虚拟操作系统本身,完成APP的执行。VE还连接有一个虚拟环境数据库(DB ),在DB中存储有执行该VE中的APP所要涉及的虛拟l喿作系统配置信息。

本发明提供的虚拟操作系统创建方法,将载入到使用者内存空间的虚拟操作系统分成两部分, 一部分是虛拟梯:作系统核心部分,另一部分是虚拟才喿作系统挂件,其中虛拟操作系统核心部分是执行所有APP均要涉及到的程序部分,属于各个APP的共性部分需维持不变动,其主要功能为接收外部给予虛拟操作系统的指令,并进行相对应的处理;虚拟操作系统挂件(以下简称:挂件)是执行不同的APP所可能涉及到的、为实现某一个相对独立的功能而单独划分出来的一部分程序,当执行某一APP时若需要完成某一功能时,可以将能够实现该功能的挂件连接到虚拟操作系统核心部分上,APP在执行时调用该挂件实现对应功能,满足执行该APP的个性化需求。上述的虛拟操作系统核心部分和虚拟操作系统挂件均可以动态链接库文件的形式存在,按照需求将文件程序载入内存以备调用。图2为本发明虚拟操作系统实现示意图,如图2所示,为执行某一应用程序而载入到使用者模式内存空间中的虚拟操作系统分为两部分,虛拟操作系统核心部分与应用程序链接,在虚拟操作系统核心部分下挂接有多个虚拟操作系统挂件,末端的虚拟操作系统挂件再与底层的操作系统链接。以下详细介绍虛拟操作系统的创建方法,图3为本发明虛拟操作系统创建方法流程图,如图3所示,该方法包括如下步骤:

步骤100,获取载入虚拟操作系统的指令消息,所述指令消息中 括所要载入的虛拟操作系统对应的应用程序的标识信息;在虛拟环境中执行一个应用程序时,虛拟环境服务器可以根据执行所述应用程序的指令消息,在所述使用者模式内存空间中为所述应用程序分配内存空间,并将所述应用程序的执行代码栽入所分配的使用者模式内存空间中。具体地,虛拟环境服务器在接收到在虚拟环境中执行一应用程序的操作命令后,将会在使用者模式内存空间中为该应用程序分配一块内存空间,用于存放执行该应用程序的执行代码,虛拟环境服务器所分配的内存空间对于应用

程序而言是独占的;在划分完内存空间后,虚拟环境服务器将执行应用程序所用的执行代码即执行程序载入该内存空间中。在载入应用程序所用的执行代码之后,要载入虛拟操作系统,虚拟环境服务器在通过虚拟环境中例如双击应用程序等操作获取载入虛拟操作系统的指令消息,得知要载入与所要执行的应用程序所对应的虚拟操作系统,虛拟环境服务器可通过指令消息中包括的标识信息获知所要执行哪个应用程序。

步骤101,在虚拟环境数据库中,获取执行所述标识信息对应的应用程序所需的虚拟梯:作系统挂件的配置信息;

虚拟环境服务器查找虛拟环境中的虚拟环境数据库,从中查找与载入虚拟操作系统的指令消息中包括的标识信息所对应的应用程序的配置信息,通过该配置信息获知执行该应用程序需要在虛拟操作系统核心部分下挂接哪些虛拟操作系统挂件,并将虚拟操作系统核心部分和虚拟操作系统挂件组成虚拟操作系统载入使用者内存空间。

步骤102,才艮据配置信息,将执行所述应用程序所需的虚拟操作系统挂件与虚拟操作系统核心部分建立链接,并载入使用者模式内存空间中。

在获知要加载哪些挂件后,还要进一步在从虛拟环境数据库中的存储的配置信息中获知所需加载的挂件之间的链接关系,和与虛拟操作系统核心部分的链接方式,然后将各个挂件按照配置信息中所描述的链接关系钩挂在虛拟操作系统核心部分下层,组成虛拟操作系统。根据配置信息,将执行应用程序所需的虚拟操作系统挂件与虚拟操作系统核心部分建立链接,可以是根据配置信息,将具有同类功能的、执行所述应用程序所需的虛拟操作系统挂

件组成挂件串;将挂件串与虛拟操作系统核心部分建立链^t妻;将完成链^^妄的虚拟操作系统核心部分和挂件串载入使用者模式内存空间中。在上述组成挂件串的过程中,还要根据配置信息,将具有同类功能的、执行所述应用程序所需的虚拟操作系统挂件,按照设定的排列次序组成挂件串。

一个虚拟操作系统核心可以有多个挂件串,挂件串的组合是以挂件的功能为依据将具有同类功能的挂件划分在同 一挂件串中,挂件的功能例如网络功能类、档案系统功能类和字型功能类等,每个挂件串都属于同一类功能,具体参见图2,图中具有同类功能的Al、 A2和A3组成档案系统功能类挂件串A,具有同类功能的Bl和B2组成网络功能类挂件B,具有同类功能的C1和C2组成字型功能类挂件串C等等;而且各个挂件串之间无次序性,也就是说虚拟操作系统要调用挂件串A时,无需先通过挂件串B或挂件串C,同理当虛拟操作系统要调用挂件串B时,也无需先通过挂件串A或挂件串C等,每个挂件串均是独立地与虛拟操作系统核心部分链接的。进一步地,挂件串内的各个挂件是有先后次序的,挂件次序也会影响系统运作的方式。第一次载入虚拟操作系统时,从虚拟环境数据库取得要加载的挂件有哪些,以及它们的次序,将虛拟操作系统核心部分和这些挂件串接起来,载入使用者模式内存空间中。

应用程序运行过程中,虚拟操作系统核心部分可以接受来自虚拟环境服务器的指令消息,并对指令消息进行解析,得知关于虚拟操作系统挂件的更改需求即需要如何动态地改变挂件,包括设定挂件巻数、加载挂件、卸载挂件和挂件次序调动等。虚拟操作系统核心部分根据更改挂件的指令消息,动态更改与所述虚拟操作系统核心部分虚链接的操作系统挂件:若需求为设定挂件叁数时,虛拟操作系统会对挂件做正确的设定以改变挂件行为;若需求为加载挂件时,虛拟操作系统核心部分根据加载挂件的指令消息,在对应的挂件串中、对应的位置上动态挂接所要加载的虛拟操作系统挂件;若需求为卸载挂件时,虚拟才喿作系统核心部分根据卸载挂件的指令消息,在对应的挂

件串中动态删除所要卸载的虚拟操作系统挂件;若需求为调动桂件次序时,虚拟操作系统核心部分#4居调动挂件次序的指令消息,在对应的挂件串中,按照调动挂件次序的要求动态调动虚拟操作系统挂件的挂接次序。

以下以加载挂件为例对动态更改载入挂件进行详细描述。在虚拟操作系统核心部分中有一指令接收器,对指令进行侦听、解析和执行。虚拟操作系统对指令进行侦听,并接收发给虚拟操作系统的指令;对接收到的指令进行解析,得知修改需求,并根据修改需求获得所需资源挂件;调用资源挂件,实现对APP的修改。例如在运行"Word"软件时,若发现异常需要断开"Word,,与网络的连接时,虚拟环境向虚拟操作系统发送网络断开指令;虚拟操作系统侦听过程中接收该指令,并对其进行解析;得知需要断开运行的"Word"与网络的连接,查找并调用网络连接挂件,通过该资源挂件修改"Word"与网络的连接状态即断开网络连接。整个过程并不影响虚拟环境内其它应用程序的运行。

本发明提供的虚拟操作系统创建方法,以资源为单位形成虛拟操作系统挂件,实现资源共享,由于并不是每个应用程序都有相同的资源需求,将独立功能的资源挂件独立出来,需要时进行调用,灵活有弹性;由于虛拟操作系统以资源挂件的形式进行调用资源,修改应用程序,因此{更于后续虛拟操作系统的动态更新及升级;让每个应用程序都有自己专属的虚拟操作系统,而且可以根据要求动态地调整虚拟操作系统的能力,实现个性化修改。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技

术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (6)

1、一种虚拟操作系统创建方法,其特征在于包括: 获取载入虚拟操作系统的指令消息,所述指令消息中包括所要载入的虚拟操作系统对应的应用程序的标识信息; 在虚拟环境数据库中,获取执行所述标识信息对应的应用程序所需的虚拟操作系统挂件的配置信息; 根据所述配置信息,将执行所述应用程序所需的虚拟操作系统挂件与虚拟操作系统核心部分建立链接,并载入使用者模式内存空间中。
2、 根据权利要求1所述的虛拟操作系统创建方法,其特征在于所述根据 所述配置信息,将执行所述应用程序所需的虛拟操作系统挂件与虛拟操作系 统核心部分建立链接,并载入使用者模式内存空间中包括:根据所述配置信息,将具有同类功能的、执行所述应用程序所需的虚拟操作系统挂件组成挂件串;将所述挂件串与所述虚拟操作系统核心部分建立链^t妄;将完成链接的所述虚拟操作系统核心部分和所述挂件串载入所述使用者模式内存空间中。
3、 根据权利要求2所述的虚拟操作系统创建方法,其特征在于所述根据 所述配置信息,将具有同类功能的、执行所述应用程序所需的虛拟操作系统 挂件组成挂件串包括:根据所述配置信息,将具有同类功能的、执行所述应用程序所需的虛拟 操作系统挂件,按照设定的排列次序組成挂件串。
4、 根据权利要求1或2或3所述的虚拟操作系统创建方法,其特征在于 还包括:所述虛拟操作系统核心部分根据更改挂件的指令消息,动态更改与 所述虛拟操作系统核心部分链接的虚拟操作系统挂件。
5、 根据权利要求4所述的虚拟操作系统创建方法,其特征在于所述虚拟 操作系统核心部分根据更改挂件的指令消息,动态更改与所述虚拟操作系统核心部分链接的虚拟操作系统挂件包括:所述虚拟操作系统核心部分根据设定挂件参数的指令消息,修改对应的 挂件串中挂接的虚拟操作系统挂件的参数;或所述虚拟操作系统核心部分根据加载桂件的指令消息,在对应的挂件串 中、对应的位置上动态挂接所要加载的虚拟操作系统挂件;或所述虛拟操作系统核心部分根据卸载挂件的指令消息,在对应的挂件串 中动态删除所要卸载的虛拟操作系统挂件;或所述虚拟操作系统核心部分根据调动桂件次序的指令消息,在对应的挂 件串中,按照调动挂件次序的要求动态调动虛拟操作系统挂件的挂接次序。
6、根据权利要求5所述的虛拟操作系统创建方法,其特征在于所述虚拟 操作系统核心部分根据更改挂件的指令消息之前包括:所述虚拟操作系统核心部分接收指令消息,并对所述指令消息进行解析, 得知关于虚拟操作系统挂件的更改需求。
CN 200810117733 2008-08-04 2008-08-04 虚拟操作系统创建方法 CN101645019A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200810117733 CN101645019A (zh) 2008-08-04 2008-08-04 虚拟操作系统创建方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN 200810117733 CN101645019A (zh) 2008-08-04 2008-08-04 虚拟操作系统创建方法
US12267997 US20100031256A1 (en) 2008-08-04 2008-11-10 Method for establishing virtual operating system

Publications (1)

Publication Number Publication Date
CN101645019A true true CN101645019A (zh) 2010-02-10

Family

ID=41609667

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200810117733 CN101645019A (zh) 2008-08-04 2008-08-04 虚拟操作系统创建方法

Country Status (2)

Country Link
US (1) US20100031256A1 (zh)
CN (1) CN101645019A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102880499A (zh) * 2012-10-10 2013-01-16 京信通信系统(中国)有限公司 Wlan无线接入控制方法及系统

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8516455B2 (en) * 2011-06-14 2013-08-20 International Business Machines Corporation Dynamic loading of kernel extensions
US8910138B2 (en) * 2012-05-23 2014-12-09 Oracle International Corporation Hot pluggable extensions for access management system

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2102883A1 (en) * 1993-02-26 1994-08-27 James W. Arendt System and method for lazy loading of shared libraries
US6842856B2 (en) * 2001-05-11 2005-01-11 Wind River Systems, Inc. System and method for dynamic management of a startup sequence
US7254814B1 (en) * 2001-09-28 2007-08-07 Emc Corporation Methods and apparatus for managing plug-in services
US7673308B2 (en) * 2002-11-18 2010-03-02 Symantec Corporation Virtual OS computing environment
GB0413060D0 (en) * 2004-06-09 2004-07-14 Symbian Software Ltd A method for selecting plug-in code modules in a computing device
US7823152B2 (en) * 2006-06-06 2010-10-26 International Business Machines Corporation System and method for collaborative hosting of applications, virtual machines, and data objects
US8161477B2 (en) * 2008-02-21 2012-04-17 Oracle International Corporation Pluggable extensions to virtual machine monitors
US8522237B2 (en) * 2008-04-09 2013-08-27 The Boeing Company Virtualizing embedded systems
US8543998B2 (en) * 2008-05-30 2013-09-24 Oracle International Corporation System and method for building virtual appliances using a repository metadata server and a dependency resolution service

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102880499A (zh) * 2012-10-10 2013-01-16 京信通信系统(中国)有限公司 Wlan无线接入控制方法及系统

Also Published As

Publication number Publication date Type
US20100031256A1 (en) 2010-02-04 application

Similar Documents

Publication Publication Date Title
US7543000B2 (en) Method and system combining state replication and operational-replay synchronization
US6038590A (en) Object-oriented system, method and article of manufacture for a client-server state machine in an interprise computing framework system
US8006224B2 (en) System and method for unified visualization of two-tiered applications
US7493594B2 (en) System and method for designing component based applications
Grimm et al. System support for pervasive applications
US20030200254A1 (en) Methods and techniques for delivering rich java applications over thin-wire connections with high performance and scalability
US6272556B1 (en) Object-oriented system, method and article of manufacture for migrating a client-server application (#5)
US20070033594A1 (en) Apparatus, system, and method for object clone event notification
US6658644B1 (en) Services-based architecture for a telecommunications enterprise
Morin et al. An aspect-oriented and model-driven approach for managing dynamic variability
US20070214111A1 (en) System and method for generating code for an integrated data system
US20030200533A1 (en) Method and apparatus for creating software objects
US5848246A (en) Object-oriented system, method and article of manufacture for a client-server session manager in an interprise computing framework system
US6434598B1 (en) Object-oriented system, method and article of manufacture for a client-server graphical user interface (#9) framework in an interprise computing framework system
US6424991B1 (en) Object-oriented system, method and article of manufacture for a client-server communication framework
US20070283324A1 (en) System and method for creating programs that comprise several execution layers
US20070162892A1 (en) Template-based configuration architecture
US20120296959A1 (en) Shell Integration for an Application Executing Remotely on a Server
US6779172B1 (en) Bean scripting framework
US20020184610A1 (en) System and method for building multi-modal and multi-channel applications
US20050193370A1 (en) System and method for interactive wireless applications with conditional UI controls and screen navigation
US20070002689A1 (en) System and method of data source detection
US20070074191A1 (en) Software executables having virtual hardware, operating systems, and networks
Grimm et al. Programming for pervasive computing environments
US20040143823A1 (en) System and method for network-based computing

Legal Events

Date Code Title Description
C06 Publication
C10 Request of examination as to substance
C20 Patent right deemed to be abandoned