[發明專利]一種基于擴展腳本的軟件斷點調試方法、裝置有效
| 申請號: | 202011599164.2 | 申請日: | 2020-12-29 |
| 公開(公告)號: | CN112612712B | 公開(公告)日: | 2022-08-12 |
| 發明(設計)人: | 蘇再添;黃志煒;孫善為 | 申請(專利權)人: | 廈門市美亞柏科信息股份有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36;G06F8/30 |
| 代理公司: | 廈門福貝知識產權代理事務所(普通合伙) 35235 | 代理人: | 陳遠洋 |
| 地址: | 361000 福建省廈門市思明*** | 國省代碼: | 福建;35 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 擴展 腳本 軟件 斷點 調試 方法 裝置 | ||
1.一種基于擴展腳本的軟件斷點調試方法,其特征在于,該方法包括:
擴展腳本生成步驟,將編譯型語言編寫的軟件的一功能使用解釋語言編寫實現該功能的擴展腳本,并在該擴展腳本中添加調試錨點;
轉換步驟,將所述功能涉及的編譯型語言編寫的軟件的鏈接庫轉換為解釋語言可調用的鏈接庫;
調試步驟,通過調試器基于所述擴展腳本中添加調試錨點對軟件進行斷點調試,具體操作為:在所述軟件的界面上啟動調試操作以打開Python調試器,同時執行所述擴展腳本,所述擴展腳本在錨點X處等待外部附加調試;Python調試器執行附加調試,所述擴展腳本的代碼中斷在錨點X的下一行;Python調試器進行單步執行,當執行到函數px時,將px的參數轉換為C++的參數,并把轉換后的C++的參數傳遞給函數fx執行;將函數fx執行后的結果轉換為Python形式通過px返回,并將各變量的結果在Python調試器顯示。
2.根據權利要求1的方法,其特征在于:所述編譯型語言為C++,所述解釋語言Python,所述調試器為Python調試器。
3.根據權利要求2的方法,其特征在于:所述擴展腳本生成步驟的操作為:定義所述軟件的接口集合F={f1,f2,f3,…,fn-1,fn},其中f為細粒度的函數接口;擴展腳本的接口集合P={p1,p2,p3,…,pn-1,pn},p為擴展腳本的函數接口,其中pi和fi功能上對應,1≤i≤n;定義實現所述軟件的一功能所需的接口集合為S,且S∈P;基于所述S編寫實現所述功能的擴展腳本,并在擴展腳本的代碼入口處加上調試錨點X。
4.根據權利要求3的方法,其特征在于:所述轉換步驟的操作為:將所述功能涉及的編譯型語言C++編寫的軟件的鏈接庫DLL轉換為解釋語言Python可調用的鏈接庫pyd。
5.一種基于擴展腳本的軟件斷點調試裝置,其特征在于,該裝置包括:
擴展腳本生成單元,將編譯型語言編寫的軟件的一功能使用解釋語言編寫實現該功能的擴展腳本,并在該擴展腳本中添加調試錨點;
轉換單元,將所述功能涉及的編譯型語言編寫的軟件的鏈接庫轉換為解釋語言可調用的鏈接庫;
調試單元,通過調試器基于所述擴展腳本中添加調試錨點對軟件進行斷點調試,具體操作為:在所述軟件的界面上啟動調試操作以打開Python調試器,同時執行所述擴展腳本,所述擴展腳本在錨點X處等待外部附加調試;Python調試器執行附加調試,所述擴展腳本的代碼中斷在錨點X的下一行;Python調試器進行單步執行,當執行到函數px時,將px的參數轉換為C++的參數,并把轉換后的C++的參數傳遞給函數fx執行;將函數fx執行后的結果轉換為Python形式通過px返回,并將各變量的結果在Python調試器顯示。
6.根據權利要求5的裝置,其特征在于:所述編譯型語言為C++,所述解釋語言Python,所述調試器為Python調試器。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于廈門市美亞柏科信息股份有限公司,未經廈門市美亞柏科信息股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011599164.2/1.html,轉載請聲明來源鉆瓜專利網。





