一種在監(jiān)護儀上安全運行桌面應用程序的系統(tǒng)的制作方法
【技術領域】
[0001]本發(fā)明涉及醫(yī)療技術領域,尤其涉及一種在監(jiān)護儀上安全運行桌面應用程序的系統(tǒng)。
【背景技術】
[0002]在監(jiān)護儀上,為運行Windows桌面應用程序,多采取監(jiān)護儀內置PC機,通過硬件技術使PC機和監(jiān)護儀共用I個顯示屏的方法。該技術需要監(jiān)護儀包含2個主控CPU,I個為監(jiān)護儀專用,另I個為PC專用。2個主控CPU方案的主要缺點有:成本高;整機體積或厚度增加不利于設計美觀和輕便的產(chǎn)品;散熱困難;Β0Μ內容多,維護量大;監(jiān)護儀和PC機之間的數(shù)據(jù)交換困難。
[0003]一般地,增加專用的硬件設備和軟件功能模塊可以解決監(jiān)護儀和PC機的通信問題,但進一步增加了系統(tǒng)復雜度和成本,因此內置PC方案不是最優(yōu)的。一種替代方案是,只用I臺PC,在PC上同時運行監(jiān)護儀和Windows桌面應用程序;由于Windows操作系統(tǒng)本身是面向桌面和服務器領域的操作系統(tǒng),實時性較差,難以滿足監(jiān)護儀的實時性要求,因此該方案可行性較低。
【發(fā)明內容】
[0004]為解決上述技術問題,本發(fā)明通過在物理硬件上虛擬PC系統(tǒng)運行桌面應用軟件,同時直接在物理硬件上運行監(jiān)護儀系統(tǒng)。本發(fā)明提供的技術方案具體如下:
一種在監(jiān)護儀上安全運行桌面應用程序的系統(tǒng),包括:
設置在所述監(jiān)護儀的Windows操作系統(tǒng)和物理硬件之間的硬件虛擬器,所述硬件虛擬器用于虛擬出一虛擬硬件,并控制該虛擬硬件以及所述物理硬件的運行;
所述監(jiān)護儀的Windows操作系統(tǒng)在所述虛擬硬件上運行桌面應用程序,其與所述虛擬硬件和所述桌面應用程序構成PC系統(tǒng);所述監(jiān)護儀的監(jiān)護儀系統(tǒng)獨立于所述Windows操作系統(tǒng),運行在所述物理硬件之上。
[0005]其中,所述硬件虛擬器內置操作系統(tǒng)或使用外置的宿主操作系統(tǒng)。
[0006]其中,所述硬件虛擬器為虛擬機管理器,其虛擬出的虛擬硬件為虛擬機。
[0007]其中,所述硬件虛擬器為仿真器,其虛擬出的虛擬硬件為仿真硬件。
[0008]其中,所述監(jiān)護儀的監(jiān)護儀系統(tǒng)與所述PC系統(tǒng)使用相互隔離的不同CPU。
[0009]其中,所述虛擬機管理器通過控制CPU使用時間配額的方式隔離所述監(jiān)護儀系統(tǒng)與所述PC系統(tǒng)在不同的時間使用單路內核的同一 CPU。
[0010]其中,所述虛擬機管理器通過將所述監(jiān)護儀系統(tǒng)與所述PC系統(tǒng)運行的程序分別綁定在CPU的不同核心或不同的CPU的方式隔離所述監(jiān)護儀系統(tǒng)與所述PC系統(tǒng)使用CPU。
[0011]其中,所述監(jiān)護儀的監(jiān)護儀系統(tǒng)與所述PC系統(tǒng)使用存儲空間相互隔離的外部存儲器。
[0012]其中,所述監(jiān)護儀的監(jiān)護儀系統(tǒng)與所述PC系統(tǒng)使用接口相互隔離的網(wǎng)絡控制器。
[0013]其中,所述監(jiān)護儀的監(jiān)護儀系統(tǒng)與所述PC系統(tǒng)共享或獨立使用屏幕或輸入設備。
[0014]實施本發(fā)明,監(jiān)護儀系統(tǒng)和windows桌面應用程序既共享了物理硬件資源,降低了系統(tǒng)復雜度和成本;又能保持相互隔離,使得桌面應用軟件的運行和異常不會影響監(jiān)護儀系統(tǒng)的可靠性和實時性。
【附圖說明】
[0015]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0016]圖1為本發(fā)明提供的一種在監(jiān)護儀上安全運行桌面應用程序的系統(tǒng)實施例一的結構圖。
[0017]圖2為本發(fā)明提供的一種在監(jiān)護儀上安全運行桌面應用程序的系統(tǒng)實施例二的結構圖。
[0018]圖3為本發(fā)明提供的一種在監(jiān)護儀上安全運行桌面應用程序的系統(tǒng)實施例三的結構圖。
[0019]圖4為本發(fā)明提供的一種在監(jiān)護儀上安全運行桌面應用程序的系統(tǒng)的工作流程實施例一的流程圖。
[0020]圖5為本發(fā)明提供的一種在監(jiān)護儀上安全運行桌面應用程序的系統(tǒng)中為虛擬機分配資源的結構圖。
[0021]圖6、圖7為本發(fā)明提供的一種在監(jiān)護儀上安全運行桌面應用程序的系統(tǒng)中的CPU隔離的流程圖。
[0022]圖8為本發(fā)明提供的一種在監(jiān)護儀上安全運行桌面應用程序的系統(tǒng)中的從虛擬機中的Windows應用程序到物理硬件的一次完整訪存操作過程示意圖;
圖9為本發(fā)明提供的一種在監(jiān)護儀上安全運行桌面應用程序的系統(tǒng)中的為外部存儲器隔離的結構圖。
[0023]圖10為本發(fā)明提供的一種在監(jiān)護儀上安全運行桌面應用程序的系統(tǒng)中的外部存儲器隔離的實施流程圖。
[0024]圖11為本發(fā)明提供的一種在監(jiān)護儀上安全運行桌面應用程序的系統(tǒng)中的網(wǎng)絡接口隔離的結構圖。
[0025]圖12為本發(fā)明提供的一種在監(jiān)護儀上安全運行桌面應用程序的系統(tǒng)中的屏幕和輸入設備的隔離或非隔離的流程圖。
【具體實施方式】
[0026]本發(fā)明提供的一種在監(jiān)護儀上安全運行桌面應用程序的系統(tǒng),包括:
設置在所述監(jiān)護儀的Windows操作系統(tǒng)和物理硬件之間的硬件虛擬器,所述硬件虛擬器用于虛擬出一虛擬硬件,并控制該虛擬硬件以及物理硬件的運行;
所述監(jiān)護儀的Windows操作系統(tǒng)在所述虛擬硬件上運行桌面應用程序,其與所述虛擬硬件和所述桌面應用程序構成模擬PC系統(tǒng);所述監(jiān)護儀的監(jiān)護儀系統(tǒng)獨立于所述Windows操作系統(tǒng),運行在所述物理硬件上,其中,所述硬件虛擬器內置操作系統(tǒng)或使用外置的宿主操作系統(tǒng)。
[0027]在具體實現(xiàn)中,所述硬件虛擬器可以為虛擬機管理器,其虛擬的硬件為虛擬機。例如,存在為物理硬件HardwareA編譯的軟件SoftwareA,和另一物理硬件HardwareB,HardwareA和HardwareB指令集和中斷系統(tǒng)可以是兼容的,也可以不是。在物理硬件HardwareB上增加一個軟件層可模擬HardwareA的指令集、中斷和物理地址空間,從而SoftwareA能通過直接運行在該軟件層的方式間接運行在HardwareB上。增加的這層軟件被稱為虛擬機管理器(Virtual Machine Monitor,VMM),被模擬的HardwareA資源被合稱為虛擬機(Virtual Machine, VM), HardwareB被稱為物理硬件,SoftwareA被稱為客戶軟件。VMM通過VM提供各種虛擬硬件資源,運行在之上的SoftwareA可將其視為完整的硬件環(huán)境。
[0028]在另一種實現(xiàn)方式中,所述硬件虛擬器為仿真器,其虛擬的硬件為仿真硬件。仿真方式是指,在客戶軟件執(zhí)行之前,虛擬機管理器把客戶軟件SoftwareA的二進制鏡像中適用于硬件HardwareA指令集的指令翻譯成適用于硬件HardwareB指令集的指令,再把翻譯后的指令交給硬件HardwareB執(zhí)行;所謂直接虛擬方式是指,由于HardwareA和HardwareB指令集兼容,因此SoftwareA的可以直接在HardwareB上執(zhí)行,前提是,SoftwareA所需要的其它硬件資源也已被VMM虛擬出來,如中斷、物理地址空間等。
[0029]以下將分別描述硬件虛擬器的兩種實現(xiàn)方式:
參見圖1,為本發(fā)明提供的在監(jiān)護儀上安全運行桌面應用程序的系統(tǒng)的實施例一的結構示意圖。
[0030]在Windows操作系統(tǒng)10和物理硬件20 (又稱硬件20)之間增加一個系統(tǒng)監(jiān)控程序(虛擬機管理器,VMM) 30。虛擬機管理器30向上層提供物理硬件20的抽象(虛擬機,VM)40,虛擬機管理器30管理所有虛擬機40的運行,虛擬機管理器30可以內置操作系統(tǒng),也可使用外置的宿主操作系統(tǒng),圖1所示為使用外置宿主操作系統(tǒng)80的情形。
[0031]Windows操作系統(tǒng)10運行在虛擬機40之上,Windows操作系統(tǒng)10、虛擬機40和Windows應用程序50構成通常意義的模擬PC系統(tǒng)(PC系統(tǒng)70)。對Windows操作系統(tǒng)10而言,虛擬機40是擁有CPU、內存、系統(tǒng)總線、控制器和各種外設等硬件資源的完整的主機,且這些資源的硬件接口完全兼容Windows操作系統(tǒng),因此,雖然這些硬件資源都是虛擬的,但是Windows操作系統(tǒng)10可以和處理物理硬件20資源一樣處理它們,且Windows操作系統(tǒng)10本身無需任何改動。虛擬機管理器30控制其下層的物理硬件20。物理硬件20包含真實存在的CPU、內存、系統(tǒng)總線、控制器、外設等物理硬件資源。由于虛擬機40具備完整和接口兼容的硬件環(huán)境,因此在不修改Windows操作系統(tǒng)10本身的前提下,可運行已