[發明專利]系統庫訪問方法、裝置以及電子設備在審
| 申請號: | 202011398970.3 | 申請日: | 2020-12-01 |
| 公開(公告)號: | CN112559394A | 公開(公告)日: | 2021-03-26 |
| 發明(設計)人: | 樸英敏 | 申請(專利權)人: | 北京字節跳動網絡技術有限公司 |
| 主分類號: | G06F12/14 | 分類號: | G06F12/14;G06F16/25 |
| 代理公司: | 北京市立方律師事務所 11330 | 代理人: | 張筱寧 |
| 地址: | 100041 北京市石景山區*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 系統 訪問 方法 裝置 以及 電子設備 | ||
本公開提供了一種系統庫訪問方法、裝置以及電子設備。該方法包括:當檢測到針對系統庫的訪問指令時,運行主調函數,主調函數用于跳轉至被調函數;運行被調函數,通過被調函數執行如下操作:獲取預配置的連接寄存器的地址;連接寄存器的地址為系統庫區域的地址;基于連接寄存器的地址獲取系統庫的訪問權限;基于訪問權限訪問連接寄存器的地址對應的系統庫區域,并從系統庫區域中獲取預存儲的目標指令;基于目標指令,確定被調函數的返回地址;基于返回地址,從被調函數返回運行主調函數。本公開可以訪問系統庫后保證主調函數正常運行。
技術領域
本公開涉及計算機技術領域,具體而言,本公開涉及一種系統庫訪問方法、裝置以及電子設備。
背景技術
應用程序的開發過程中很多優化和調試都需要依賴于系統庫,因此應用程序經常會調用函數來訪問系統庫,但是并不是所有的應用程序都有系統庫訪問權限,對于沒有系統庫訪問權限的應用程序而言,需要通過特殊的方式來訪問系統庫。
目前,沒有系統庫訪問權限的應用程序可以通過配置所調動的被調函數中連接寄存器(LR,link register)的地址以便于自由訪問系統庫,這種方式配置的連接寄存器的地址一般為數據段的地址,而連接寄存器的地址還會指示由被調函數返回運行主調函數時主調函數的執行位置,可見,目前的方案連接寄存器的地址指示的是一個數據段,依據該數據段應用程序是無法正常返回運行主調函數的,會導致主調函數運行異常。
發明內容
提供該發明內容部分以便以簡要的形式介紹構思,這些構思將在后面的具體實施方式部分被詳細描述。該發明內容部分并不旨在標識要求保護的技術方案的關鍵特征或必要特征,也不旨在用于限制所要求的保護的技術方案的范圍。
本公開的第一方面提供了一種系統庫訪問方法,包括:
當檢測到針對系統庫的訪問指令時,運行主調函數,主調函數用于跳轉至被調函數;
運行被調函數,通過被調函數執行如下操作:獲取預配置的連接寄存器的地址;連接寄存器的地址為系統庫區域的地址;基于連接寄存器的地址獲取系統庫的訪問權限;基于訪問權限訪問連接寄存器的地址對應的系統庫區域,并從系統庫區域中獲取預存儲的目標指令;
基于目標指令,確定被調函數的返回地址;
基于返回地址,從被調函數返回運行主調函數。
本公開的第二方面提供了一種系統庫的訪問裝置,其特征在于,包括:
第一運行模塊,用于當檢測到針對系統庫的訪問指令時,運行主調函數,主調函數用于跳轉至被調函數;
第二運行模塊,用于運行被調函數,通過被調函數執行如下操作:獲取預配置的連接寄存器的地址;連接寄存器的地址為系統庫區域的地址;基于連接寄存器的地址獲取系統庫的訪問權限;基于訪問權限訪問連接寄存器的地址對應的系統庫區域,并從系統庫區域中獲取預存儲的目標指令;
第一確定模塊,用于基于目標指令,確定被調函數的返回地址;
第三運行模塊,用于基于返回地址,從被調函數返回運行主調函數。
本公開第三方面,提供了一種電子設備,該電子設備包括:
電子設備包括存儲器和處理器;
存儲器中存儲有計算機程序;
處理器,用于在運行計算機程序時執行第一方面的方法。
本公開第四方面,提供了一種計算機可讀介質,其上存儲有計算機程序,該程序被處理器執行時第一方面的方法。
本公開提供的技術方案帶來的有益效果是:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京字節跳動網絡技術有限公司,未經北京字節跳動網絡技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011398970.3/2.html,轉載請聲明來源鉆瓜專利網。





