[發明專利]具有指令簽名支持的分布式編譯處理有效
| 申請號: | 201210246530.5 | 申請日: | 2012-07-16 |
| 公開(公告)號: | CN103019799A | 公開(公告)日: | 2013-04-03 |
| 發明(設計)人: | 于爾根·迪維;奔迪特·加梅爾;斯特凡·曼格德 | 申請(專利權)人: | 英飛凌科技股份有限公司 |
| 主分類號: | G06F9/45 | 分類號: | G06F9/45 |
| 代理公司: | 北京康信知識產權代理有限責任公司 11240 | 代理人: | 余剛;吳孟秋 |
| 地址: | 德國瑙伊*** | 國省代碼: | 德國;DE |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 具有 指令 簽名 支持 分布式 編譯 處理 | ||
技術領域
本申請涉及用于向編譯器提供指令簽名支持(instruction?signature?support)的編譯模塊,更具體地,涉及在高級語言源代碼的編譯處理期間處理指令簽名相關的信息。
背景技術
可編程計算單元通常被設計為處理指令序列,以執行特定任務。指令序列也可稱為程序代碼。程序代碼通常存儲在存儲器中,并在運行時被提供至計算單元。鑒于信息安全,可能期望在指令存儲于存儲器中或從存儲器傳輸至計算單元時保護指令不被分析。另一方面,如果到達計算單元的指令不同于所需的指令,則可能會在程序代碼執行期間發生錯誤。由計算單元實際處理的指令和所需指令之間的差異可能有隨機的原因,或可能由入侵者故意引起。在任何情況下,都應及早檢測到由改變的指令所造成的錯誤。
控制流檢查方法可用于檢測由計算單元實際處理的指令和所需指令之間的這種差異。基于指令簽名的控制流檢查方法的基本原則是在程序運行期間在校驗和(即,簽名)中計算程序運行時所執行的指令總數,并在預定的程序點驗證該校驗和是否匹配參考值。校驗和與參考值之間的差表明實際程序執行和預計程序執行之間的可能偏差。
當創建或編譯支持控制流檢查的程序時,最常見的控制流檢測方法需要所謂的更新值插入程序中的特定點。例如,如果程序跳變或分支點發生,且兩個不同的路徑(在不同指令序列被執行進而導致不同簽名的意義上不同)再次合并,由路徑執行產生的簽名需要在合并點處是一致的。為此,更新的值插入至少一個路徑。分支發生在條件(直接)跳變、間接跳變、直接和間接函數調用處。此外,在執行將運行期間計算的簽名和參考值進行比較的程序點處需要參考值。這些參考值也需要在適當的程序點處被引入程序。
發明內容
本文所述的實施方式提供了一種用于向編譯器提供指令簽名支持的編譯模塊(complier?module)。該編譯模塊包括語言結構識別器,被配置為在供應至編譯器的高級語言源代碼中識別指令簽名相關的語言結構;以及占位符插入組件,被配置為與編譯器(compiler)交互,從而將基于指令簽名相關的語言結構的至少一個指令簽名相關的占位符插入由編譯器基于高級語言源代碼而處理的編譯代碼中。
本文所述的其它實施方式提供了一種指令簽名生成器,包括用于編譯代碼的輸入、占位符識別器、簽名計算器和占位符替換器。占位符識別器被配置為在編譯代碼中識別指令簽名相關的占位符。簽名計算器被配置為確定針對編譯代碼中發生所述指令簽名相關的占位符處的程序點的簽名值。占位符替換器被配置為基于程序點處的簽名值來插入編譯代碼段。
本文所述的其它實施方式提供了一種編譯器接口數據結構,其包括編譯指令,其中至少有一個是編譯指令為指令簽名相關的占位符。
本文所述的其它實施方式提供了一種在高級語言源代碼的編譯處理中處理指令簽名相關信息的方法,該方法包括:在高級語言源代碼中識別指令簽名相關的語言結構;與編譯處理交互,以便將基于指令簽名相關的語言結構的至少一個指令簽名相關的占位符插入由編譯處理基于高級語言源代碼所處理的編譯代碼中。
本文所述的其它實施方式提供了一種計算機可讀數字存儲介質,具有程序代碼的計算機程序存儲于其上,當在計算機上運行時該程序代碼用于執行在高級語言源代碼的編譯處理期間用于處理指令簽名相關的信息的方法,所述方法包括:在高級語言源代碼中識別指令簽名相關的語言結構;與編譯處理交互,以便將基于指令簽名相關的語言結構的至少一個指令簽名相關的占位符插入以高級語言源代碼為基礎通過編譯處理所處理的編譯代碼中。
本文所述的其它實施方式提供了一種產生指令簽名的方法,該方法包括:確定指令簽名相關的占位符應插入編譯代碼中何處程序位置;確定針對編譯代碼中發生指令簽名相關的占位符處的程序位置的簽名值,并在該程序位置處插入編譯代碼段(其在所確定的簽名值的基礎上隱式或顯式地產生更新)。
本領域的技術人員在閱讀了以下詳細描述并查看附圖之后將認識其它的特征和優點。
附圖說明
附圖的元件不一定彼此成比例。相同的參考符號表示相應的類似部件。各個所示實施方式的特征可組合,除非它們互相排斥。實施方式描述于附圖中,且詳細描述如下。
圖1示出包括條件分支、默認路徑、以及非默認路徑的指令序列的示意性流程圖。
圖2示出提供指令簽名支持的編譯處理的示意性流程圖。
圖3示出編譯器以及用于對編譯器提供指令簽名支持的編譯模塊的示意性框圖。
圖4說明用于指令簽名支持的編譯模塊和指令簽名生成器的效果。
圖5示出指令簽名生成器的示意性框圖。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于英飛凌科技股份有限公司,未經英飛凌科技股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210246530.5/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種蛇形機械臂
- 下一篇:用于裝夾N件工件的角尺槽龍門銑夾具





