[發明專利]代碼處理方法和代碼處理系統有效
| 申請號: | 201280048815.6 | 申請日: | 2012-10-01 |
| 公開(公告)號: | CN103858101B | 公開(公告)日: | 2016-10-26 |
| 發明(設計)人: | R.J.布萊尼;M.K.格施溫德;J.L.麥金尼斯;S.J.芒羅;M.邁斯納 | 申請(專利權)人: | 國際商業機器公司 |
| 主分類號: | G06F9/45 | 分類號: | G06F9/45 |
| 代理公司: | 北京市柳沈律師事務所 11105 | 代理人: | 黃劍飛 |
| 地址: | 美國紐*** | 國省代碼: | 美國;US |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 代碼 處理 方法 系統 | ||
1.一種方法,包括:
通過計算機讀取目標文件,該目標文件包括多個代碼序列;
識別所述目標文件中的代碼序列,該代碼序列指定相對基址的偏移量,所述相對基址的偏移量對應于在被配置為存儲變量的地址或數據之一的存儲器內的偏移位置,識別的代碼序列包括多個指令并且被配置為執行存儲器引用函數或存儲器地址計算函數;
確定所述偏移位置在所述基址的指定距離內;
驗證采用替換代碼序列替換所識別代碼序列不會改變程序語義;
采用所述替換代碼序列替換所述目標文件中所識別代碼序列,所述替換代碼序列包括空操作(NOP)指令或者具有比所識別代碼序列少的指令;
響應于所述目標文件生成連接的可執行代碼;以及
發出所連接的可執行代碼。
2.根據權利要求1所述的方法,其中所述基址對應于變量地址參考表,并且具有高存取頻率的變量的地址存儲在與存儲具有低存取頻率的變量的地址的偏移位置相比與變量地址參考表的基址更近的偏移位置,所述低存取頻率小于高存取頻率。
3.根據權利要求1所述的方法,其中所述多個指令為順序指令。
4.根據權利要求1所述的方法,其中所述驗證采用替換代碼序列替換所識別代碼序列不會改變程序語義包括:核查與在所識別的代碼序列中指定的所述相對基址的偏移量對應的偏移位置沒被配置為在所識別代碼序列中的最后指令之前被寫入新值。
5.根據權利要求1所述的方法,其中所述基址對應于全局偏移量表(GOT),在所識別代碼序列中的所述多個指令之一包括GOT加載引用指令,并且所述替換代碼序列還包括內容表(TOC)計算指令。
6.一種系統,包括適于執行根據任意前述權利要求所述的方法的所有步驟的裝置。
7.一種計算機程序,包括在該計算機程序在計算機系統上被執行時用于執行根據任意前述權利要求所述的方法的所有步驟。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于國際商業機器公司,未經國際商業機器公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201280048815.6/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種地下箱涵結構預留橫向加寬的結構構造方法
- 下一篇:高效洗滌面料的加工方法





