用于控制客户虚拟机器的操作介面的虚拟处理装置的制作方法

未命名 08-25 阅读:155 评论:0


1.本揭示系关于一种数据处理装置,特别关于一种可用于处理客户虚拟机器(guest virtual machine,“guest vm”)的操作介面的显示配置及切换的虚拟处理装置。


背景技术:

2.随着计算机科学(computer science)中的虚拟技术的演进,可于计算机装置中客制布署虚拟机器,并藉由虚拟机器控制虚拟装置,进而存取对应的实体的硬件装置。例如,可在计算机装置原有的主机作业系统之外另行布署虚拟机器而成为第二套作业系统,以扩展计算机装置的使用便利性及多样性。
3.在习知的技术中,使用者将第二套作业系统装设于虚拟机器中,然而虚拟机器存取主机作业系统的权限较低,且习知的虚拟机器缺乏视窗管理(windows managing)机制,因而无法全荧幕的完整显示第二套作业系统的操作介面,且第二套作业系统与主机作业系统进行切换时无法达到无缝式的顺畅切换。
4.在另一习知的技术中,使用者将第二套作业系统装设于计算机装置的另一个磁区;然而,在第二套作业系统与主机作业系统进行切换时,需要重新启动计算机装置。即,使用者无法在操作过程中随时进行切换,因而大幅降低顺畅切换的操作体验。
5.此外,设备驱动程序(device driver)的发行系以微软视窗作业系统(windows os)为优先,而针对非微软视窗作业系统的其他作业系统(例如「linux」作业系统)的设备驱动程序可能迟至半年后才完备。即,使用者于半年的延迟等待期之中无法经由重新启动计算机装置而切换主机作业系统(例如微软视窗作业系统)与第二套作业系统(例如「linux」作业系统)。并且,若根据习知的技术额外建立显示服务器(display server),主机作业系统并未对应建立额外的虚拟桌面(virtual desktop)或额外的显示(display);因而,于原本的主机作业系统之外,至多仅能架设一套作业系统。
6.针对习知技术的上述技术问题,本技术领域的相关产业的技术人员系致力于改良客户虚拟机器的操作介面的显示配置及切换的控制机制,期能在无需重新启动计算机装置的前提下满足使用者的全荧幕操作体验及无缝切换作业系统的体验。


技术实现要素:

