[go: up one dir, main page]

CN114371906A - 资源整合系统及资源整合方法 - Google Patents

资源整合系统及资源整合方法 Download PDF

Info

Publication number
CN114371906A
CN114371906A CN202011096856.5A CN202011096856A CN114371906A CN 114371906 A CN114371906 A CN 114371906A CN 202011096856 A CN202011096856 A CN 202011096856A CN 114371906 A CN114371906 A CN 114371906A
Authority
CN
China
Prior art keywords
operating system
external device
external
resource
unit
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.)
Withdrawn
Application number
CN202011096856.5A
Other languages
English (en)
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.)
Acer Inc
Original Assignee
Acer Inc
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 Acer Inc filed Critical Acer Inc
Priority to CN202011096856.5A priority Critical patent/CN114371906A/zh
Publication of CN114371906A publication Critical patent/CN114371906A/zh
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45579I/O management, e.g. providing access to device drivers or storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

一种资源整合系统及一种资源整合方法,适用于一虚拟环境。资源整合方法的步骤包含:通过一桥接模块使一本机的一本机作业系统(Host operation system)与一外部装置沟通,并取得外部装置信息;以及通过一接收模块接收一客作业系统(guest operation system)传来的一存取指令到本机,接收来自本机的一硬件处理结果,并选择性地将存取指令通过桥接模块传送到外部装置及接收来自外部装置的硬件处理结果;其中,硬件处理结果对应于存取指令;其中,本机于本机作业系统上运行虚拟环境,虚拟环境中运行客作业系统,客作业系统运行一应用程序,应用程序用以发出存取指令。

Description

