国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      提供用于虛擬運(yùn)行環(huán)境的獨(dú)立的時(shí)間源的方法和虛擬化軟件的制作方法

      文檔序號(hào):6377659閱讀:239來源:國(guó)知局
      專利名稱:提供用于虛擬運(yùn)行環(huán)境的獨(dú)立的時(shí)間源的方法和虛擬化軟件的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及一種用于為具有至少兩個(gè)虛擬運(yùn)行環(huán)境的數(shù)據(jù)處理設(shè)備的至少一個(gè)實(shí)時(shí)操作系統(tǒng)提供至少兩個(gè)彼此獨(dú)立的時(shí)間源的方法,其中通用操作系統(tǒng)運(yùn)行在所述虛擬運(yùn)行環(huán)境中的第一個(gè)中,并且所述實(shí)時(shí)操作系統(tǒng)運(yùn)行在所述虛擬運(yùn)行環(huán)境中的第二個(gè)中,通過虛擬化軟件(超級(jí)監(jiān)督者(hypervisor))管理所述虛擬運(yùn)行環(huán)境,并且其中,第一處理器核心分配給所述第一虛擬運(yùn)行環(huán)境,并且第二處理器核心分配給所述第二虛擬運(yùn)行環(huán)境,本發(fā)明還涉及一種用于具有多個(gè)處理器核心、通用操作系統(tǒng)和至少一個(gè)實(shí)時(shí)操作系統(tǒng)的數(shù)據(jù)處理設(shè)備的虛擬化軟件。
      背景技術(shù)
      對(duì)于提出提高的操作安全的要求的自動(dòng)化任務(wù)使用所謂的故障安全的自動(dòng)化系統(tǒng),其中通過技術(shù)措施確保即使在各個(gè)部件失效時(shí)或者發(fā)生故障時(shí)也繼續(xù)確保安全的運(yùn)行或者將設(shè)備等置于安全的狀態(tài)下。用于滿足這樣的要求的重要措施在于,重復(fù)地且彼此獨(dú)立地設(shè)有重要的操作機(jī)構(gòu)或者部件,以至于能夠記錄單獨(dú)的部件中的至少一個(gè)故障。在高度可用的系統(tǒng)中,理想地也能夠借助冗余的備用部件實(shí)現(xiàn)繼續(xù)運(yùn)行。下面,將所謂的時(shí)間源視作為故障安全的自動(dòng)化系統(tǒng)的重要的資源,即提供時(shí)鐘、時(shí)間或者類似的時(shí)間信息的部件,自動(dòng)化程序或者底層操作系統(tǒng)需要所述部件,以便以正確的時(shí)鐘、以正確的速度并且可靠地完成任務(wù)。當(dāng)在現(xiàn)有技術(shù)中常常使用具有所謂的F-CPU的(“故障安全的中央處理單元”)或F-PLC的(“故障安全的可編程邏輯控制器”)特殊的、故障安全的控制裝置,即特別地設(shè)有冗余的部件的可編程邏輯控制器時(shí),越來越多地使用配備有實(shí)時(shí)操作系統(tǒng)并且用于控制任務(wù)和自動(dòng)化任務(wù)的個(gè)人計(jì)算機(jī)或類似的標(biāo)準(zhǔn)化體系結(jié)構(gòu)。即使在例如個(gè)人計(jì)算機(jī)的標(biāo)準(zhǔn)體系結(jié)構(gòu)中原則上也可能的是,為具有相應(yīng)的安全要求的實(shí)時(shí)操作系統(tǒng)提供兩個(gè)彼此獨(dú)立的時(shí)間源。重要的是,兩個(gè)時(shí)間源彼此獨(dú)立,即尤其關(guān)于他們的硬件得出不同的時(shí)鐘源(大多數(shù)基于石英振蕩器)。為此,在個(gè)人計(jì)算機(jī)方面常常一方面使用實(shí)時(shí)時(shí)鐘模塊(常常稱作RTC= "RealTime Clock,實(shí)時(shí)時(shí)鐘”),并且另一方面使用CPU的特殊計(jì)數(shù)器,即所謂的時(shí)間戳計(jì)數(shù)器(TSC)。當(dāng)實(shí)時(shí)時(shí)鐘模塊從為此特別設(shè)置的石英(石英振蕩器)中獲得其時(shí)鐘信號(hào)時(shí),時(shí)間戳計(jì)數(shù)器來源于處理器時(shí)鐘(CPU時(shí)鐘),并且因此與RTC時(shí)鐘無關(guān)。至今為止,以這種方式還已經(jīng)可能的是,為在PC硬件等上實(shí)現(xiàn)的故障安全的自動(dòng)化系統(tǒng)提供兩個(gè)彼此獨(dú)立的時(shí)間源。在控制技術(shù)的領(lǐng)域內(nèi),現(xiàn)在越來越多地使用虛擬化技術(shù)。這意味著,分別具有操作系統(tǒng)的多個(gè)虛擬機(jī)運(yùn)行在一個(gè)相同的硬件平臺(tái)上,其中,操作系統(tǒng)中的至少一個(gè)能夠在所謂的“實(shí)時(shí)條件”下運(yùn)行,并且能夠形成實(shí)現(xiàn)為軟件的“故障安全”的自動(dòng)化部件、即所謂的故障安全的CPU。這提供:對(duì)于這樣的應(yīng)用領(lǐng)域使用具有多個(gè)處理器或者多個(gè)處理器核心的硬件平臺(tái)、所謂的多核CPU的硬件平臺(tái),其中,具有故障安全的實(shí)時(shí)操作系統(tǒng)的虛擬機(jī)例如能夠單獨(dú)地配設(shè)有一個(gè)CPU或者一個(gè)處理器核心。當(dāng)在這種態(tài)勢(shì)下每個(gè)處理器或者每個(gè)處理器核心也具有來源于處理器時(shí)鐘的時(shí)間戳計(jì)數(shù)器時(shí),在這樣的“虛擬化”設(shè)置中產(chǎn)生共同訪問僅一次性存在的資源,特別是例如所謂的RTC模塊的問題。盡管這樣的僅一次性存在的資源的虛擬化原則上是可能的,以至于每個(gè)在虛擬機(jī)中運(yùn)行的單元(“虛擬化操作系統(tǒng)”)獲得訪問并且例如能夠讀取RTC模塊,然而與虛擬化軟件、即所謂的“超級(jí)監(jiān)督者(hypervisor)”的每次交互強(qiáng)制地導(dǎo)致所請(qǐng)求的虛擬機(jī)的執(zhí)行的中斷,這尤其由于由此引起的延遲時(shí)間而導(dǎo)致實(shí)時(shí)性能變差。這尤其涉及下述系統(tǒng),其中多于一個(gè)“虛擬化自動(dòng)化系統(tǒng)”在一個(gè)相同的硬件平臺(tái)上運(yùn)行,以至于所需要的資源、特別是所述時(shí)鐘模塊RTC不能夠單獨(dú)提供給單獨(dú)存在的自動(dòng)化系統(tǒng)。

      發(fā)明內(nèi)容
      因此,本發(fā)明的目的是,為中央資源提供多個(gè)虛擬機(jī),而在訪問所述資源時(shí)不會(huì)導(dǎo)致在執(zhí)行虛擬機(jī)時(shí)的損失。該目的的解決方案的核心思想是,將共同使用的資源的可用信息直接地、即在沒有“跳出”到虛擬化軟件的情況下以可讀的方式提供給虛擬機(jī),其中,通過虛擬化軟件以中斷控制的方式確保所述信息的更新。該目的的解決方案尤其提供了一種用于為具有至少兩個(gè)虛擬運(yùn)行環(huán)境的數(shù)據(jù)處理設(shè)備的至少一個(gè)實(shí)時(shí)操作系統(tǒng)提供至少兩個(gè)彼此獨(dú)立的時(shí)間源的方法和一種用于具有多個(gè)處理器核心、通用操作系統(tǒng)和至少一個(gè)實(shí)時(shí)操作系統(tǒng)的數(shù)據(jù)處理設(shè)備的虛擬化軟件。在此,提出一種用于為具有至少兩個(gè)虛擬運(yùn)行環(huán)境的數(shù)據(jù)處理設(shè)備的至少一個(gè)實(shí)時(shí)操作系統(tǒng)提供至少兩個(gè)彼此獨(dú)立的時(shí)間源的方法,其中,通用操作系統(tǒng)運(yùn)行在虛擬的運(yùn)行環(huán)境中的第一個(gè)中,并且實(shí)時(shí)操作系統(tǒng)運(yùn)行在虛擬運(yùn)行環(huán)境中的第二個(gè)中,其中,通過虛擬化軟件來管理虛擬運(yùn)行環(huán)境,并且其中,第一虛擬運(yùn)行環(huán)境分配有第一處理器核心,并且第二虛擬運(yùn)行環(huán)境分配有第二處理器核心。在此,至少一個(gè)實(shí)時(shí)操作系統(tǒng)單獨(dú)地分配有第一時(shí)間源,其中,數(shù)據(jù)處理設(shè)備具有獨(dú)立于第一時(shí)間源的第二時(shí)間源,其中,第二時(shí)間源配置為用于周期性地產(chǎn)生——在中斷控制器中有利地配置為IP1-初始化信號(hào)(處理器間中斷一初始化)或者配置為另一要單獨(dú)處理的事件的一中斷。在此,具有帶有通用操作系統(tǒng)的虛擬運(yùn)行環(huán)境的第一處理器核心設(shè)置成,使得在每次通過第二時(shí)間源觸發(fā)中斷時(shí),代替第一處理器核心的一例如在初始化信號(hào)后的通常的一重新初始化而跳入虛擬化軟件中,其中,通過虛擬化軟件更新至少一個(gè)能夠通過實(shí)時(shí)操作系統(tǒng)讀取的存儲(chǔ)單元的內(nèi)容,并且其中,實(shí)時(shí)操作系統(tǒng)將所述存儲(chǔ)單元用作為獨(dú)立于第一時(shí)間源的時(shí)間源,以控制第一時(shí)間源。通過所說明的方法可能的是,為實(shí)時(shí)操作系統(tǒng)復(fù)制第二時(shí)間源,使得為了更新所述第二時(shí)間源不需要中斷具有實(shí)時(shí)操作系統(tǒng)的虛擬機(jī)。此外,該目的的解決方案提出一種用于具有多個(gè)處理器核心的數(shù)據(jù)處理設(shè)備的虛擬化軟件,其中,數(shù)據(jù)處理設(shè)備配備有通用的操作系統(tǒng)和至少一個(gè)實(shí)時(shí)操作系統(tǒng)。在此,虛擬化軟件設(shè)置成用于對(duì)用于運(yùn)行上述方法的數(shù)據(jù)處理設(shè)備進(jìn)行配置,其中,虛擬化軟件設(shè)置成用于在由第二時(shí)間源初始化的中斷后更新用作為獨(dú)立的時(shí)間源的至少一個(gè)存儲(chǔ)單元。通過這樣的虛擬化軟件能夠?qū)崿F(xiàn)參考上述方法所說明的優(yōu)點(diǎn)。根據(jù)本發(fā)明的方法的有利的擴(kuò)展方案在本發(fā)明中說明。在此說明的特征和優(yōu)點(diǎn)在意義上也適用于根據(jù)本發(fā)明的虛擬化軟件。所說明的有利的擴(kuò)展方案能夠單獨(dú)的實(shí)現(xiàn),但是或者也能夠相互自由組合地實(shí)現(xiàn)。有利的是,使用如下處理器核心的時(shí)間戳計(jì)數(shù)器作為第一時(shí)間源,在所述處理器核心上運(yùn)行有具有實(shí)時(shí)操作系統(tǒng)的第二虛擬運(yùn)行環(huán)境。所述優(yōu)點(diǎn)一方面在于,在沒有跳出到虛擬化軟件(hypervisor)的情況下讀取時(shí)間戳計(jì)數(shù)器是可能的。另一方面,為每個(gè)處理器核心提供獨(dú)有的時(shí)間戳計(jì)數(shù)器,因此在每個(gè)關(guān)鍵的運(yùn)行環(huán)境能夠單獨(dú)地要求至少一個(gè)處理器核心的優(yōu)選的體系結(jié)構(gòu)中得出下述優(yōu)點(diǎn):單獨(dú)地提供具有實(shí)時(shí)操作系統(tǒng)的虛擬運(yùn)行環(huán)境的時(shí)間戳計(jì)數(shù)器,而不會(huì)受其他運(yùn)行環(huán)境和其他操作系統(tǒng)影響。這特別是當(dāng)存在具有多個(gè)虛擬環(huán)境的多個(gè)實(shí)時(shí)操作系統(tǒng)時(shí)才是有利的。數(shù)據(jù)處理設(shè)備的實(shí)時(shí)時(shí)鐘模塊有利地用作為第二時(shí)間源。這樣的RTC模塊配備有獨(dú)立于處理器時(shí)鐘的時(shí)鐘發(fā)生器(石英振蕩器)。在此,通過虛擬化軟件有利地發(fā)生RTC模塊相對(duì)于第一虛擬運(yùn)行環(huán)境的所謂的“虛擬化”。這意味著,通用的操作系統(tǒng)對(duì)RTC模塊或者所述RTC模塊的寄存器的直接訪問由虛擬化軟件阻止或者至少進(jìn)行控制。由此提高了 RTC模塊的時(shí)間信息的可靠性和運(yùn)行安全性。外圍的中斷控制器(IO-APIC)必須以類似的方式進(jìn)行“虛擬化”。由此避免了訪問者操作系統(tǒng)未經(jīng)授權(quán)地重新配置所述模塊。此外,不是所述模塊的每個(gè)中斷請(qǐng)求都會(huì)導(dǎo)致,具有通用的操作系統(tǒng)的處理器核心(核心O)變換為虛擬化軟件的上下文(context),并且在那里決定是否處理中斷,并且如果是的話,以何種方式處理中斷。這對(duì)于性能具有下述優(yōu)點(diǎn):不是每個(gè)中斷都導(dǎo)致具有實(shí)時(shí)操作系統(tǒng)的虛擬運(yùn)行環(huán)境的中斷。在另一優(yōu)選的擴(kuò)展方案中,也能夠?qū)μ幚砥骱诵牡谋镜刂袛嗫刂破?LO-APIC)進(jìn)行虛擬化。如已經(jīng)提及的,在數(shù)據(jù)處理裝置上能夠有利地設(shè)立分別具有實(shí)時(shí)操作系統(tǒng)的多個(gè)第二虛擬運(yùn)行環(huán)境或者分別具有帶有提高的安全要求的操作系統(tǒng)(“F系統(tǒng)”;“故障安全的系統(tǒng)”)的多個(gè)第二虛擬運(yùn)行環(huán)境,其中,所述第二虛擬運(yùn)行環(huán)境中的每個(gè)各分配有一個(gè)獨(dú)有的處理器核心。由于所述第二虛擬運(yùn)行環(huán)境中的每個(gè)僅必須訪問作為第二時(shí)間源的寄存器或者存儲(chǔ)單元以補(bǔ)償其獨(dú)有的、“私用的”第一時(shí)間源,能夠在沒有跳出(“VM-Exit”虛擬機(jī)退出)到虛擬化軟件(hypervisorJMM=虛擬機(jī)監(jiān)視器)的情況下進(jìn)行這種補(bǔ)償。因?yàn)橥ㄟ^虛擬機(jī)僅只讀地訪問具有“第二時(shí)間信息”的寄存器或者存儲(chǔ)單元,所以所有第二虛擬運(yùn)行環(huán)境能夠使用相同的存儲(chǔ)單元或者寄存器作為第二時(shí)間源。然而,在一個(gè)有利的擴(kuò)展方案中能夠在沒有顯著的額外耗費(fèi)的情況下為所述第二虛擬運(yùn)行環(huán)境中的每個(gè)管理特有的、單獨(dú)的存儲(chǔ)單元、寄存器等,以至于例如可能的是,為每個(gè)虛擬運(yùn)行環(huán)境選擇另一“顯示格式”、另一“零點(diǎn)”等。在最簡(jiǎn)單的情況下,存儲(chǔ)單元通過所述存儲(chǔ)單元的內(nèi)容的簡(jiǎn)單的遞增來進(jìn)行更新;不言而喻的是,也能夠選擇其他的協(xié)定。


      下面,借助于附圖詳細(xì)地闡述根據(jù)本發(fā)明的方法的一個(gè)實(shí)施例。所述實(shí)施例同時(shí)用于闡述根據(jù)本發(fā)明的虛擬化軟件。在此,唯一的附圖示出具有多個(gè)處理器核心、多個(gè)虛擬運(yùn)行環(huán)境和一個(gè)共同使用的硬件的數(shù)據(jù)處理設(shè)備的體系結(jié)構(gòu)的示意圖。
      具體實(shí)施例方式在圖1中示意地示出硬件體系結(jié)構(gòu),在所述硬件體系結(jié)構(gòu)中可使用四個(gè)處理器核
      心Core0........C0re3。借助于在下面稱作“超級(jí)監(jiān)督者”的虛擬化軟件(“虛擬機(jī)監(jiān)視器”)
      產(chǎn)生四個(gè)虛擬運(yùn)行環(huán)境(虛擬機(jī)),其中,在第一虛擬運(yùn)行環(huán)境中安裝有通用的操作系統(tǒng)GP0S(通用操作系統(tǒng),General Purpose Operating System)、例如 Microsoft Windows 或者Linux,所述通用操作系統(tǒng)運(yùn)行在第一處理器核心CoreO上。分別具有實(shí)時(shí)操作系統(tǒng)RT0S1、RT0S2.RT0S3的虛擬運(yùn)行環(huán)境被分別分配給剩余的處理器核心Corel、Core2、Core3。計(jì)算機(jī)體系結(jié)構(gòu)具有共同的硬件SHW(“共享硬件”),其中,在此應(yīng)示例地視作實(shí)時(shí)時(shí)鐘模塊RTC。
      處理器或者處理器核心Core0........Core3分別具有時(shí)間戳計(jì)數(shù)器TSC0........TSC3,
      其中,所述時(shí)間戳計(jì)數(shù)器在此為從處理器時(shí)鐘饋送的計(jì)數(shù)器。相反,實(shí)時(shí)時(shí)鐘模塊RTC具有單獨(dú)的時(shí)鐘發(fā)生器(石英)。下面所說明的方法的目的是,一方面將已分配的處理器核心Corel、Core2、Core3的時(shí)間戳計(jì)數(shù)器TSC1、TSC2、TSC3分別分配給實(shí)時(shí)操作系統(tǒng)RT0S1、RT0S2、RT0S3,其中,時(shí)間戳計(jì)數(shù)器TSC1、TSC2、TSC3分別作為所謂的“第一時(shí)間源”由每個(gè)實(shí)時(shí)操作系統(tǒng)RT0S1、RT0S2.RT0S3單獨(dú)地使用。此外,實(shí)時(shí)時(shí)鐘模塊RTC或者其時(shí)間信息應(yīng)提供給實(shí)時(shí)操作系統(tǒng)RTOSU RT0S2、RT0S3作為共同使用的資源,而對(duì)時(shí)間信息的訪問不會(huì)引起相應(yīng)的實(shí)時(shí)操作系統(tǒng)RT0S1、RT0S2、RT0S3或者輔助所述實(shí)時(shí)操作系統(tǒng)的虛擬運(yùn)行環(huán)境跳出到超級(jí)監(jiān)督者。沒有示出所謂的高精度事件定時(shí)器(HPET),其同樣取決于處理器時(shí)鐘,并且其在一些體系結(jié)構(gòu)中能夠利用實(shí)時(shí)時(shí)鐘模塊RTC的中斷。關(guān)于此點(diǎn)需要指出的是,在這樣的體系結(jié)構(gòu)中同樣應(yīng)該對(duì)所述HPET進(jìn)行“虛擬化”,以便通過所述HPET來阻止利用分配給RTC模塊的中斷。然而,出于清楚起見,這在圖中沒有示出,并且關(guān)于此點(diǎn)也不進(jìn)一步進(jìn)行說明。下面假定,通用操作系統(tǒng)GPOS需要實(shí)時(shí)時(shí)鐘模塊作為時(shí)間源,這例如在已知的操作系統(tǒng)Microsoft Windows中是這種情況。在此,如已述的,不進(jìn)一步深入研究HPET的替選的應(yīng)用??蓮膶?shí)時(shí)時(shí)鐘模塊RTC的寄存器中讀取的時(shí)間信息對(duì)于在此考慮的實(shí)時(shí)操作系統(tǒng)RT0S1、RT0S2、RT0S3的需求而言不是足夠“精細(xì)的”的,這意味著,簡(jiǎn)單地讀取相應(yīng)的寄存器內(nèi)容不能夠用于精確地控制來自時(shí)間戳計(jì)數(shù)器TSC1、TSC2、TSC3的時(shí)間信息。因此現(xiàn)在,實(shí)時(shí)時(shí)鐘模塊RTC應(yīng)被編程為,使得所述實(shí)時(shí)時(shí)鐘模塊周期性地觸發(fā)中斷INT,其中,中斷INT的觸發(fā)的重復(fù)精度完全相應(yīng)于已提及的精度要求。首先,實(shí)時(shí)時(shí)鐘模塊RTC相對(duì)于通用操作系統(tǒng)GPOS來進(jìn)行“虛擬化”,以至于對(duì)實(shí)時(shí)時(shí)鐘模塊RTC的寄存器的在實(shí)時(shí)操作系統(tǒng)GPOS方面的所有訪問Z-RTC通過超級(jí)監(jiān)督者的相應(yīng)的實(shí)體來攔截。從現(xiàn)在開始,對(duì)實(shí)時(shí)時(shí)鐘模塊RTC的實(shí)際的寄存器的訪問和有利地還有對(duì)中斷控制器IO-APIC的訪問幾乎僅通過超級(jí)監(jiān)督者來進(jìn)行。現(xiàn)在,實(shí)時(shí)時(shí)鐘模塊的已提及的中斷機(jī)構(gòu)在中斷控制器IO-APIC中參數(shù)化為初始化信號(hào)INIT或者參數(shù)化為其他不可屏蔽的中斷,例如參數(shù)化為IP1-啟動(dòng)信號(hào)。這允許,在超級(jí)監(jiān)督者中,中斷由實(shí)時(shí)時(shí)鐘模塊RTC生成的中斷INT(VM Exit,SecutityExeption SX),而在此不必處理其他的中斷源。因此,也能夠由負(fù)責(zé)的操作系統(tǒng)本身處理任意其他的中斷,并且盡管如此,仍然實(shí)現(xiàn)實(shí)時(shí)時(shí)鐘模塊RTC的中斷導(dǎo)致具有通用操作系統(tǒng)GPOS的虛擬機(jī)跳出(上下文變更)到超級(jí)監(jiān)督者中。在本文中需要注意的是,對(duì)于超級(jí)監(jiān)督者的任意要求的最大處理時(shí)間(“滯留時(shí)間”)短于在實(shí)時(shí)時(shí)鐘模塊RTC中設(shè)置的中斷間隔。因此防止了在將控制返還給具有通用操作系統(tǒng)GPOS的虛擬機(jī)之前,必須處理其他的中斷INT。在此需要指出的是,在第一處理器核心CoreO上發(fā)生超級(jí)監(jiān)督者的執(zhí)行,以至于在沒有影響到具有實(shí)時(shí)操作系統(tǒng)RTOSl、RT0S2、RT0S3的其他虛擬機(jī)的情況下實(shí)現(xiàn)到超級(jí)監(jiān)督者(VM Exit、Secutity Exeption SX)的或者到那里的服務(wù)例程ISH (Init-Signal Handler,初始化信號(hào)處理器)的根據(jù)中斷的跳出VME。通過超級(jí)監(jiān)督者將存儲(chǔ)單元AZ1、AZ2、AZ3 (“替選的時(shí)間源”)或者寄存器分別分配給實(shí)時(shí)操作系統(tǒng)RT0S1、RT0S2、RT0S3,所述存儲(chǔ)單元或者寄存器用作為用于所述實(shí)時(shí)操作系統(tǒng)RT0S1、RT0S2、RT0S3的第二時(shí)間源。所述存儲(chǔ)單元AZ1、AZ2、AZ3或者存儲(chǔ)器的內(nèi)容在每次通過實(shí)時(shí)時(shí)鐘模塊RTC生成或者觸發(fā)中斷INT時(shí)通過超級(jí)監(jiān)督者或者那里的服務(wù)例程ISH和由此產(chǎn)生的INIT信號(hào)來更新,例如通過在所述存儲(chǔ)單元AZl、AZ2、AZ3或者寄存器中的數(shù)值的遞增來更新。通過對(duì)所述存儲(chǔ)單元AZ1、AZ2、AZ3或者寄存器的讀訪問A12、A22、A32,能夠隨時(shí)使用因此產(chǎn)生的第二時(shí)間源。第一時(shí)間源TSC1、TSC2、TSC3的補(bǔ)償例如通過即時(shí)讀取Al 1、A21、A31所述寄存器并且與存儲(chǔ)單元AZ1、AZ2、AZ3或者所使用的、遞增的寄存器的數(shù)值比較來進(jìn)行。在許多情況下,中斷控制器的關(guān)于時(shí)鐘模塊中斷INT的之前已說明的參數(shù)化以所述控制器相對(duì)于通用操作系統(tǒng)GPOS的虛擬化為條件。只要通用操作系統(tǒng)GPOS使用(從現(xiàn)在開始虛擬化的)實(shí)時(shí)時(shí)鐘模塊VRTC作為時(shí)間源,那么在處理依據(jù)所需要的時(shí)鐘的INIT信號(hào)時(shí)就將由虛擬化時(shí)鐘模塊VRTC生成的RTC中斷1-1NT “注入”通用操作系統(tǒng)GPOS中(例如通過中斷注入或者通過處理器間中斷通過本地中斷模塊L0-APIC)。為了提高處理性能而可能的是,對(duì)通用操作系統(tǒng)進(jìn)行參數(shù)化,使得停止RCT中斷1-1NT的其他必要的應(yīng)答。在一些處理器中,不能在超級(jí)監(jiān)督者的運(yùn)行時(shí)間期間、即在“VMExit”期間提交INIT信號(hào)。這例如包括已經(jīng)說明的最大“停留時(shí)間”,如已說明的,所述停留時(shí)間必須明顯小于所選擇的RCT時(shí)鐘。在結(jié)束(“關(guān)閉”)通用操作系統(tǒng)GPOS時(shí)能夠出現(xiàn)下述狀態(tài),其中,幾乎不必須或者完全不再必須執(zhí)行所分配的虛擬機(jī),以至于所分配的處理器核心CoreO持續(xù)地執(zhí)行超級(jí)監(jiān)督者的上下文,并且從而不能夠提交INIT信號(hào)。在這樣的情況下,在相應(yīng)的虛擬機(jī)中(虛擬運(yùn)行環(huán)境)能夠啟動(dòng)主體操作系統(tǒng)(Rumpf-Betriebssystem)或類似的軟件,以至于能夠或者必須相應(yīng)地離開超級(jí)監(jiān)督者。
      權(quán)利要求
      1.用于為具有至少兩個(gè)虛擬運(yùn)行環(huán)境的數(shù)據(jù)處理設(shè)備的至少一個(gè)實(shí)時(shí)操作系統(tǒng)(RT0S1、RT0S2、RT0S3)提供至少兩個(gè)彼此獨(dú)立的時(shí)間源的方法, 其中,通用操作系統(tǒng)(GPOS)運(yùn)行在所述虛擬運(yùn)行環(huán)境中的第一個(gè)中,并且所述實(shí)時(shí)操作系統(tǒng)(RTOSl、RT0S2、RT0S3)運(yùn)行在所述虛擬運(yùn)行環(huán)境中的第二個(gè)中, 其中,通過虛擬化軟件(超級(jí)監(jiān)督者)管理所述虛擬運(yùn)行環(huán)境,并且其中,所述第一虛擬運(yùn)行環(huán)境分配有第一處理器核心(C0RE0),并且所述第二虛擬運(yùn)行環(huán)境分配有第二處理器核心(C0RE1、C0RE2、C0RE3), 其特征在于, 所述至少一個(gè)實(shí)時(shí)操作系統(tǒng)(RT0S1、RT0S2、RT0S3)單獨(dú)地分配有第一時(shí)間源(TSC1、TSC2、TSC3), 所述數(shù)據(jù)處理設(shè)備具有獨(dú)立于所述第一時(shí)間源(TSC1、TSC2、TSC3)的第二時(shí)間源(RTC),其中, 所述第二時(shí)間源(RTC)配置為用于周期性地產(chǎn)生中斷(INT),其中, 具有帶有所述通用操作系統(tǒng)(GPOS)的所述虛擬運(yùn)行環(huán)境的所述第一處理器核心(COREO)設(shè)置成,使得在每次通過所述第二時(shí)間源(RTC)觸發(fā)所述中斷(INT)時(shí)跳入所述虛擬化軟件(超級(jí)監(jiān)督者)中,其中, 所述虛擬化軟件(超級(jí)監(jiān)督者)更新至少一個(gè)能夠通過所述實(shí)時(shí)操作系統(tǒng)(RT0S1、RT0S2、RT0S3)讀取的存儲(chǔ)單元(AZ1、AZ2、AZ3)的內(nèi)容,其中,所述實(shí)時(shí)操作系統(tǒng)(RT0S1、RT0S2.RT0S3)使用所述存儲(chǔ)單元(AZ1、AZ2、AZ3)作為獨(dú)立于所述第一時(shí)間源(TSC1、TSC2、TSC3)的時(shí)間源。
      2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述第二時(shí)間源設(shè)置成用于周期性地產(chǎn)生配置為初始化信號(hào)(INIT)、啟動(dòng)信號(hào)或者不能被屏蔽的中斷的中斷(INT)。
      3.根據(jù)上述權(quán)利要求之一所述的方法,其特征在于,使用如下處理器核心(C0RE1、C0RE2、C0RE3)的時(shí)間戳計(jì)數(shù)器(TSC1、TSC2、TSC3)作為所述第一時(shí)間源(TSC1、TSC2、TSC3),在所述處理器核心上運(yùn)行有具有所述實(shí)時(shí)操作系統(tǒng)(RT0S1、RT0S2、RT0S3)的所述第二虛擬運(yùn)行環(huán)境。
      4.根據(jù)上述權(quán)利要求之一所述的方法,其特征在于,所述數(shù)據(jù)處理設(shè)備的實(shí)時(shí)時(shí)鐘模塊用作為所述第二時(shí)間源(RTC)。
      5.根據(jù)權(quán)利要求4所述的方法,其特征在于,使用所述虛擬化軟件(超級(jí)監(jiān)督者)以相對(duì)于所述第一虛擬運(yùn)行環(huán)境虛擬化所述實(shí)時(shí)時(shí)鐘模塊(RTC)。
      6.根據(jù)上述權(quán)利要求之一所述的方法,其特征在于,使用所述虛擬化軟件(超級(jí)監(jiān)督者)以相對(duì)于所述通用操作系統(tǒng)(GPOS)虛擬化所述中斷控制器(10-APIC)。
      7.根據(jù)上述權(quán)利要求之一所述的方法,其特征在于,在數(shù)據(jù)處理裝置上設(shè)置有分別具有實(shí)時(shí)操作系統(tǒng)(RT0S1、RT0S2、RT0S3)的多個(gè)第二虛擬運(yùn)行環(huán)境,其中,所述第二虛擬運(yùn)行環(huán)境中的每個(gè)分別分配有獨(dú)有的處理器核心(C0RE1、C0RE2、C0RE3)。
      8.根據(jù)權(quán)利要求7所述的方法,其特征在于,為每個(gè)第二虛擬運(yùn)行環(huán)境分別更新至少一個(gè)單獨(dú)的存儲(chǔ)單元(八21322323)。
      9.根據(jù)上述權(quán)利要求之一所述的方法,其特征在于,所述虛擬化軟件(超級(jí)監(jiān)督者)通過如下方式來更新能夠通過所述實(shí)時(shí)操作系統(tǒng)(RT0S1、RT0S2、RT0S3)讀取的存儲(chǔ)單元(AZ1、AZ2、AZ3)的所述內(nèi)容,即通過存儲(chǔ)在所述存儲(chǔ)單元(AZ1、AZ2、AZ3)中的數(shù)值的遞增來更新。
      10.用于具有多個(gè)處理器核心(COREO、COREU C0RE2、C0RE3)、通用操作系統(tǒng)(GPOS)和至少一個(gè)實(shí)時(shí)操作系統(tǒng)(RT0S1、RT0S2、RT0S3)的數(shù)據(jù)處理設(shè)備的虛擬化軟件, 其特征在于, 所述虛擬化軟件(超級(jí)監(jiān)督者)設(shè)置成用于配置用于運(yùn)行上述方法之一的所述數(shù)據(jù)處理設(shè)備,其中,所述虛擬化軟件(超級(jí)監(jiān)督者)設(shè)置成用于在由所述第二時(shí)間源(RTC)初始化的中斷(INT)后更新用作為 獨(dú)立的時(shí)間源的至少一個(gè)存儲(chǔ)單元(421422323)。
      全文摘要
      本發(fā)明涉及一種用于為具有虛擬運(yùn)行環(huán)境的數(shù)據(jù)處理設(shè)備的至少一個(gè)實(shí)時(shí)操作系統(tǒng)提供至少兩個(gè)彼此獨(dú)立的時(shí)間源的方法和虛擬化軟件,通用操作系統(tǒng)運(yùn)行在虛擬運(yùn)行環(huán)境之一中,通過虛擬化軟件管理虛擬運(yùn)行環(huán)境。每個(gè)實(shí)時(shí)操作系統(tǒng)單獨(dú)分配有第一時(shí)間源,數(shù)據(jù)處理設(shè)備具有獨(dú)立于第一時(shí)間源的第二時(shí)間源,第二時(shí)間源配置成用于周期性產(chǎn)生中斷,第一處理器核心在每次通過第二時(shí)間源觸發(fā)中斷時(shí)跳入虛擬化軟件的例程中,更新至少一個(gè)能夠通過實(shí)時(shí)操作系統(tǒng)讀取的存儲(chǔ)單元的內(nèi)容且所述存儲(chǔ)單元作為獨(dú)立于第一時(shí)間源的時(shí)間源以控制第一時(shí)間源。通過所述方法可能的是,為實(shí)時(shí)操作系統(tǒng)復(fù)制第二時(shí)間源,使得對(duì)第二時(shí)間源的更新不需要中斷具有實(shí)時(shí)操作系統(tǒng)的虛擬機(jī)。
      文檔編號(hào)G06F11/36GK103116515SQ20121035924
      公開日2013年5月22日 申請(qǐng)日期2012年9月24日 優(yōu)先權(quán)日2011年9月28日
      發(fā)明者奧托·尼塞爾, 哈利勒·恰拉爾·于恩韋爾 申請(qǐng)人:西門子公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1