[發明專利]用于在實時操作系統的實施中識別錯誤的方法有效
| 申請號: | 201110410036.3 | 申請日: | 2011-12-09 |
| 公開(公告)號: | CN102591736A | 公開(公告)日: | 2012-07-18 |
| 發明(設計)人: | 奧托·尼塞爾 | 申請(專利權)人: | 西門子公司 |
| 主分類號: | G06F11/07 | 分類號: | G06F11/07 |
| 代理公司: | 北京康信知識產權代理有限責任公司 11240 | 代理人: | 余剛;李慧 |
| 地址: | 德國*** | 國省代碼: | 德國;DE |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 用于 實時 操作系統 實施 識別 錯誤 方法 | ||
技術領域
本發明涉及一種用于在執行實時操作系統的實施中識別錯誤的方法、一種計算機程序產品、以及一種用于在實時操作系統的實施中識別錯誤的裝置。
背景技術
多種現代化的處理器當前提供了更多處理器核心和虛擬化技術。在此,使用了所謂的系統管理程序(Hypervisor)。在此,這是指一種軟件,該軟件通過應用虛擬化技術使得一個或多個客戶操作系統在真實的硬件上運行,并且在此管理能使用的資源。資源在此可以被分配給客戶,也可以處于在系統管理程序控制下。與前面的能使用的技術相比,以較小的性能缺陷使其實現并且不會干預客戶操作系統。
首要的目標在于,最佳地充分利用現有的高處理器效率,這由此實現,即為各個處理器核心分配不同的任務。因此例如可以在一個核心上委托具有控制任務的、有實時能力的操作系統,而在另一個核心上應用標準操作系統、如Windows系統,以對進行的過程虛擬化。
在執行實時操作系統時的一個問題在于,即必須針對錯誤的實施對該系統進行保護。程序錯誤、以及硬件方面的錯誤可以特別在自動化系統中導致自動化系統引起錯誤的產品生產或產品加工,或者使自動化系統的完全關閉。在所有情況下產生了較大的經濟損失,其可能通過適合的錯誤識別機構,在實時操作系統的實施中被避免。
發明內容
因此本發明的目的在于,提出一種方法、一種計算機程序產品以及一種裝置,用于在實時操作系統的實施中識別錯誤。
本發明的目的通過獨立權利要求所述的特征來實現。本發明的優選的實施方式在從屬權利要求中給出。
在此提出了一種用于在實時操作系統的實施中識別錯誤的方法,其中實時操作系統的邏輯相同的實例(Instanz)在共用的虛擬化環境中的第一處理器的至少兩個處理器核心上被并行地實施,其中系統管理程序監測實例的并行實施,其中在執行通過實例引發的硬件訪問時,通過系統管理程序將在對于每個實例的硬件訪問時傳輸的數據相互比較,其中,在傳輸的數據之間出現差別的情況下,或者在單方面的通過實例之一引發的硬件訪問的情況下,通過系統管理程序識別為是錯誤。
本發明因此提出了一種系統保護的方案,其中系統管理程序用于并行處理用于控制任務的實時操作系統(在下面也稱為固件)的多種不同的版本。目的在于,識別出在兩個核心上的處理過程中的差別,以及例如可能由于數據失真而對用戶產生損害之前,停止所分配的自動化系統中的控制。
表面上,利用在此提出的用于確保用戶的系統安全的措施使得控制器的系統性能不發生變化。必須分別在產品特性方面考慮對于性能、特別是處理速度以及等待時間的影響。
在固件的行動不同時需要系統管理程序的相互作用(例如訪問虛擬的或真實的硬件)。在這種情況下,對虛擬機的處理被中斷,并且將中斷原因通知給系統管理程序。對于虛擬化軟件也可能的是,通過對特殊的操作碼(Hypercall超級調用)的處理,中斷虛擬機,以便幫助系統管理程序做準備工作。
兩種類型的中斷可以用于使得虛擬化的固件實例的工作-或中間結果實現匹配(Abgleich)。
所述類型的在中斷時的匹配在下面稱為“同步點”。
因此實現了一種控制實例,其在控制器的內部的執行中識別出錯誤,并且可以相應地作出反應。可以因此如在下面還要進一步探討地,有助于解決由于未識別的存儲器錯誤引起的錯誤運行的問題,這并不能在所有情況下都利用前述的解決辦法來實現。
最少所需要的匹配包括檢測寫在硬件上的數據和分配由硬件讀取的數據。如果應該描述不同的數據,達到不同的同步點或者單方面地達到僅僅一個同步點,則因此可以假定固件發生故障。
根據本發明的一個實施方式,通過實例之一引發的硬件訪問是直接的硬件訪問或者是在應用半虛擬化的情況下通過超級調用實現的硬件訪問。
基本上,固件通過例如輸入-和輸出區域(I/O端口)、存儲器映像設備(memory?mapped?device)、中斷請求(interrupt)和直接存儲器訪問(direct?memory?access-DMA)和硬件集成在一起。所有這些相互作用可以而且必須通過系統管理程序實現匹配和同步。
硬件訪問在此基本上可以借助于兩個方法來實現。一方面可能的是,使虛擬化的固件中的硬件驅動器保持原狀,并且對系統管理程序中產生的硬件訪問進行攔截和匹配(硬件虛擬化)。其它可能性在于,將硬件驅動器的最下層移動到系統管理程序中,并且通過超級調用實現對其的訪問(半虛擬化)。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于西門子公司,未經西門子公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110410036.3/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:可降解環保震源藥柱
- 下一篇:瞄準器的光纖定位結構