资源整合系统及资源整合方法
技术领域
本发明涉及一种整合系统,特别涉及一种适用于一虚拟环境的资源整合系统及资源整合方法。
背景技术
电竞游戏仍以运行在Windows作业系统版本为大宗,目前大型电竞公司(例如Valve)购买6500个Windows作业系统版本游戏欲将以Linux平台运行。
由此可见,在能够运行Linux的平台上玩Windows作业系统版本的游戏,逐渐成为未来趋势。Windows作业系统版本的游戏或程序,要在Chromebook或Linux作业系统平台上执行,若仅以模拟的工具程序执行,因所有的应用程序接口(Application ProgrammingInterface,API)和执行时期(Run time)集合在一起,执行时直接存取Linux平台的作业系统,此方法的稳定度不高,易造成程序无法运行(Crash),因此业界大多再加上虚拟机器(Virtual Machine)加以保护。
然而,在虚拟机器上运行电竞游戏与直接在Windows作业系统上运行电竞游戏在效能上仍有差异,因此,如何在兼顾稳定性与游戏体验,已成为本领域需解决的问题之一。
发明内容
为了解决上述的问题,本公开内容的一实施方式提供了一种资源整合系统。资源整合系统适用于一虚拟环境,资源整合系统包含一桥接模块以及一接收模块。桥接模块用以使一本机的一本机作业系统(Host operation system)与一外部装置沟通,并取得外部装置信息。接收模块用以接收一客作业系统(guest operation system)传来的一存取指令到本机,接收来自本机的一硬件处理结果,并选择性地将存取指令通过桥接模块传送到外部装置及接收来自外部装置的硬件处理结果。其中,硬件处理结果对应于存取指令。其中,本机于本机作业系统上运行虚拟环境,虚拟环境中运行客作业系统,客作业系统运行一应用程序,应用程序用以发出存取指令。
本发明的又一实施方式是于提供一种资源整合方法,适用于一虚拟环境。资源整合方法的步骤包含:通过一桥接模块使一本机的一本机作业系统(Host operationsystem)与一外部装置沟通,并取得外部装置信息;以及通过一接收模块接收一客作业系统(guest operation system)传来的一存取指令到本机,接收来自本机的一硬件处理结果,并选择性地将存取指令通过桥接模块传送到外部装置及接收来自外部装置的硬件处理结果;其中,硬件处理结果对应于存取指令;其中,本机于本机作业系统上运行虚拟环境,虚拟环境中运行客作业系统,客作业系统运行一应用程序,应用程序用以发出存取指令。
因此,资源整合系统及资源整合方法在进行渲染或其他操作的机制中,通过桥接模块与接收模块的机制,让原本的系统在通过与外部装置连接之后,使系统资源加以整合,让虚拟环境下的客作业系统能使用较多的系统资源,如多颗处理器、图形处理器或是较大的存储器,使得在客作业系统运行应用程序时的效能与使用者体验得以提升。
附图说明
图1是依照本发明一实施例示出资源整合系统的示意图。
图2是依照本发明一实施例示出资源整合系统的示意图。
图3A~图3B是依照本发明一实施例示出资源整合方法的流程图。
图4是依照本发明一实施例示出资源整合系统的示意图。
符号说明
100、200、400:资源整合系统
VM:虚拟机器
Guest OS:客作业系统
10:应用程序
20:硬件存取应用程序接口
22、24:半虚拟化图形处理器
Host OS:本机作业系统
60:硬件加速应用程序接口
70:本机核心
72:渲染管理驱动器
82:通用序列总线
84:网络接口
87:图像存储器
88:图形处理器
VE:虚拟环境
30、40:虚拟化装置
50:硬件存取程序库
52:桥接模块
54:接收模块
80:硬件层
86:存储器与视频随机存取存储器
89:处理器
300:资源整合方法
310~332:步骤
90、92:外部装置
521:连接单元
522:虚拟资源单元
523:实体资源单元
541:资源整合单元
542:装置虚拟化单元
543:汇整单元
544:存取单元
具体实施方式
以下说明为完成发明的优选实现方式,其目的在于描述本发明的基本构思,但并不用以限定本发明。实际的发明内容必须参考之后的权利要求范围。
必须了解的是,使用于本说明书中的“包含”、“包括”等词,是用以表示存在特定的技术特征、数值、方法步骤、作业处理、元件以及/或组件,但并不排除可加上更多的技术特征、数值、方法步骤、作业处理、元件、组件,或以上的任意组合。
于权利要求中使用如“第一”、“第二”、“第三”等词是用来修饰权利要求中的元件,并非用来表示之间具有优先权顺序,先行关系,或者是一个元件先于另一个元件,或者是执行方法步骤时的时间先后顺序,仅用来区别具有相同名字的元件。
请参照图1,图1是依照本发明一实施例示出资源整合系统100的示意图。如图1所示,资源整合系统100是将本机的本机作业系统(Host operation system)Host OS上架构虚拟机器VM,虚拟机器VM上再运行一个客作业系统(guest operation system)Guest OS。应用程序10都在虚拟机器VM环境下运行,虚拟机器VM与客作业系统Guest OS都有半虚拟化图形处理器(Virtio-GPU)22、24。其中,半虚拟化(Virtio)的方法是已知技术,用以对客作业系统Guest OS进行一定的修改(如,安装相应的驱动程序),能够对虚拟机器的输入/输出效能进行大幅的提升。
当要进行渲染(rendering)时,应用程序10发出请求(渲染的相关执行指令)到硬件存取应用程序接口(Application Programming Interface,API)20,硬件存取应用程序接口20将请求传送到半虚拟化图形处理器22,半虚拟化图形处理器22再将请求传送到半虚拟化图形处理器24,半虚拟化图形处理器24会将请求传递至本机的硬件加速应用程序接口(Hardware Acceleration API)60,硬件加速应用程序接口60将请求传到本机核心(kernel)70的渲染管理驱动器(Driver Render Manager Driver,DRM)72,渲染管理驱动器72将请求传送到硬件层80中的图形处理器88跟图像存储器87,图形处理器88主要进行渲染工作,并将渲染结果依传送请求的路径回传至客作业系统Guest OS,客作业系统Guest OS将画面呈现于显示器上。
其中,硬件加速应用程序接口60为加速API(现有技术可使用OpenGL与Vulkan以实现之)。
由上述可看出,进行硬件存取与画面呈现的信息传输之间都被虚拟机器VM包覆,上下层指令传递,都需要再转换。图1的架构安全性高,但是效能受到限制,要打通中间的隔阂,又不牺牲原本的安全性,图1的架构是难以达到。
因此,本发明提出图2~图4所示的资源整合系统200、资源整合方法300及资源整合系统400,可以通过本机取得来自外部实体装置与虚拟化装置,进行资源整合,再实现至虚拟化环境里的客作业系统Guest OS,让客作业系统Guest OS执行应用程序10时达到效能与可用资源的提升。
请参阅图2,图2是依照本发明一实施例示出资源整合系统200的示意图。于一实施例中,资源整合系统200包含一桥接模块52及一接收模块54。桥接模块52及接收模块54位于本机的一硬件存取程序库50中。
于一实施例中,桥接模块52可以被实施为例如为微控制单元(microcontroller)、微处理器(microprocessor)、数字信号处理器(digital signal processor)、特殊应用集成电路(application specific integrated circuit,ASIC)或一逻辑电路。于一实施例中,桥接模块52可以由软件或固件实现之。
于一实施例中,接收模块54可以被实施为例如为微控制单元、微处理器、数字信号处理器、特殊应用集成电路或一逻辑电路。于一实施例中,接收模块54可以由软件或固件实现之。
于一实施例中,桥接模块52用以使一本机的一本机作业系统Host OS与一外部装置(例如外部装置90、92)沟通,并取得外部装置信息。
于一实施例中,当外部装置90、92与本机的通用序列总线(Universal SerialBus,USB)82及/或网络接口84通信耦接时,本机核心70会将外部装置90、92的外部装置信息传给桥接模块52。
于一实施例中,外部装置90、92例如为手机、平板、笔记本电脑、服务器…等电子装置。
于一实施例中,外部装置信息例如为外部装置90、92的存储器大小、存储装置大小、处理器相关信息、是否有作业系统、是否有虚拟环境或虚拟装置…等软件及/或硬件信息。
于一实施例中,接收模块54用以接收一客作业系统Guest OS传来的一存取指令到本机,接收来自本机的一硬件处理结果,并选择性地将存取指令通过桥接模块52传送到外部装置90、92及接收来自外部装置90、92的硬件处理结果;其中,硬件处理结果对应于存取指令。
于一实施例中,本机于本机作业系统Host OS上运行虚拟环境VE(例如以虚拟机器实现之),虚拟环境VE中运行客作业系统Guest OS,客作业系统Guest OS运行一应用程序10,应用程序10用以发出存取指令。
例如,应用程序10欲进行渲染时,将渲染指令(视为存取指令)及相关信息传给硬件存取应用程序接口20,硬件存取应用程序接口20将渲染指令及相关信息传给虚拟化装置30,虚拟化装置30将渲染指令及相关信息传给虚拟化装置40,虚拟化装置40将渲染指令及相关信息传给硬件存取程序库50,硬件存取程序库50将渲染指令及相关信息传给硬件加速应用程序接口60,硬件加速应用程序接口60将渲染指令及相关信息传给本机核心70,本机核心70将渲染指令及相关信息传给图形处理器88、存储器与视频随机存取存储器86及处理器89,图形处理器88主要进行渲染工作,图像存储器87可以暂存与渲染相关的信息,处理器89可以选择性地协助运算,图形处理器88将渲染结果依传送请求的路径回传至客作业系统Guest OS,客作业系统Guest OS将画面呈现给使用者。
其中,桥接模块52与接收模块54位于本机的一硬件存取程序库50中,硬件存取程序库50介于虚拟环境VE中的一虚拟化装置40与本机的一硬件加速应用程序接口60之间。关于硬件存取程序库50内部的运行方式,将于图3~图4对应的说明段落叙述之。
请一并参阅图3A~图3B及4图,图3A~图3B是依照本发明一实施例示出资源整合方法300的流程图。图4是依照本发明一实施例示出资源整合系统400的示意图。
于图4中,桥接模块52中包含一连接单元521、一虚拟资源单元522及一实体资源单元523,接收模块54包含一资源整合单元541、一装置虚拟化单元542、一汇整单元543及一存取单元544。
于一实施例中,连接单元521、虚拟资源单元522、实体资源单元523、资源整合单元541、装置虚拟化单元542、汇整单元及存取单元544可以分别被实施为例如为微控制单元、微处理器、数字信号处理器、特殊应用集成电路或一逻辑电路。于一实施例中,连接单元521、虚拟资源单元522、实体资源单元523、资源整合单元541、装置虚拟化单元542、汇整单元及存取单元544可以由软件或固件实现之。
于步骤310中,连接单元521用以从本机的一本机核心70接收外部装置信息。
于一实施例中,当外部装置90、92与本机的通用序列总线82及/或网络接口84通信耦接时,本机核心70会将外部装置90、92的外部装置信息传给桥接模块52中的连接单元521。
于步骤312中,连接单元521依据外部装置信息判断外部装置中是否存在至少一外部作业系统。
于一实施例中,外部装置信息包含一外部作业系统索引(index)。连接单元521可以由外部作业系统索引得知外部作业系统的数量。
若连接单元521依据外部装置信息判断外部装置不存在外部作业系统,则进入步骤314。若连接单元521依据外部装置信息判断外部装置存在至少一外部作业系统,则进入步骤316。
于步骤314中,连接单元521忽略此外部装置,不采用此外部装置。
于一实施例中,当连接单元521判断外部装置信息中的外部作业系统索引等于0,代表此外部装置没有安装作业系统,此外部装置对于客作业系统Guest OS的硬件效能强化与加速并无帮助,因此忽略此外部装置。
于步骤316中,连接单元521判断外部装置中存在至少一外部作业系统的数量是否大于等于2。
当连接单元521判断外部装置中存在至少一外部作业系统的数量并非大于等于2,则进入步骤318。当连接单元521判断外部装置中存在至少一外部作业系统的数量大于等于2,则进入步骤324。
于步骤318中,实体资源单元522汇整来自连接单元521的实体装置的资源,以产生一实体装置信息到接收模块54。
当连接单元521判断外部装置中只有一个外部作业系统(外部作业系统的数量等于1),代表外部装置只有本机作业系统Host OS并且无虚拟化设备,外部装置内部的元件都是实体装置。此时连接单元521针对外部装置所有的元件依类别进行收集,实体资源单元523再进行汇总,再传送至装置虚拟化单元542进行虚拟化,最后再合并列举至客作业系统Guest OS。
于一实施例中,当连接单元521判断至少一外部作业系统的数量为1时,代表外部装置为一实体装置,例如为一个8GB(Gigabyte)的存储器。
于一实施例中,外部装置中包含多个实体装置,例如,外部装置有两条8GB的存储器及一个处理器,则实体资源单元523在逻辑上汇整为16GB的存储器。
于一实施例中,连接单元521针对外部装置所有的元件依类别进行收集,实体资源单元523再进行汇总(例如有两条8GB的存储器,由于两者存储器属于同类型实体装置,因此汇总成16GB的存储器),以产生一实体装置信息,例如,实体装置信息记录此一或多个实体装置总共包含16GB的存储器及一个处理器。实体资源单元523对于外部所有的元件依类别进行汇总后,再将实体装置信息记录传送至装置虚拟化单元542进行虚拟化,虚拟化单元542将虚拟化后的虚拟化装置合并列举至客作业系统Guest OS。
于一实施例中,实体资源单元523对于本机的硬件及/或外部装置中的实体装置再进行汇总,再传送至装置虚拟化单元542进行虚拟化,将虚拟化后的虚拟化装置合并列举至客作业系统Guest OS。
于步骤320中,装置虚拟化单元542接收来自实体资源单元523的实体装置信息,将外部装置中同类型的实体装置进行虚拟化,以产生对应实体装置的虚拟化装置,并传送对应实体装置的一虚拟化信息到汇整单元543。
于一实施例中,装置虚拟化单元542由实体装置信息得知一外部装置有16GB的存储器及一个处理器,则装置虚拟化单元542将16GB的存储器进行虚拟化,以产生对应16GB的虚拟化存储器,并将16GB的虚拟化存储器的信息传送到汇整单元543;同样地,装置虚拟化单元542将处理器进行虚拟化,以产生对应处理器的虚拟化处理器,并对应处理器的虚拟化处理器传送到汇整单元543。
其中,可以应用已知的沙盒(Sandbox)技术以对实体装置进行虚拟化。沙盒通常严格控制其中的程序所能存取的资源,比如,沙盒可以提供用后即回收的磁盘及存储器空间。在沙盒中,网络存取、对真实系统的存取、对输入装置的读取通常被禁止或是严格限制。从这个角度来说,沙盒属于虚拟化的一种。然,本公开虚拟化技术并不仅限于使用沙盒。
于步骤322中,汇整单元543将所有的虚拟化装置列举到客作业系统Guest OS,使客作业系统Guest OS得知各类型的虚拟化装置所对应的系统资源。
于一实施例中,汇整单元543将所有的虚拟化装置列举到虚拟化装置40,虚拟化装置40再将所有的虚拟化装置列举到客作业系统Guest OS。
于步骤324中,连接单元521判断外部装置92中同类型装置的名字是否不一样。
若连接单元521判断外部装置92中同类型装置的名字一样,则进入步骤318。若连接单元521判断外部装置92中的同类型装置名字不一样,则进入步骤328。
于一实施例中,当该连接单元521判断至少一外部作业系统的数量大于等于2时,代表至少一外部作业系统中包含至少一外部虚拟环境,外部装置92包含一实体装置及/或一虚拟化装置。于一实施例中,外部虚拟环境中也会有一些虚拟化装置。
于一实施例中,若连接单元521判断外部装置92中同类型装置的名字不一样,代表一个可能是实体装置,另一个是虚拟化装置。例如,外部装置92中的两个存储器名字不同,则一个是虚拟存储器,另一个是实体存储器,则存储器(实体装置)进入步骤318,虚拟存储器(虚拟化装置)进入步骤328。
更具体而言,如果作业系统索引大于等于2,代表外部装置92分为本机作业系统Host OS与客作业系统Guest OS,若要再进一步找出是否有虚拟化装置时,针对同一类型装置的名称不一样者中的虚拟化装置(代表可能两个装置都是虚拟化装置,或是一个装置是虚拟化装置另一个是实体装置),记录至虚拟资源单元522,再传送虚拟化装置至资源整合单元541,进行将虚拟化装置进行系统资源整并,再通过汇整单元543列举到上层客作业系统Guest OS。另一方面,若外部装置92同时包含实体装置,则需要被虚拟化后,再列举至客作业系统Guest OS,因此进入步骤318。
于一实施例中,当同一类型装置的名称一样时,例如,外部装置92中的两个处理器名字相同,代表这些装置是实体装置,需要被虚拟化后,再列举至客作业系统Guest OS,因此进入步骤318。
于步骤328中,虚拟资源单元522汇总来自连接单元521的虚拟化装置的资源,以产生一虚拟化装置信息,并传送虚拟化装置信息到接收模块54。
于一实施例中,假设外部装置90中有两条8GB的虚拟存储器及一虚拟处理器,外部装置92中有两条8GB的虚拟存储器及3个虚拟处理器,则虚拟资源单元522汇总外部装置90中有虚拟存储器16GB及一虚拟处理器,外部装置92中有16G的虚拟存储器及3个虚拟处理器,以产生虚拟化装置信息,并传送虚拟化装置信息到资源整合单元541。
于步骤330中,资源整合单元541接收来自虚拟资源单元522的虚拟化装置信息,依据虚拟化装置信息将外部装置91、92中同类型的虚拟化装置进行资源合并,并将一合并结果传送到一汇整单元543。
于一实施例中,资源整合单元541计算外部装置91、92中的虚拟化装置与本机中的一硬件装置合并后的资源,以产生合并结果;其中,本机中的硬件装置与虚拟化装置为相同类型的装置。
于一实施例中,假设虚拟化装置信息中的内容为:外部装置90中有虚拟存储器16GB及一虚拟处理器,外部装置92中有虚拟存储器16GB及3个虚拟处理器。资源整合单元541将外部装置90、92中同类型的虚拟化装置进行资源合并,即外部装置90、92中虚拟存储器32GB及4个虚拟处理器,并将合并结果传送到汇整单元543。
于步骤332中,汇整单元543将所有的虚拟化装置列举到客作业系统Guest OS,使客作业系统Guest OS得知各类型的虚拟化装置所对应的系统资源。
于一实施例中,客作业系统Guest OS可以得知整个客作业系统Guest OS得知资源整合系统400中每个类型的虚拟化装置对应的系统资源(例如有虚拟存储器32GB及4个虚拟处理器)。
于一实施例中,汇整单元543中包含所有类型的虚拟化装置的信息。
于一实施例中,存取单元544可以与连接单元521电性耦接,以互相存取数据。
因此,资源整合系统及资源整合方法在进行渲染或其他操作的机制中,通过桥接模块与接收模块的机制,让原本的系统在通过与外部装置连接之后,使系统资源加以整合,让虚拟环境下的客作业系统能使用较多的系统资源,如多颗处理器、图形处理器或是较大的存储器,使得在客作业系统运行应用程序时的效能与使用者体验得以提升。
本发明的方法,或特定形态或其部分,可以以程序码的形态存在。程序码可以包含于实体媒体,如软盘、光盘、硬盘、或是任何其他机器可读取(如电脑可读取)存储媒体,亦或不限于外在形式的电脑程序产品,其中,当程序码被机器(如电脑)载入且执行时,此机器变成用以参与本发明的装置。程序码也可以通过一些传送媒体,如电线或电缆、光纤、或是任何传输形态进行传送,其中,当程序码被机器(如电脑)接收、载入且执行时,此机器变成用以参与本发明的装置。当在一般用途处理单元实作时,程序码结合处理单元提供一操作类似于应用特定逻辑电路的独特装置。
虽然本发明已以实施方式公开如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的构思和范围内,当可作各种的变动与润饰,因此本发明的保护范围当视权利要求所界定者为准。

