[發明專利]程序代碼的運行方法和運行裝置以及編譯方法和編譯裝置有效
| 申請號: | 201811194861.2 | 申請日: | 2018-10-15 |
| 公開(公告)號: | CN111045657B | 公開(公告)日: | 2021-08-13 |
| 發明(設計)人: | 孫淵磊;蔣奕;陳永健;周正興 | 申請(專利權)人: | 華為技術有限公司 |
| 主分類號: | G06F8/30 | 分類號: | G06F8/30;G06F8/41 |
| 代理公司: | 北京龍雙利達知識產權代理有限公司 11329 | 代理人: | 陳洪艷;王君 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 程序代碼 運行 方法 裝置 以及 編譯 | ||
1.一種程序代碼的運行方法,其特征在于,包括:
確定被聲明為原生方法的第一方法的符號名和該第一方法對應的原生方法的地址,所述符號名用于標識所述第一方法;
根據所述第一方法的符號名確定與所述第一方法對應的第一注冊表項,所述第一注冊表項包括第一字段,所述第一字段中記錄的信息用于確定所述第一方法的符號名;
在所述第一注冊表項包括的第二字段中記錄所述第一方法對應的原生方法的地址。
2.根據權利要求1所述的運行方法,其特征在于,所述第一注冊表項中的第一字段中記錄的是所述第一方法的符號名。
3.根據權利要求1所述的運行方法,其特征在于,所述第一注冊表項中的第一字段中記錄所述第一方法的符號名相對于所述第一注冊表項的地址偏移量,所述第一符號名記錄在字符串表中,所述字符串表中記錄一個或多個被聲明為原生方法的方法的符號名。
4.根據權利要求1至3中任一項所述的運行方法,其特征在于,根據所述第一方法的符號名確定與所述第一方法對應的第一注冊表項,包括:
計算所述第一方法的符號名的哈希值;
將所述哈希值作為第一索引,確定哈希表中與該第一索引對應的第一哈希表項,所述哈希表中的哈希表項用于記錄所述哈希表項對應的注冊表項在原生注冊表中的索引,所述原生注冊表中包括一個或多個注冊表項;
將所述原生注冊表中與所述第一哈希表項中記錄的第二索引對應的注冊表項確定為所述第一注冊表項。
5.根據權利要求1至3中任一項所述的運行方法,其特征在于,所述運行方法還包括:
確定所述第一方法的調用樁,所述調用樁中包括第一標簽,第一標簽與所述第一方法對應的第一注冊表項具有對應關系;
根據所述第一標簽和所述對應關系,確定所述第一方法對應的所述第一注冊表項;
根據所述第一注冊表項包括的第二字段中記錄的地址,調用所述第一方法對應的原生方法。
6.一種程序代碼的編譯方法,其特征在于,包括:
確定待編譯代碼;
為所述待編譯代碼中被聲明為原生方法的第一方法生成所述第一方法對應的第一注冊表項,所述第一注冊表項包括第一字段和第二字段,所述第一字段中記錄的信息用于確定所述第一方法的符號名,所述第二字段用于記錄所述第一方法對應的原生方法的地址,所述第一方法的符號名用于標識所述第一方法。
7.根據權利要求6所述的編譯方法,其特征在于,所述第一注冊表項中的第一字段中記錄的是所述第一方法的符號名。
8.根據權利要求6所述的編譯方法,其特征在于,所述第一注冊表項中的第一字段中記錄所述第一方法的符號名相對于所述第一注冊表項的地址偏移量,所述第一方法的符號名記錄在字符串表中,所述字符串表中記錄一個或多個被聲明為原生方法的方法的符號名。
9.根據權利要求6至8中任一項所述的編譯方法,其特征在于,所述編譯方法還包括:
計算所述第一方法的符號名的哈希值;
將所述哈希值作為第一索引,確定哈希表中與該第一索引對應的第一哈希表項;
將所述第一注冊表項在原生注冊表中的第二索引寫入所述第一哈希表項中,所述原生注冊表中包括一個或多個注冊表項。
10.根據權利要求6至8中任一項所述的編譯方法,其特征在于,所述編譯方法還包括:
根據所述第一方法的符號名生成與所述第一注冊表項對應的標簽,所述標簽用于唯一識別所述第一注冊表項;
為調用所述第一方法的語句生成調用樁,所述調用樁中包括所述標簽。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華為技術有限公司,未經華為技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811194861.2/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種金屬噴淋清洗劑
- 下一篇:一種直驅風機虛擬同步發電系統