7.根据本揭示的一方面,系提供一种虚拟处理装置,用于控制第一客户虚拟机器的第一操作介面的显示。虚拟处理装置包括显示及桌面产生单元、视窗管理单元与显示及桌面管理单元。显示及桌面产生单元用于接收图形应用程序并产生建立虚拟桌面命令,建立虚拟桌面命令用于建立第一虚拟桌面以全荧幕显示第一操作介面。视窗管理单元用于根据图形应用程序设定第一操作介面显示于第一虚拟桌面的显示位置。显示及桌面管理单元用于根据建立虚拟桌面命令设定相关于第一客户虚拟机器的显示器代号及桌面代号,桌面代号对应于第一虚拟桌面。第一客户虚拟机器与主机作业系统同时运作,主机作业系统具有主机操作介面显示于预设桌面,并且第一操作介面与主机操作介面切换显示于至少一个显
示器。
8.透过阅读以下图式、详细说明以及权利要求,可见本揭示的其他方面以及优点。
附图说明
9.图1为客户虚拟机器运作于计算机装置的示意图。
10.图2a为客户虚拟机器的操作介面显示于显示器的示意图。
11.图2b、2c为客户虚拟机器的操作介面与主机作业系统的主机操作介面进行切换显示的示意图。
12.图3为本揭示一实施例的客户虚拟处理装置的方块图。
13.图4为客户虚拟处理装置控制客户虚拟机器的操作介面的显示配置的示意图。
14.图5a为客户虚拟机器、客户核心层及主机核心层的方块图。
15.图5b为客户虚拟机器、主机作业系统及实体装置的方块图。
16.图6a~6c分别为主机作业系统及第一与第二客户虚拟机器各自的操作介面分别显示于计算机装置的不同显示器及不同虚拟桌面的示意图。
17.图6d为主机作业系统及第一与第二客户虚拟机器各自的操作介面切换显示于不同显示器的示意图。
18.附图标记说明
19.110:预设的显示器
20.111,112:外接显示器
21.120:存储器
22.130:硬盘
23.140:绘图处理器
24.200:客户虚拟处理装置
25.210:显示及桌面产生单元
26.220:视窗管理单元
27.230:可映射应用程序单元
28.240:显示及桌面管理单元
29.250:虚拟装置应用程序
30.260:虚拟装置
31.290:虚拟插槽
32.310:装置驱动程序
33.1500:实体装置
34.2000,2002:客户虚拟机器
35.2200:客户核心层
36.2300:客户桌面环境
37.2500:软件堆迭
38.3000:主机作业系统
39.3200:主机核心层
40.3300:主机桌面环境
41.2100:操作介面
42.2102:操作介面
43.3100:主机操作介面
44.w1,w2:视窗
45.g1,g2:显示位置
46.disp_num:显示器代号
47.desk_num:桌面代号
48.desk0:预设桌面
49.desk1,desk2:虚拟桌面
50.g_ap-1,g_ap-2:图形应用程序
51.g_dr:绘图处理器驱动程序
52.bd:建立虚拟桌面命令
53.pr:控制信号
54.cmd:控制命令
具体实施方式
55.本说明书的技术用语系参照本技术领域的习惯用语,如本说明书对部分用语有加以说明或定义,该部分用语的解释系以本说明书的说明或定义为准。本揭露的各个实施例分别具有一或多个技术特征。在可能实施的前提下,本技术领域具有通常知识者可选择性地实施任一实施例中部分或全部的技术特征,或者选择性地将这些实施例中部分或全部的技术特征加以组合。
56.图1为客户虚拟机器(guest virtual machine,“guest vm”)2000运作于计算机装置1000的示意图。客户虚拟机器2000可布署(deploy)于计算机装置1000,并且客户虚拟机器2000可经由主机作业系统(host operating system,“host os”)3000的主机核心层(kernel)3200控制及存取计算机装置1000的实体装置(physical device)1500;据此,客户虚拟机器2000作为第二套作业系统而运作于计算机装置1000。
57.在一种示例中,计算机装置1000例如为个人或家用的笔记型电脑(laptop),主机作业系统3000例如为计算机装置1000出厂时预设安装的微软视窗第11版(「windows11」)作业系统,客户虚拟机器2000例如为使用者客制安装的「linux」作业系统。客制安装的「linux」作业系统可经由「windows 11」作业系统的主机核心层3200提供的装置驱动程序(device driver)310控制及存取计算机装置1000的显示器(display)110、存储器120、硬盘130及绘图处理器(graphic processing unit,“gpu”)140等实体装置1500。
58.并且,主机核心层3200的装置驱动程序310可提供绘图处理器驱动程序g_dr,其用于驱动实体装置1500中的绘图处理器140执行绘图及图形加速处理。绘图处理器140可绘制客户虚拟机器2000的操作介面2100并将操作介面2100显示于显示器110。本揭示的客户虚拟处理装置200可设置于客户虚拟机器2000之中;当主机作业系统3000与客户虚拟机器2000同时运作于计算机装置1000时,客户虚拟处理装置200可用于控制客户虚拟机器2000的操作介面2100的显示配置,并可用于控制主机作业系统3000与客户虚拟机器2000之间的切换显示。
server)」的角色而运作;首先,显示及桌面产生单元210可从客户虚拟机器2000的客户桌面环境(desk environment,图3中未显示)接收「图形应用程序(graphic api)g_ap-1」。图形应用程序g_ap-1用于产生虚拟装置(virtual device,“vdevice”)260可解析并可据以执行的图形应用程序g_ap-2。虚拟装置260为对应于实体的绘图处理器140的虚拟资源,虚拟装置260可根据图形应用程序g_ap-2执行绘图处理以绘制操作介面2100。显示及桌面产生单元210并将图形应用程序g_ap-1传送至视窗管理单元220,并与视窗管理单元220执行沟通程序。
64.在显示及桌面产生单元210与视窗管理单元220的沟通程序的过程中,视窗管理单元220可决定操作介面2100于显示器110的虚拟桌面desk1的显示位置;视窗管理单元220并可进一步设定操作介面2100的每个物件的显示位置。例如,操作介面2100可包括视窗w1及视窗w2,视窗管理单元220可设定视窗w1及视窗w2将分别显示于虚拟桌面desk1中的显示位置g1及显示位置g2。
65.视窗管理单元220完成操作介面2100的显示位置的设定后,显示及桌面产生单元210可产生「建立虚拟桌面命令bd」,并将建立虚拟桌面命令bd传送至主机核心层3200中的显示及桌面管理单元240。并且,显示及桌面管理单元240根据建立虚拟桌面命令bd对于主机作业系统3000提出请求,请求在显示器110建立虚拟桌面desk1,而后将在虚拟桌面desk1中全荧幕的显示操作介面2100。
66.主机作业系统3000建立虚拟桌面desk1之后,主机作业系统3000可配置显示器代号disp_num予显示器110,并配置桌面代号desk_num予虚拟桌面desk1。例如,显示器110的显示器代号disp_num设定为「1」,虚拟桌面desk1的桌面代号desk_num亦设定为「1」,即,disp_num=1,desk_num=1。而后,显示及桌面管理单元240可将显示器代号disp_num=1及桌面代号desk_num=1设定于客户虚拟机器2000的客户桌面环境。相对的,主机作业系统3000的主机操作介面3100的桌面代号desk_num设定为「0」。
67.并且,显示及桌面管理单元240可侦测使用者是否登出客户虚拟机器2000;若侦测到登出客户虚拟机器2000,则显示及桌面管理单元240通知主机作业系统3000废止客户虚拟机器2000的显示器代号disp_num=1及桌面代号desk_num=1,以将实体资源(即,显示器110及绘图处理器140)与对应的虚拟资源(即,虚拟装置260)返还予主机作业系统3000。
68.此外,可映射应用程序单元230用于将图形应用程序g_ap-1映射(mapping)至虚拟装置应用程序250,以使虚拟装置应用程序250提供可被虚拟装置260解析且据以执行的图形应用程序g_ap-2。由上,虚拟装置260可根据图形应用程序g_ap-2、显示器代号disp_num=1、桌面代号desk_num=1及视窗管理单元220决定的显示位置对于操作介面2100进行绘制,将操作介面2100以全荧幕方式完整显示于显示器110的整个虚拟桌面desk1。
69.图5a为客户虚拟机器2000、客户核心层(guest kernel)2200及主机核心层3200的方块图,图5b为客户虚拟机器2000、主机作业系统3000及实体装置1500的方块图;图5a、5b详细绘示计算机装置1000的中由客户虚拟机器2000、主机作业系统3000与实体装置1500组成的软/硬件堆迭(stack)的架构。请同时参见图5a、5b,客户桌面环境2300、客户虚拟处理装置200、虚拟装置应用程序250皆设置于客户虚拟机器2000之中,并且虚拟装置260设置于客户核心层2200之中,显示及桌面管理单元240及装置驱动程序310设置于主机核心层3200之中。客户核心层2200设置于客户虚拟机器2000与主机核心层3200之间;并且,客户虚拟机
器2000与客户核心层2200组成的软件堆迭2500例如为微软视窗作业系统提供的「用于linux的视窗子系统的第二版」(windows subsystem for linux-ii,“wsl2”)。
70.在客户虚拟机器2000的操作介面2100显示于虚拟桌面desk1之前,客户桌面环境2300先进行初始化,并在初始化的过程中客户桌面环境2300输出图形应用程序g_ap-1至显示及桌面产生单元210。显示及桌面产生单元210与视窗管理单元220进行沟通程序且视窗管理单元220决定操作介面2100在虚拟桌面desk1的显示位置,而后,显示及桌面产生单元210产生建立虚拟桌面命令bd。并且,客户虚拟处理装置200在客户核心层2200与主机核心层3200之间建立虚拟插槽(virtual socket,“vsocket”)290,可经由虚拟插槽290传送建立虚拟桌面命令bd至设置于主机核心层3200中的显示及桌面管理单元240。
71.另一方面,主机作业系统3000亦设置主机桌面环境3300,显示及桌面管理单元240可将建立虚拟桌面命令bd传送至主机桌面环境3300。在运作上,主机桌面环境3300可作为分配实体显示器及虚拟桌面的管理中心的角色;因应于客户虚拟处理装置200的建立虚拟桌面命令bd的请求,主机桌面环境3300在显示器110建立虚拟桌面desk1。并且,主机桌面环境3300配置显示器代号disp_num=1及桌面代号desk_num=1予显示器110及虚拟桌面desk1。此外,主机桌面环境3300可经由显示及桌面管理单元240将显示器代号disp_num=1及桌面代号desk_num=1设定于客户虚拟机器2000的客户桌面环境2300。
72.再者,可映射应用程序单元230将图形应用程序g_ap-1进行映射,以使虚拟装置应用程序250提供可映射于虚拟装置260的图形应用程序g_ap-2。并且,虚拟装置260经由虚拟插槽290传送图形应用程序g_ap-2及控制命令cmd至装置驱动程序310,并且装置驱动程序310进一步提供绘图处理器驱动程序g_dr至实体装置1500中的绘图处理器140。对应的,主机作业系统3000可给予虚拟装置260足够的权限(privilege)以处理操作介面2100的绘制及显示;在一种示例中,主机核心层3200的装置驱动程序310可传送控制信号pr至虚拟装置260以致能(enable)虚拟装置260的存取权限(access privilege)。据此,虚拟装置260(关联于客户虚拟机器2000)可由主机作业系统3000取得足够的权限,且虚拟装置260对应的实体的绘图处理器140可根据绘图处理驱动程序g_dr执行绘图及图形加速处理,以将客户虚拟机器2000的操作介面2100以全荧幕方式显示于显示器110的虚拟桌面desk1。
73.在本揭示的技术方案中,客户虚拟处理装置200可建立专属的虚拟插槽290以从主机核心层3200传送或接收建立虚拟桌面命令bd、图形应用程序g_ap-2、控制命令cmd及控制信号pr,据此可提升建立虚拟桌面命令bd、图形应用程序g_ap-2、控制命令cmd及控制信号pr的传输速度,使得实体的绘图处理器140以近似于即时(real-time)方式执行绘图及图形加速。据此,当使用者由原本显示的主机操作介面3100切换至客户虚拟机器2000的操作介面2100时,实体的绘图处理器140能够即时绘制操作介面2100而提升切换显示的流畅度。
74.另一方面,在本揭示的技术方案中,在计算机装置1000中亦可同时执行两个以上的客户虚拟机器,例如,执行主机作业系统3000并且同时执行客户虚拟机器2000与客户虚拟机器2002。图6a~6c分别绘示主机作业系统3000、客户虚拟机器2000及客户虚拟机器2002各自的操作介面3100、2100及2102分别显示于计算机装置1000的不同显示器及不同虚拟桌面的示意图。请同时参见图6a~6c,客户虚拟机器2000可称为「第一客户虚拟机器」且客户虚拟机器2002可称为「第二客户虚拟机器」,在一种示例中,客户虚拟机器2000为「linux」作业系统,客户虚拟机器2002为「ubuntu」作业系统。并且,客户虚拟机器2000的操作
介面2100可称为「第一操作介面」,客户虚拟机器2002的操作介面2102可称为「第二操作介面」。计算机装置1000除了预设的显示器110之外,更连接至外接显示器111(可称为「第一外接显示器」)及外接显示器112(可称为「第二外接显示器」)。并且,在客户虚拟机器2002之中,亦可设置类似于客户虚拟处理装置200的客户虚拟处理装置202。可藉由客户虚拟处理装置200、202分别进行客户虚拟机器2000、2002与主机作业系统3000之间的控制命令、控制信号与图形应用程序的中介处理,以使得操作介面3100、2100及2102能够同时运作并分别显示于显示器110、111及112。
75.在运作上,主机作业系统3000的主机桌面环境3300可配置显示器代号disp_num=0予预设的显示器110,并配置桌面代号desk_num=0予预设桌面desk0。根据显示器代号disp_num=0及桌面代号desk_num=0,系将主机操作介面3100显示于预设的显示器110的预设桌面desk0。
76.另一方面,主机桌面环境3300可配置显示器代号disp_num=1予外接显示器111,并配置显示器代号disp_num=2予外接显示器112。并且,主机桌面环境3300可配置桌面代号desk_num=1予虚拟桌面desk1,并配置桌面代号desk_num=2予另一个虚拟桌面desk2。虚拟桌面desk1可称为「第一虚拟桌面」,且虚拟桌面desk2可称为「第二虚拟桌面」。由上,根据显示器代号disp_num=1及桌面代号desk_num=1,系将客户虚拟机器2000的操作介面2100显示于外接显示器111的虚拟桌面desk1。并且,根据显示器代号disp_num=2及桌面代号desk_num=2,系将客户虚拟机器2002的操作介面2102显示于外接显示器112的虚拟桌面desk2。
77.于图6a~6c的实施例中,操作介面3100、2100及2102分别显示于不同显示器及不同虚拟桌面;在其他实施例中,操作介面3100、2100及2102亦可于不同显示器之间进行切换显示。请参见图6d,其绘示主机作业系统3000、客户虚拟机器2000及客户虚拟机器2002各自的操作介面3100、2100及2102切换显示于不同显示器的示意图。
78.在运作上,客户虚拟机器2000的客户虚拟处理装置200可请求主机桌面环境3300将显示器代号disp_num=0及桌面代号desk_num=1分配予客户虚拟机器2000;据此,客户虚拟处理装置200可控制操作介面2100切换显示于预设的显示器110的虚拟桌面desk1。另一方面,客户虚拟机器2002的客户虚拟处理装置202可请求主机桌面环境3300将显示器代号disp_num=1及桌面代号desk_num=2分配予客户虚拟机器2002;据此,客户虚拟处理装置202可控制操作介面2102切换显示于外接显示器111的虚拟桌面desk2。并且,主机桌面环境3300对应的将显示器代号disp_num=2及桌面代号desk_num=0分配予主机作业系统3000;据此,主机作业系统3000的主机操作介面3100可切换显示于外接显示器112的预设桌面desk0。
79.综上所述,在本揭示的各实施例中,可藉由客户虚拟处理装置200控制客户虚拟机器2000的操作介面2100的显示配置,使操作介面2100能配合于专属的虚拟桌面desk1进行全荧幕显示,以满足使用者的全荧幕完整操作体验。并且,藉由客户虚拟处理装置200的控制,在无需重新启动计算机装置1000的状况下能够随时切换主机操作介面3100与显示操作介面2100,以满足使用者的无缝切换体验。此外,本揭示的技术方案更可同时执行两个以上的客户虚拟机器,可进行多个客户虚拟机器的操作介面的相互切换。
80.虽然本发明已以较佳实施例及范例详细揭露如上,可理解的是,此些范例意指说
明而非限制的意义。可预期的是,所属技术领域中具有通常知识者可想到多种修改及组合,其多种修改及组合落在本发明的精神以及后附的权利要求的范围内。