Claims (10)

1.一种资源整合系统,适用于一虚拟环境,该资源整合系统包含:
一桥接模块,用以使一本机的一本机作业系统与一外部装置沟通,并取得外部装置信息;以及
一接收模块,用以接收一客作业系统传来的一存取指令到该本机,接收来自该本机的一硬件处理结果,并选择性地将该存取指令通过该桥接模块传送到该外部装置及接收来自该外部装置的该硬件处理结果;其中,该硬件处理结果对应于该存取指令;
其中,该本机于该本机作业系统上运行该虚拟环境,该虚拟环境中运行该客作业系统,该客作业系统运行一应用程序,该应用程序用以发出该存取指令。
2.如权利要求1所述的资源整合系统,其中,该桥接模块与该接收模块位于该本机的一硬件存取程序库中,该硬件存取程序库介于该虚拟环境中的一虚拟化装置与该本机的一硬件存取应用程序接口之间。
3.如权利要求1所述的资源整合系统,其中,该桥接模块中包含:
一连接单元,用以从该本机的一本机核心接收该外部装置信息,并依据该外部装置信息判断该外部装置中是否存在至少一外部作业系统;
若该连接单元判断该外部装置中不存在该至少一外部作业系统,则不采用该外部装置;
若该连接单元判断该外部装置中存在该至少一外部作业系统,则判断该外部装置中存在该至少一外部作业系统的数量;其中,当该连接单元判断该至少一外部作业系统的数量为1时,代表该外部装置为一实体装置;当该连接单元判断该至少一外部作业系统的数量大于等于2时,代表该至少一外部作业系统中包含至少一外部虚拟环境,该外部装置包含一实体装置或一虚拟化装置。
4.如权利要求3所述的资源整合系统,其中,该桥接模块中包含:
一虚拟资源单元,用以汇总来自该连接单元的该虚拟化装置的资源,以产生一虚拟化装置信息,并传送该虚拟化装置信息到该接收模块;以及
一实体资源单元,用以汇整来自该连接单元的该实体装置的资源,以产生一实体装置信息到该接收模块。
5.如权利要求4所述的资源整合系统,其中,该接收模块包含:
一资源整合单元,用以接收来自该虚拟资源单元的该虚拟化装置信息,依据该虚拟化装置信息将该外部装置中同类型的该虚拟化装置进行资源合并,并将一合并结果传送到一汇整单元;以及
一装置虚拟化单元,用以接收来自该实体资源单元的该实体装置信息,将该外部装置中同类型的该实体装置进行虚拟化,以产生对应该实体装置的该虚拟化装置,并传送对应该实体装置的一虚拟化信息到该汇整单元。
6.如权利要求5所述的资源整合系统,其中,该汇整单元将所有的该虚拟化装置列举到该客作业系统,使该客作业系统得知各类型的该虚拟化装置所对应的系统资源。
7.如权利要求6所述的资源整合系统,其中,该汇整单元中包含所有类型的该虚拟化装置的信息。
8.如权利要求5所述的资源整合系统,其中,该资源整合单元计算该外部装置中的该虚拟化装置与该本机中的一硬件装置合并后的资源,以产生该合并结果;其中,该本机中的该硬件装置与该虚拟化装置为相同类型的装置。
9.一种资源整合方法,适用于一虚拟环境,该资源整合方法包含:
通过一桥接模块使一本机的一本机作业系统与一外部装置沟通,并取得外部装置信息;以及
通过一接收模块接收一客作业系统传来的一存取指令到该本机,接收来自该本机的一硬件处理结果,并选择性地将该存取指令通过该桥接模块传送到该外部装置及接收来自该外部装置的该硬件处理结果;其中,该硬件处理结果对应于该存取指令;
其中,该本机于该本机作业系统上运行该虚拟环境,该虚拟环境中运行该客作业系统,该客作业系统运行一应用程序,该应用程序用以发出该存取指令。
10.如权利要求9所述的资源整合方法,其中,该桥接模块与该接收模块位于该本机的一硬件存取程序库中,该硬件存取程序库介于该虚拟环境中的一虚拟化装置与该本机的一硬件存取应用程序接口之间。
CN202011096856.5A 2020-10-14 2020-10-14 资源整合系统及资源整合方法 Withdrawn CN114371906A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011096856.5A CN114371906A (zh) 2020-10-14 2020-10-14 资源整合系统及资源整合方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011096856.5A CN114371906A (zh) 2020-10-14 2020-10-14 资源整合系统及资源整合方法

