CN105117272B - 一种操作***管理器、虚拟机和操作***间切换方法 - Google Patents

一种操作***管理器、虚拟机和操作***间切换方法 Download PDF

Info

Publication number
CN105117272B
CN105117272B CN201510519216.3A CN201510519216A CN105117272B CN 105117272 B CN105117272 B CN 105117272B CN 201510519216 A CN201510519216 A CN 201510519216A CN 105117272 B CN105117272 B CN 105117272B
Authority
CN
China
Prior art keywords
operating system
mirror image
system mirror
unit
virtual
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN201510519216.3A
Other languages
English (en)
Other versions
CN105117272A (zh
Inventor
郝鹏
于治楼
郑亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Cloud Information Technology Co Ltd
Original Assignee
Inspur Group Co Ltd
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
Application filed by Inspur Group Co Ltd filed Critical Inspur Group Co Ltd
Priority to CN201510519216.3A priority Critical patent/CN105117272B/zh
Publication of CN105117272A publication Critical patent/CN105117272A/zh
Application granted granted Critical
Publication of CN105117272B publication Critical patent/CN105117272B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明提供一种操作***管理器、虚拟机和操作***间切换方法,该操作***管理器,包括:接口单元,用于监听目标热切换命令,并将该命令传递给内核服务单元;内核服务单元,用于接收目标热切换命令,向虚拟硬件服务单元发送目标热切换命令,并接收虚拟硬件驱动信息,根据虚拟硬件驱动信息,记录并保存外设的当前运行的操作***镜像的配置状态和数据;虚拟硬件服务单元,用于接收目标热切换命令,并将该目标热切换命令发送给外设的虚拟BIOS,接收虚拟BIOS提供的外设的虚拟硬件驱动信息,并将该虚拟硬件驱动信息发送给内核服务单元;镜像加载单元,用于加载外设的第二操作***镜像,实现了操作***镜像间的快速切换。

Description

一种操作***管理器、虚拟机和操作***间切换方法
技术领域
本发明涉及计算机技术领域,特别涉及一种操作***管理器、虚拟机和操作***间切换方法。
背景技术
虚拟化是使计算机的各种实体资源如服务器、网络、内存及存储等,通过镜像的方式呈现出来,打破了实体结构间的不可切割的障碍,即这些资源的虚拟部分是不受现有资源的架设、地域或物理组态所限制,使用户可以比原本的组态更好的方式来应用这些资源。
随着云计算技术的不断推广,虚拟化应用越发显的重要,目前,主要通过单个虚拟机承载单个操作***镜像,当某一项任务需要两个甚至多个操作***镜像完成时,则需要在一个操作***镜像完成当前任务后,关闭该操作***镜像所在的虚拟机,然后开启另一台虚拟机才能加载并切换到该另一台虚拟机中的另一个操作***镜像继续任务,在这一过程中,操作***镜像间的切换过程主要通过关闭和开启虚拟机实现,而无法实现操作***镜像间的快速切换。
发明内容
本发明提供一种操作***管理器、虚拟机和操作***间切换方法,实现了操作***镜像间的快速切换。
一种操作***管理器,包括:接口单元、内核服务单元、虚拟硬件服务单元和镜像加载单元,其中,
所述接口单元,用于监听正在运行的外设的第一操作***镜像发出的目标热切换命令,并将该命令传递给所述内核服务单元;
所述内核服务单元,用于设置外设的所有操作***镜像对应的热切换命令,接收所述接口单元发送的所述目标热切换命令,向所述虚拟硬件服务单元发送所述目标热切换命令,并接收所述虚拟硬件服务单元发送的所述虚拟硬件驱动信息,根据所述虚拟硬件驱动信息,记录并保存外设的所述第一操作***镜像的配置状态和数据,并触发所述镜像加载单元;
所述虚拟硬件服务单元,用于接收所述内核服务单元发送的所述目标热切换命令,并将该目标热切换命令发送给外设的虚拟BIOS,接收外设的所述虚拟BIOS提供的外设的虚拟硬件驱动信息,并将该虚拟硬件驱动信息发送给所述内核服务单元;
所述镜像加载单元,在接收到所述内核服务单元触发时,用于加载外设的第二操作***镜像,以完成从外设的所述第一操作***镜像到外设的所述第二操作***镜像的切换。
优选地,所述内核服务单元,包括:可视化界面子单元、迁移服务子单元、数据库子单元和备份子单元中的任意一个或多个,其中,
所述可视化界面子单元,用于设置外设的所有操作***镜像对应的热切换命令,接收所述接口单元发送的所述目标热切换命令,并向所述虚拟硬件服务单元发送所述目标热切换命令;
所述迁移服务子单元,用于接收所述虚拟硬件服务单元发送的所述虚拟硬件驱动信息,根据所述虚拟硬件驱动信息,记录外设的所述第一操作***镜像的配置状态和数据,形成XML文件和/或JSON文件,并将所述XML文件和/或JSON文件发送给所述数据库子单元;
所述数据库子单元,用于存储所述XML文件和/或JSON文件,并对所述XML文件和/或JSON文件进行解析、封装,形成封装文件;
所述备份子单元,用于获取并备份所述数据库子单元中的所述封装文件。
优选地,所述镜像加载单元,用于检测外设的第二操作***镜像是否为 第一次加载,如果是,则为该外设的第二操作***镜像设置存储空间和入口指针,通过所述入口指针,将所述外设的第二操作***镜像加载到所述存储空间中;否则,直接加载所述外设的第二操作***镜像。
优选地,所述镜像加载单元,进一步用于:检测所有可用操作***镜像文件;
所述可视化界面子单元,进一步用于:建立操作***镜像存储链表,为所述所有可用操作***镜像文件生成对应的特征信息,并将所述特征信息存储在所述操作***镜像存储链表中,通过可视化界面展示所述操作***镜像存储链表中的所有特征信息,在接收到所述接口单元发送的所述目标热切换命令时,选中所述操作***镜像存储链表中的目标特征信息。
优选地,所述数据库子单元,进一步用于向完成加载的所述外设的第二操作***镜像提供所需的封装文件。
优选地,该操作***管理器采用UEFI***加载器框架。
优选地,该操作***管理器应用于虚拟机中。
一种虚拟机,包括:上述任一种操作***管理器、至少两个操作***镜像、虚拟BIOS和虚拟硬件,其中,
所述至少两个操作***镜像中,每一个操作***镜像,在运行时,用于接收目标热切换命令,并发送所述目标热切换命令给所述操作***管理器;
所述虚拟BIOS,用于接收所述操作***管理器发送的所述目标热切换命令,加载所述虚拟硬件,获取所述虚拟硬件的信息,并将所述虚拟硬件的信息提供给所述操作***管理器;
所述虚拟硬件,用于支撑所述至少两个操作***镜像的运行。
优选地,在所述虚拟机启动后,通过所述虚拟BIOS加载所述操作***启动管理器;通过外设的键盘触发所述操作***启动管理器选定需要加载的第一操作***镜像,启动所述第一虚拟操作***,并将虚拟机的控制权交给所述第一虚拟操作***。
优选地,所述至少两个操作***镜像中,每一个操作***镜像,在运行 时接收目标热切换命令后,释放虚拟机的控制权,并将所述虚拟机的控制权转交给所述操作***管理器。
优选地,所述虚拟BIOS采用UEFI技术框架。
优选地,所述操作***管理器采用UEFI***加载器框架。
一种操作***间切换方法,将上述任一种操作***管理器设置于虚拟机中,在所述虚拟机的存储空间中存储至少两个操作***镜像文件,并设置所有操作***镜像对应的热切换命令,在所述虚拟机启动后,运行选定的第一操作***镜像,还包括:
确定正在运行的所述第一操作***镜像发出的目标热切换命令;
将该目标热切换命令发送给虚拟BIOS;
接收所述虚拟BIOS提供的虚拟硬件驱动信息;
根据所述虚拟硬件驱动信息,记录并保存所述第一操作***镜像的配置状态和数据;
根据所述目标热切换命令,加载第二操作***镜像,以完成从所述第一操作***镜像到所述第二操作***镜像的切换。
优选地,所述记录并保存所述第一操作***镜像的配置状态和数据,包括:为所述第一操作***镜像的配置状态和数据形成XML文件和/或JSON文件,并对所述XML文件和/或JSON文件进行解析、封装,形成封装文件,并对该封装文件进行保存,并备份所述封装文件;
在所述加载第二操作***镜像之后,进一步包括:向完成加载的所述外设的第二操作***镜像提供所需的封装文件。
优选地,所述加载第二操作***镜像,包括:检测所述第二操作***镜像是否为第一次加载,如果是,则为该第二操作***镜像设置存储空间和入口指针,通过所述入口指针,将所述第二操作***镜像加载到所述存储空间中;否则,直接加载所述第二操作***镜像。
优选地,在所述设置所有操作***镜像对应的热切换命令之后,在所述运行选定的第一操作***镜像之前,进一步包括:
建立操作***镜像存储链表;
检测所有可用操作***镜像文件,并为所述所有可用操作***镜像文件生成对应的特征信息;
将所述特征信息存储在所述操作***镜像存储链表,并建立所述特征信息与热切换命令间的对应关系;
所述运行选定的第一操作***镜像,包括:通过可视化界面展示所述操作***镜像存储链表中的所有特征信息,在接收到目标热切换命令时,根据所述特征信息与热切换命令间的对应关系,选定所述第一操作***镜像对应的特征信息,运行选定的第一操作***镜像。
本发明实施例提供了一种操作***管理器、虚拟机和操作***间切换方法,该操作***管理器,包括:接口单元、内核服务单元、虚拟硬件服务单元和镜像加载单元,其中,所述接口单元,用于监听正在运行的外设的第一操作***镜像发出的目标热切换命令,并将该命令传递给内核服务单元;所述内核服务单元,用于接收到所述接口单元发送的所述目标热切换命令,向所述虚拟硬件服务单元发送所述目标热切换命令,并接收所述虚拟硬件服务单元发送的所述虚拟硬件驱动信息,根据所述虚拟硬件驱动信息,记录并保存外设的所述第一操作***镜像的配置状态和数据,并触发所述镜像加载单元;所述虚拟硬件服务单元,用于接收所述内核服务单元发送的目标热切换命令,并将该目标热切换命令发送给外设的虚拟BIOS,接收外设的所述虚拟BIOS提供的外设的虚拟硬件驱动信息,并将该虚拟硬件驱动信息发送给内核服务单元;所述镜像加载单元,在接收到所述内核服务单元触发时,用于加载外设的第二操作***镜像,以完成从外设的所述第一操作***镜像到外设的所述第二操作***镜像的切换,因此,该操作***管理器实现了操作***镜像间的快速切换。
附图说明
图1为本发明实施例提供的一种操作***管理器的结构示意图;
图2为本发明另一实施例提供的一种操作***管理器的结构示意图;
图3为本发明实施例提供的一种虚拟机的结构示意图;
图4为本发明实施例提供的一种操作***间切换方法的流程图;
图5为本发明另一实施例提供的一种操作***间切换方法的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供一种操作***管理器,该操作***管理器,包括:接口单元101、内核服务单元102、虚拟硬件服务单元103和镜像加载单元104,其中,
接口单元101,用于监听正在运行的外设的第一操作***镜像发出的目标热切换命令,并将该命令传递给内核服务单元102;
内核服务单元102,用于设置外设的所有操作***镜像对应的热切换命令,接收接口单元101发送的所述目标热切换命令,向虚拟硬件服务单元103发送所述目标热切换命令,并接收虚拟硬件服务单元103发送的所述虚拟硬件驱动信息,根据所述虚拟硬件驱动信息,记录并保存外设的所述第一操作***镜像的配置状态和数据,并触发镜像加载单元104;
虚拟硬件服务单元103,用于接收内核服务单元102发送的目标热切换命令,并将该目标热切换命令发送给外设的虚拟BIOS,接收外设的所述虚拟BIOS提供的外设的虚拟硬件驱动信息,并将该虚拟硬件驱动信息发送给内核服务单元102;
镜像加载单元104,在接收到内核服务单元102触发时,用于加载外设的第二操作***镜像,以完成从外设的所述第一操作***镜像到外设的所述第二操作***镜像的切换。
如图2所示,在本发明另一实施例中,操作***管理器中,内核服务单元102,包括:可视化界面子单元201、迁移服务子单元202、数据库子单元203和备份子单元204中的任意一个或多个,其中,
可视化界面子单元201,用于设置外设的所有操作***镜像对应的热切换命令,接收接口单元101发送的目标热切换命令,并向虚拟硬件服务单元103发送所述目标热切换命令;
例如:在操作***管理器外设有2个操作***镜像,分别为操作***镜像1和操作***镜像2,在该可视化界面子单元中,为操作***镜像1设置当用户同时按下组合键ctrl+A则选中操作***镜像1;并为操作***镜像2设置当用户同时按下组合键ctrl+B则选中操作***镜像2。
那么,在操作***镜像1运行时,要切换到外设的操作***镜像2,该可视化界面子单元从接口单元接收到用户通过键盘输入的目标热切换命令即组合键ctrl+B。
迁移服务子单元202,用于接收虚拟硬件服务单元103发送的虚拟硬件驱动信息,根据虚拟硬件驱动信息,记录外设的第一操作***镜像的配置状态和数据,形成XML文件和/或JSON文件,并将所述XML文件和/或JSON文件发送给数据库子单元203;
例如:在CPU、键盘、存储等资源在正常运转之后,虚拟硬件服务单元发一个信号通知迁移服务子单元,告知运转状态。在都运转正常时,迁移服务子单元可以记录正在运行的操作***镜像1的一些数据如操作***镜像1正在执行的任务1的所有数据,并根据操作***镜像的需要可以将该任务1的所有数据转化为XML文件或者转化为JSON文件。
数据库子单元203,用于存储所述XML文件和/或JSON文件,并对XML文件和/或JSON文件进行解析、封装,形成封装文件,并触发镜像加载单元104;
该数据库子单元包含有解析单元,可以解析XML文件和JSON文件,然后对解析后的文件进行封装,以供不同单元或模块的调用,例如:供备份 子单元调用进行备份;供外设的操作***镜像调用。
备份子单元204,用于获取并备份数据库子单元203中的封装文件。
可以根据只备份最关键的文件、对切换后的操作***镜像仍然需要的数据进行备份等优化策略,对数据库子单元中的文件进行定时备份,并定时清理备份的文件。
在本发明另一个实施例中,镜像加载单元104,用于:检测外设的第二操作***镜像是否为第一次加载,如果是,则为该外设的第二操作***镜像设置存储空间和入口指针,通过入口指针,将外设的第二操作***镜像加载到存储空间中;否则,直接加载外设的第二操作***镜像。
例如:在云存储空间中只存在操作***镜像2的文件,而该操作***镜像2并未加载过,那么,该镜像加载单元可为该操作***镜像2分配一个存储空间和一个入口指针,并在该存储空间中加载该操作***镜像2。
在本发明另一实施例中,镜像加载单元104,进一步用于:检测所有可用操作***镜像文件;
可视化界面子单元201,进一步用于:建立操作***镜像存储链表,为所有可用操作***镜像文件生成对应的特征信息,并将特征信息存储在所述操作***镜像存储链表中,通过可视化界面展示操作***镜像存储链表中的所有特征信息,在接收到接口单元101发送的目标热切换命令时,选中所述操作***镜像存储链表中的目标特征信息。
通过建立操作***镜像存储链表,实现了对操作***镜像的引导支持。例如:镜像加载单元检测出所有操作***镜像文件为操作***镜像1和操作***镜像2,则可视化界面子单元为操作***镜像1形成特征信息A,为操作***镜像2形成特征信息B,该A和B存储在操作***镜像存储链表,通过屏幕展现给用户,当用户通过热键ctrl+A就可以选中A;用户通过热键ctrl+B就可以选中B;用户还可以通过鼠标启动热切换命令来选中A或B。
在本发明一个实施例中,数据库子单元203,进一步用于向完成加载的外设的第二操作***镜像提供所需的封装文件。
例如:操作***镜像1和操作***镜像2协同执行任务1,操作***镜像1在完成一部分数据后,切换到操作***镜像2来利用操作***镜像1完成的这一部分数据继续进行任务1,则操作***镜像1完成的这一部分数据将会被存储在数据库子单元中,并由数据库子单元提供给操作***镜像2。
在本发明一个实施例中,该操作***管理器采用UEFI***加载器框架。
在本发明一个实施例中,该操作***管理器应用于虚拟机中。
值得说明的是,虚拟硬件服务单元还可被划分为上行子单元和下行子单元,其中,上行子单元,用于接收外设的所述虚拟BIOS提供的外设的虚拟硬件驱动信息,并将该虚拟硬件驱动信息发送给所述内核服务单元;下行子单元,用于接收所述内核服务单元发送的所述目标热切换命令,并将该目标热切换命令发送给外设的虚拟BIOS。
在操作***正常加载和运行时,内核服务单元、虚拟硬件服务单元和镜像加载单元可以进入休眠状态,以减少虚拟机的负载,而接口单元则一直保持着监听的状态,以实时监听到热切换命令。
如图3所示,本发明实施例提供一种虚拟机,该虚拟机包括:上述任一种操作***管理器301、至少两个操作***镜像302、虚拟BIOS303和虚拟硬件304;
至少两个操作***镜像中,每一个操作***镜像302,在运行时,用于接收目标热切换命令,并发送该目标热切换命令给操作***管理器301;
虚拟BIOS303,用于接收操作***管理器301发送的目标热切换命令,加载虚拟硬件304,获取虚拟硬件304的信息,并将虚拟硬件304的信息提供给操作***管理器301;
所述虚拟硬件304,用于支撑至少两个操作***镜像中每一个操作***镜像302运行。
在本发明另一实施例中,在虚拟机启动后,通过虚拟BIOS303加载操作***启动管理器301;通过外设的键盘触发操作***启动管理器301选定需要加载的第一操作***镜像302,启动所述第一操作***镜像302,并将虚拟 机的控制权交给第一操作***镜像302;
值得说明的是,除了通过键盘完成热切换之外,还可以通过鼠标控制来完成热切换。
在本发明另一实施例中,至少两个操作***镜像中,每一个操作***镜像302,在运行时接收目标热切换命令后,释放虚拟机的控制权,并将虚拟机的控制权转交给操作***管理器301。
在本发明又一实施例中,虚拟BIOS303采用UEFI技术框架。
在本发明又一实施例中,操作***管理器采用UEFI***加载器框架。
如图4所示,本发明实施例提供一种操作***间切换方法,将上述任一操作***管理器设置于虚拟机中,在虚拟机的存储空间中存储至少两个操作***镜像文件,设置所有操作***镜像对应的热切换命令,并在虚拟机启动后,运行选定的第一操作***镜像;该方法还可以包括如下步骤:
步骤401:确定正在运行的第一操作***镜像发出的目标热切换命令;
步骤402:将该目标热切换命令发送给虚拟BIOS;
步骤403:接收虚拟BIOS提供的虚拟硬件驱动信息;
步骤404:根据虚拟硬件驱动信息,记录并保存第一操作***镜像的配置状态和数据;
步骤405:根据目标热切换命令,加载第二操作***镜像,以完成从第一操作***镜像到第二操作***镜像的切换。
在本发明一个实施例中,为了使操作***镜像间的数据具有传承性,并使操作***镜像能够读取来自于不同操作***镜像的数据,同时,防止数据被破坏不可用,步骤404的具体实施方式:为第一操作***镜像的配置状态和数据形成XML文件和/或JSON文件,并对XML文件和/或JSON文件进行解析、封装,形成封装文件,并对该封装文件进行保存,并备份封装文件;在步骤405之后,进一步包括:向完成加载的外设的第二操作***镜像提供所需的封装文件。
在本发明一个实施例中,为了能够成功热切换到未加载过的操作***镜 像,步骤405的具体实施方式:检测第二操作***镜像是否为第一次加载,如果是,则为该第二操作***镜像设置存储空间和入口指针,通过入口指针,将第二操作***镜像加载到存储空间中;否则,直接加载第二操作***镜像。
在本发明一个实施例中,为了能够直观的将虚拟机中存在所有操作***镜像展现出来,并供用户自由选择,在所述设置所有操作***镜像对应的热切换命令之后,在所述运行选定的第一操作***镜像之前,进一步包括:建立操作***镜像存储链表;检测所有可用操作***镜像文件,为所述所有可用操作***镜像文件生成对应的特征信息,将所述特征信息存储在所述操作***镜像存储链表,并建立所述特征信息与热切换命令间的对应关系;所述运行选定的第一操作***镜像,包括:通过可视化界面展示所述操作***镜像存储链表中的所有特征信息,在接收到目标热切换命令时,根据所述特征信息与热切换命令间的对应关系,选定所述第一操作***镜像对应的特征信息,运行选定的第一操作***镜像。
如图5所示,在本发明又一实施例中,在云计算中申请一个设置着一个虚拟机的存储空间,以该虚拟机设置着上述任一操作***管理器,同时,该虚拟机包含有至少两个操作***镜像文件为例,展开说明,一种操作***间切换方法,该方法可以包括如下步骤:
步骤500:设置所有操作***镜像对应的热切换命令,建立操作***镜像存储链表;
例如:在虚拟机中有2个操作***镜像,分别为操作***镜像1和操作***镜像2,为操作***镜像1设置当用户同时按下组合键ctrl+A则选中操作***镜像1;并为操作***镜像2设置当用户同时按下组合键ctrl+B则选中操作***镜像2。
步骤501:检测所有可用操作***镜像文件,为所有可用操作***镜像文件生成对应的特征信息;
通过操作***管理器可以检测出包含有操作***镜像1和操作***镜像2,为操作***镜像1生成对应的特征信息A;为操作***镜像2生成对应的 特征信息B。
步骤502:将特征信息存储在操作***镜像存储链表,并建立特征信息与热切换命令间的对应关系;
将操作***镜像1对应的特征信息A和操作***镜像2对应的特征信息B保存在操作***镜像存储链表,同时,设置了A与组合键ctrl+A的对应关系和B与组合键ctrl+B的对应关系。
步骤503:通过可视化界面展示操作***镜像存储链表中的所有特征信息;
在虚拟机开启的过程或者切换操作***镜像的过程,均可以通过屏幕将操作***镜像存储链表提供给用户。切换过程可视化界面的展现过程也可以通过键盘的组合键完成。这样,在用户想要切换操作***镜像的时候,通过当前运行的操作***执行用户通过键盘输入的组合键即可展现可视化界面。
步骤504:在接收到目标热切换命令时,根据特征信息与热切换命令间的对应关系,选定第一操作***镜像对应的特征信息;
在这个过程中,操作***管理器一直处于监听状态,以及时监听到热切换命令,例如:用户键盘按下组合键ctrl+A时,被监听到,则可以选中A,即选中操作***镜像1对应的特征值。
步骤505:运行选定的第一操作***镜像;
步骤506:确定正在运行的第一操作***镜像发出的目标热切换命令;
在这个过程中,操作***管理器一直处于监听状态,以及时监听到热切换命令,例如:用户在操作***镜像1运行的过程中,监听到用户通过键盘按下可视化界面对应的组合键,则转换到可视化界面,而用户通过键盘按下组合键ctrl+B时,被监听到,则选中操作***镜像存储链表中的B。
步骤507:将该目标热切换命令发送给虚拟BIOS;
该步骤主要是因为2个操作***镜像可能一个为Linux***镜像,另一个为WINDOWS镜像,则这两个操作***镜像依靠的驱动有所差异,则需要虚拟BIOS启动操作***镜像对应的硬件驱动。
步骤508:接收虚拟BIOS提供的虚拟硬件驱动信息;
例如:CPU,键盘,存储等资源在正常运转之后,虚拟BIOS发一个信号通知操作***管理器运转状态正常。
步骤509:根据虚拟硬件驱动信息,记录并保存第一操作***镜像的配置状态和数据;
在该步骤中,为第一操作***镜像的配置状态和数据形成XML文件和/或JSON文件,并对XML文件和/或JSON文件进行解析、封装,形成封装文件,并对该封装文件进行保存,并备份封装文件;
例如:操作***镜像1和操作***镜像2需要协同完成任务1,其中,操作***镜像1完成部分任务,形成数据a,操作***镜像2需利用数据a完成剩下的部分,则,在本步骤中,在切换过程中,可将数据a存储,并在操作***镜像2运行时,提供给操作***镜像2,使得数据具有传承性。通过对数据进行重新封装,避免了数据不能***作***镜像2读取。
步骤510:根据热切换命令,检测第二操作***镜像是否为第一次加载,如果是,则执行步骤511;否则,执行步骤512;
步骤511:为该第二操作***镜像设置存储空间和入口指针,通过入口指针,将第二操作***镜像加载到存储空间中,并执行步骤513;
例如:用户通过键盘触发组合键ctrl+B,则触发了切换到操作***镜像2的热切换命令,当操作***镜像2仅在虚拟机中存在操作***镜像2文件,而该文件从未被加载过,则,操作***管理器为操作***镜像2划分出一个存储空间,以将该操作***镜像2加载到该存储空间,同时,建立一个入口指针,以确定该存储空间的位置,准确完成加载。
步骤512:直接加载第二操作***镜像;
步骤513:向完成加载的外设的第二操作***镜像提供所需的封装文件。
值得说明的是,在操作***镜像正常加载和运行时,操作***管理器仅用于监听,以实时监听到热切换命令;其它功能可以进入休眠状态,以减少虚拟机的负载,加快操作***镜像的运行。
本发明的各个实施例至少具有如下有益效果:
1.本发明实施例提供的操作***管理器,包括:接口单元、内核服务单元、虚拟硬件服务单元和镜像加载单元,其中,所述接口单元,用于监听正在运行的外设的第一操作***镜像发出的目标热切换命令,并将该命令传递给内核服务单元;所述内核服务单元,用于接收到所述接口单元发送的所述目标热切换命令,向所述虚拟硬件服务单元发送所述目标热切换命令,并接收所述虚拟硬件服务单元发送的所述虚拟硬件驱动信息,根据所述虚拟硬件驱动信息,记录并保存外设的所述第一操作***镜像的配置状态和数据,并触发所述镜像加载单元;所述虚拟硬件服务单元,用于接收所述内核服务单元发送的目标热切换命令,并将该目标热切换命令发送给外设的虚拟BIOS,接收外设的所述虚拟BIOS提供的外设的虚拟硬件驱动信息,并将该虚拟硬件驱动信息发送给内核服务单元;所述镜像加载单元,在接收到所述内核服务单元触发时,用于加载外设的第二操作***镜像,以完成从外设的所述第一操作***镜像到外设的所述第二操作***镜像的切换,因此,该操作***管理器实现了操作***镜像间的快速切换。
2.在本发明实施例中,在同一台虚拟机中设置至少两个操作***镜像,则通过操作***管理器可以在至少两个操作***镜像间快速切换,可在一个操作***镜像故障时,快速切换到另一个操作***镜像,从而保障了业务的顺利完成。
3.由于同一台虚拟机中设置至少两个操作***镜像,那么可将同一个业务布置在不同的操作***镜像中,实现了更灵活的服务部署,通过快速切换即可完成业务切换,同时,降低了设置多个操作***镜像的成本。
4.由于操作***管理器可以对操作***镜像的数据进行存储,而一个操作***镜像可以从操作***管理器中获取到其它操作***镜像的数据,则对于故障的操作***镜像,其数据仍可被恢复至另一个操作***镜像中,降低了损失。
5.建立操作***镜像存储链表;检测所有可用操作***镜像文件,为所 述所有可用操作***镜像文件生成对应的特征信息,将所述特征信息存储在所述操作***镜像存储链表,并建立所述特征信息与热切换命令间的对应关系,使用户能够直观的将虚拟机中存在所有操作***镜像展现出来,并供用户自由选择。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (10)

1.一种操作***管理器,其特征在于,包括:接口单元、内核服务单元、虚拟硬件服务单元和镜像加载单元,其中,
所述接口单元,用于监听正在运行的外设的第一操作***镜像发出的目标热切换命令,并将该命令传递给所述内核服务单元;
所述内核服务单元,用于设置外设的所有操作***镜像对应的热切换命令,接收所述接口单元发送的所述目标热切换命令,向虚拟硬件服务单元发送所述目标热切换命令,并接收虚拟硬件服务单元发送的虚拟硬件驱动信息,根据虚拟硬件驱动信息,记录并保存外设的所述第一操作***镜像的配置状态和数据,并触发所述镜像加载单元;
虚拟硬件服务单元,用于接收所述内核服务单元发送的所述目标热切换命令,并将该目标热切换命令发送给外设的虚拟BIOS,接收外设的虚拟BIOS提供的外设的虚拟硬件驱动信息,并将该虚拟硬件驱动信息发送给所述内核服务单元;
所述镜像加载单元,在接收到所述内核服务单元触发时,用于加载外设的第二操作***镜像,以完成从外设的所述第一操作***镜像到外设的所述第二操作***镜像的切换。
2.根据权利要求1所述的操作***管理器,其特征在于,
所述内核服务单元,包括:可视化界面子单元、迁移服务子单元、数据库子单元和备份子单元中的任意一个或多个,其中,
所述可视化界面子单元,用于设置外设的所有操作***镜像对应的热切换命令,接收所述接口单元发送的所述目标热切换命令,并向所述虚拟硬件服务单元发送所述目标热切换命令;
所述迁移服务子单元,用于接收所述虚拟硬件服务单元发送的所述虚拟硬件驱动信息,根据所述虚拟硬件驱动信息,记录外设的所述第一操作***镜像的配置状态和数据,形成XML文件和/或JSON文件,并将所述XML文件和/或JSON文件发送给所述数据库子单元;
所述数据库子单元,用于存储所述XML文件和/或JSON文件,并对所述XML文件和/或JSON文件进行解析、封装,形成封装文件;
所述备份子单元,用于获取并备份所述数据库子单元中的所述封装文件。
3.根据权利要求1所述的操作***管理器,其特征在于,所述镜像加载单元,用于:
检测外设的第二操作***镜像是否为第一次加载,如果是,则为该外设的第二操作***镜像设置存储空间和入口指针,通过所述入口指针,将所述外设的第二操作***镜像加载到所述存储空间中;否则,直接加载所述外设的第二操作***镜像。
4.根据权利要求2所述的操作***管理器,其特征在于,
所述镜像加载单元,进一步用于:检测所有可用操作***镜像文件;
所述可视化界面子单元,进一步用于:建立操作***镜像存储链表,为所述所有可用操作***镜像文件生成对应的特征信息,并将所述特征信息存储在所述操作***镜像存储链表中,通过可视化界面展示所述操作***镜像存储链表中的所有特征信息,在接收到所述接口单元发送的所述目标热切换命令时,选中所述操作***镜像存储链表中的目标特征信息;
和/或,
所述数据库子单元,进一步用于向完成加载的所述外设的第二操作***镜像提供所需的封装文件。
5.根据权利要求1至4任一所述的操作***管理器,其特征在于,
该操作***管理器采用UEFI***加载器框架;
和/或,
该操作***管理器应用于虚拟机中。
6.一种虚拟机,其特征在于,包括:权利要求1至5任一所述的操作***管理器、至少两个操作***镜像、虚拟BIOS和虚拟硬件,其中,
所述至少两个操作***镜像中,每一个操作***镜像,在运行时,用于接收目标热切换命令,并发送所述目标热切换命令给所述操作***管理器;
所述虚拟BIOS,用于接收所述操作***管理器发送的所述目标热切换命令,加载所述虚拟硬件,获取所述虚拟硬件的信息,并将所述虚拟硬件的信息提供给所述操作***管理器;
所述虚拟硬件,用于支撑所述至少两个操作***镜像的运行。
7.根据权利要求6所述的虚拟机,其特征在于,
在所述虚拟机启动后,通过所述虚拟BIOS加载所述操作***管理器;通过外设的键盘触发所述操作***管理器选定需要加载的第一操作***镜像,启动第一操作***,并将虚拟机的控制权交给第一操作***;
和/或,
所述至少两个操作***镜像中,每一个操作***镜像,在运行时接收目标热切换命令后,释放虚拟机的控制权,并将所述虚拟机的控制权转交给所述操作***管理器。
8.根据权利要求6或7所述的虚拟机,其特征在于,
所述虚拟BIOS采用UEFI技术框架;
和/或,
所述操作***管理器采用UEFI***加载器框架。
9.一种操作***间切换方法,其特征在于,将权利要求1至5任一所述的操作***管理器设置于虚拟机中,在所述虚拟机的存储空间中存储至少两个操作***镜像文件,并设置所有操作***镜像对应的热切换命令,在所述虚拟机启动后,运行选定的第一操作***镜像,还包括:
确定正在运行的所述第一操作***镜像发出的目标热切换命令;
将该目标热切换命令发送给虚拟BIOS;
接收所述虚拟BIOS提供的虚拟硬件驱动信息;
根据所述虚拟硬件驱动信息,记录并保存所述第一操作***镜像的配置状态和数据;
根据所述目标热切换命令,加载第二操作***镜像,以完成从所述第一操作***镜像到所述第二操作***镜像的切换。
10.根据权利要求9所述的操作***间切换方法,其特征在于,
所述记录并保存所述第一操作***镜像的配置状态和数据,包括:为所述第一操作***镜像的配置状态和数据形成XML文件和/或JSON文件,并对所述XML文件和/或JSON文件进行解析、封装,形成封装文件,并对该封装文件进行保存,并备份所述封装文件;
在所述加载第二操作***镜像之后,进一步包括:向完成加载的所述外设的第二操作***镜像提供所需的封装文件;
和/或,
所述加载第二操作***镜像,包括:检测所述第二操作***镜像是否为第一次加载,如果是,则为该第二操作***镜像设置存储空间和入口指针,通过所述入口指针,将所述第二操作***镜像加载到所述存储空间中;否则,直接加载所述第二操作***镜像;
和/或,
在所述设置所有操作***镜像对应的热切换命令之后,在所述运行选定的第一操作***镜像之前,进一步包括:
建立操作***镜像存储链表;
检测所有可用操作***镜像文件,并为所述所有可用操作***镜像文件生成对应的特征信息;
将所述特征信息存储在所述操作***镜像存储链表,并建立所述特征信息与热切换命令间的对应关系;
所述运行选定的第一操作***镜像,包括:通过可视化界面展示所述操作***镜像存储链表中的所有特征信息,在接收到目标热切换命令时,根据所述特征信息与热切换命令间的对应关系,选定所述第一操作***镜像对应的特征信息,运行选定的第一操作***镜像。
CN201510519216.3A 2015-08-21 2015-08-21 一种操作***管理器、虚拟机和操作***间切换方法 Active CN105117272B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510519216.3A CN105117272B (zh) 2015-08-21 2015-08-21 一种操作***管理器、虚拟机和操作***间切换方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510519216.3A CN105117272B (zh) 2015-08-21 2015-08-21 一种操作***管理器、虚拟机和操作***间切换方法

Publications (2)

Publication Number Publication Date
CN105117272A CN105117272A (zh) 2015-12-02
CN105117272B true CN105117272B (zh) 2018-05-01

Family

ID=54665273

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510519216.3A Active CN105117272B (zh) 2015-08-21 2015-08-21 一种操作***管理器、虚拟机和操作***间切换方法

Country Status (1)

Country Link
CN (1) CN105117272B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105718302B (zh) * 2016-01-18 2018-08-31 浪潮集团有限公司 一种基于Docker实现冗余交换机操作***的方法
CN106843798B (zh) * 2016-10-20 2019-12-17 广州视源电子科技股份有限公司 智能交互平板内多通道切换方法及装置
WO2019051670A1 (zh) * 2017-09-13 2019-03-21 深圳传音通讯有限公司 一种基于智能终端的虚拟***运行方法及虚拟***
CN109146112B (zh) * 2018-02-06 2021-06-08 中国科学院沈阳应用生态研究所 面向森林多目标优化决策的经营***
CN109002346B (zh) * 2018-07-10 2022-04-15 广东微云科技股份有限公司 一种Windows虚拟机引导程序的转换方法
CN110673860B (zh) * 2019-09-24 2023-06-16 南京先进计算产业发展有限公司 智能云数据中心建设与运营部署***及方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1940805A (zh) * 2005-09-30 2007-04-04 联想(北京)有限公司 计算机***及其安全加固方法
CN101782861A (zh) * 2009-12-24 2010-07-21 华为终端有限公司 在嵌入式***中操作***的管理方法及装置
EP2495655A1 (en) * 2011-03-03 2012-09-05 VIA Technologies, Inc. Method for switching operating system and electronic apparatus using the same
CN103870298A (zh) * 2012-12-17 2014-06-18 联想(北京)有限公司 切换方法和电子设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7478388B1 (en) * 2004-04-21 2009-01-13 Vmware, Inc. Switching between multiple software entities using different operating modes of a processor in a computer system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1940805A (zh) * 2005-09-30 2007-04-04 联想(北京)有限公司 计算机***及其安全加固方法
CN101782861A (zh) * 2009-12-24 2010-07-21 华为终端有限公司 在嵌入式***中操作***的管理方法及装置
EP2495655A1 (en) * 2011-03-03 2012-09-05 VIA Technologies, Inc. Method for switching operating system and electronic apparatus using the same
CN103870298A (zh) * 2012-12-17 2014-06-18 联想(北京)有限公司 切换方法和电子设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
高校实验室计算机操作***的快速切换与环境速成;王晓立;《电子商务》;20150531;第19卷(第5期);64-65 *

Also Published As

Publication number Publication date
CN105117272A (zh) 2015-12-02

Similar Documents

Publication Publication Date Title
CN105117272B (zh) 一种操作***管理器、虚拟机和操作***间切换方法
US10114834B2 (en) Exogenous virtual machine synchronization and replication
CN111338854B (zh) 基于Kubernetes集群快速恢复数据的方法及***
CN105354113B (zh) 一种服务器、管理服务器的***和方法
CN104778102A (zh) 一种主备切换方法及***
CN105975864A (zh) 操作***的启动方法、装置及终端
CN110519461B (zh) 文件发送方法、装置、计算机设备以及存储介质
US7716522B2 (en) Information processing system and method for executing process during communication error
US20170222891A1 (en) Automatic asynchronous handoff identification
CN109857489B (zh) 基于Android***的开发***、解耦方法和装置
CN103345414B (zh) 自助终端控制硬件设备的方法、设备管理器和处理器
US9535666B2 (en) Dynamic agent delivery
CN105468717A (zh) 数据库操作方法和装置
CN101651669A (zh) 业务箱集成服务器和业务箱集成方法
CN107038096A (zh) 虚拟磁盘备份***、方法和装置
CN107992381A (zh) ***还原方法、装置、***、备份还原服务器及存储介质
US20240086360A1 (en) File saving method and electronic device
CN105354498A (zh) 一种注册表的操作方法和相关装置及设备
US7315959B2 (en) Real-time remote backup system and related method
US20220188274A1 (en) File processing method and apparatus based on online working system, and storage medium
CN107770030B (zh) 基于vpn技术的舞台设备控制***、控制方法及控制装置
CN101329688B (zh) 用于外部备份的数据库***和方法
CN109040284A (zh) 信息展示及信息推送方法、装置、设备和存储介质
CN108427560A (zh) Api文件管理方法、服务器及存储介质
CN108459927A (zh) 一种数据备份方法、装置和服务器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20180801

Address after: 250100 S06 tower, 1036, Chao Lu Road, hi tech Zone, Ji'nan, Shandong.

Patentee after: Shandong wave cloud Mdt InfoTech Ltd

Address before: No. 1036, Shandong high tech Zone wave road, Ji'nan, Shandong

Patentee before: Inspur Group Co., Ltd.

CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 250100 No. 1036 Tidal Road, Jinan High-tech Zone, Shandong Province, S01 Building, Tidal Science Park

Patentee after: Inspur cloud Information Technology Co., Ltd

Address before: 250100 Ji'nan science and technology zone, Shandong high tide Road, No. 1036 wave of science and Technology Park, building S06

Patentee before: SHANDONG LANGCHAO YUNTOU INFORMATION TECHNOLOGY Co.,Ltd.