技术特征:
1.一种虚拟处理装置,用于控制一第一客户虚拟机器的一第一操作介面的显示,该虚拟处理装置包括:一显示及桌面产生单元,用于接收一图形应用程序并产生一建立虚拟桌面命令,该建立虚拟桌面命令用于建立一第一虚拟桌面以全荧幕显示该第一操作介面;一视窗管理单元,用于根据该图形应用程序设定该第一操作介面显示于该第一虚拟桌面的显示位置;以及一显示及桌面管理单元,用于根据该建立虚拟桌面命令设定相关于该第一客户虚拟机器的一显示器代号及一桌面代号,该桌面代号对应于该第一虚拟桌面,其中,该第一客户虚拟机器与一主机作业系统同时运作,该主机作业系统具有一主机操作介面显示于一预设桌面,并且该第一操作介面与该主机操作介面切换显示于至少一显示器。2.如权利要求1所述的虚拟处理装置,其特征在于,该第一客户虚拟机器与该主机作业系统同时运作于一计算机装置,当该第一操作介面与该主机操作介面切换显示于该至少一显示器时该计算机装置无须重新开机。3.如权利要求1所述的虚拟处理装置,其特征在于,更包括:一可映射应用程序单元,用于将该图形应用程序映射至一虚拟装置应用程序;其中,该虚拟装置应用程序用于执行该第一客户虚拟机器的一虚拟装置以绘制并显示该第一操作介面于该第一虚拟桌面。4.如权利要求3所述的虚拟处理装置,其特征在于,映射后的该图形应用程序经由该虚拟装置传送至该主机作业系统的一装置驱动程序,并且该装置驱动程序致能该虚拟装置的存取权限。5.如权利要求4所述的虚拟处理装置,其特征在于,该装置驱动程序用于提供一绘图处理器驱动程序以驱动一绘图处理器,该绘图处理器系为对应于该虚拟装置的一实体装置,并且该绘图处理器用于绘制并显示该第一操作介面。6.如权利要求4所述的虚拟处理装置,其特征在于,该虚拟装置设置于一客户核心层,该客户核心层相关于该第一客户虚拟机器。7.如权利要求4所述的虚拟处理装置,其特征在于,该装置驱动程序与该显示及桌面管理单元设置于一主机核心层,该主机核心层相关于该主机作业系统。8.如权利要求4所述的虚拟处理装置,其特征在于,映射后的该图形应用程序经由一虚拟插槽传送至该装置驱动程序。9.如权利要求1所述的虚拟处理装置,其特征在于,该主机作业系统的一主机桌面环境配置该显示器代号及该桌面代号予该第一客户虚拟机器,并且该显示及桌面管理单元传送该显示器代号及该桌面代号至该第一客户虚拟机器的一客户桌面环境。10.如权利要求9所述的虚拟处理装置,其特征在于,该第一虚拟桌面与该预设桌面配置于一预设显示器,该第一操作介面根据该显示器代号及该桌面代号与该主机操作介面切换显示于该预设显示器。

技术总结
本揭示提供一种虚拟处理装置,用于控制第一客户虚拟机器的第一操作介面的显示。在虚拟处理装置的各元件中,显示及桌面产生单元用于接收图形应用程序并产生建立虚拟桌面命令,据以建立第一虚拟桌面以全荧幕显示第一操作介面。视窗管理单元用于根据图形应用程序设定第一操作介面显示于第一虚拟桌面的显示位置。显示及桌面管理单元用于设定相关于第一客户虚拟机器的显示器代号及桌面代号。第一客户虚拟机器与主机作业系统同时运作,并且第一操作介面与主机作业系统的主机操作介面切换显示于至少一个显示器。至少一个显示器。至少一个显示器。


技术研发人员:陈冠儒 杨朝光
受保护的技术使用者:宏碁股份有限公司
技术研发日:2022.02.10
技术公布日:2023/8/24
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