Publications (1)

Publication Number Publication Date
CN114371906A true CN114371906A (zh) 2022-04-19

Family

ID=81137892

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011096856.5A Withdrawn CN114371906A (zh) 2020-10-14 2020-10-14 资源整合系统及资源整合方法

Country Status (1)

Country Link
CN (1) CN114371906A (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101398768A (zh) * 2008-10-28 2009-04-01 北京航空航天大学 一种分布式虚拟机监视器系统的构建方法
US20100191881A1 (en) * 2009-01-23 2010-07-29 Computer Associates Think, Inc. System and Method for Reserving and Provisioning IT Resources
TW201337766A (zh) * 2012-03-15 2013-09-16 Hon Hai Prec Ind Co Ltd 虛擬機資源整合系統及方法
WO2014031833A1 (en) * 2012-08-23 2014-02-27 Citrix Systems, Inc. Specialized virtual machine to virtualize hardware resource for guest virtual machines
US20140176583A1 (en) * 2012-12-20 2014-06-26 Vmware, Inc. Dynamic allocation of physical graphics processing units to virtual machines
TW201638777A (zh) * 2015-04-30 2016-11-01 捷鼎國際股份有限公司 用以存取虛擬機器之電腦系統及方法
CN106201720A (zh) * 2016-07-11 2016-12-07 广州高能计算机科技有限公司 虚拟对称多处理虚拟机创建方法、数据处理方法及系统
US20180089881A1 (en) * 2016-09-29 2018-03-29 Stephen P. Johnson Method and apparatus for efficient use of graphics processing resources in a virtualized execution environment
CN111522670A (zh) * 2020-05-09 2020-08-11 中瓴智行(成都)科技有限公司 一种用于Android系统的GPU虚拟化方法、系统及介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101398768A (zh) * 2008-10-28 2009-04-01 北京航空航天大学 一种分布式虚拟机监视器系统的构建方法
US20100191881A1 (en) * 2009-01-23 2010-07-29 Computer Associates Think, Inc. System and Method for Reserving and Provisioning IT Resources
TW201337766A (zh) * 2012-03-15 2013-09-16 Hon Hai Prec Ind Co Ltd 虛擬機資源整合系統及方法
WO2014031833A1 (en) * 2012-08-23 2014-02-27 Citrix Systems, Inc. Specialized virtual machine to virtualize hardware resource for guest virtual machines
US20140176583A1 (en) * 2012-12-20 2014-06-26 Vmware, Inc. Dynamic allocation of physical graphics processing units to virtual machines
TW201638777A (zh) * 2015-04-30 2016-11-01 捷鼎國際股份有限公司 用以存取虛擬機器之電腦系統及方法
CN106201720A (zh) * 2016-07-11 2016-12-07 广州高能计算机科技有限公司 虚拟对称多处理虚拟机创建方法、数据处理方法及系统
US20180089881A1 (en) * 2016-09-29 2018-03-29 Stephen P. Johnson Method and apparatus for efficient use of graphics processing resources in a virtualized execution environment
CN111522670A (zh) * 2020-05-09 2020-08-11 中瓴智行(成都)科技有限公司 一种用于Android系统的GPU虚拟化方法、系统及介质

Similar Documents

Publication Publication Date Title
US8830228B2 (en) Techniques for enabling remote management of servers configured with graphics processors
US8874803B2 (en) System and method for reducing communication overhead between network interface controllers and virtual machines
US7971203B2 (en) Method, apparatus and system for dynamically reassigning a physical device from one virtual machine to another
US9069622B2 (en) Techniques for load balancing GPU enabled virtual machines
US8612633B2 (en) Virtual machine fast emulation assist
JP7592858B2 (ja) チップ・システム、仮想割り込み処理方法および対応する装置
US20120054740A1 (en) Techniques For Selectively Enabling Or Disabling Virtual Devices In Virtual Environments
US8132167B2 (en) Context based virtualization
US20090265708A1 (en) Information Processing Apparatus and Method of Controlling Information Processing Apparatus
US8145471B2 (en) Non-destructive simulation of a failure in a virtualization environment
Lee et al. VADI: GPU virtualization for an automotive platform
CN103984591A (zh) 计算机虚拟化系统的PCI设备INTx中断投递方法
US11392512B2 (en) USB method and apparatus in a virtualization environment with multi-VM
JP2021532495A (ja) 仮想マシン・メモリの安全なアクセス
CN115202827B (zh) 处理虚拟化中断的方法、中断控制器、电子设备和芯片
TWI811560B (zh) 資源整合系統及資源整合方法
US10467078B2 (en) Crash dump extraction of guest failure
WO2022068753A1 (zh) 服务器系统、容器设置方法及装置
US20070038996A1 (en) Remote I/O for virtualized systems
TWI779321B (zh) 資源整合系統及資源整合方法
CN114371906A (zh) 资源整合系统及资源整合方法
CN110383255B (zh) 用于管理对物理设备的客户分区访问的方法和计算设备
US12189726B2 (en) On-demand paging support for confidential computing
US20220027206A1 (en) Resource integration system and resource integration method
CN117555832A (zh) 虚拟机直通PCIe设备的DMA中断配置方法、设备、产品和介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20220419