[發明專利]代碼分析方法、裝置、計算機設備及存儲介質在審
| 申請號: | 202110396877.7 | 申請日: | 2021-04-13 |
| 公開(公告)號: | CN112988593A | 公開(公告)日: | 2021-06-18 |
| 發明(設計)人: | 宋大偉;楊群峰;徐志普 | 申請(專利權)人: | 蘇州沁游網絡科技有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 北京品源專利代理有限公司 11332 | 代理人: | 孟金喆 |
| 地址: | 215006 江蘇省蘇州市蘇州工*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 代碼 分析 方法 裝置 計算機 設備 存儲 介質 | ||
1.一種代碼分析方法,其特征在于,包括:
獲取目標分析代碼,所述目標分析代碼包括多個用于實現不同功能的代碼塊,每個代碼塊中預先標注有功能注解數據;
在目標分析代碼的執行過程中,動態捕捉每個代碼塊在執行過程中所生成的動態描述數據;
根據所述動態描述數據以及所述功能注解數據,形成與所述目標分析代碼對應的執行流程描述信息。
2.根據權利要求1所述的方法,其特征在于,在目標分析代碼的執行過程中,動態捕捉每個代碼塊在執行過程中所生成的動態描述數據,包括:
在目標分析代碼的執行過程中,動態監測實時生成的目標線程;
動態捕捉與所監測的目標線程中所調用的至少一個代碼塊分別對應的代碼塊執行指令,和/或與代碼塊執行指令匹配的執行結果數據;
在所述代碼塊執行指令,和/或與代碼塊執行指令匹配的執行結果數據中,提取與所述目標線程中所調用的至少一個代碼塊分別對應的動態描述數據。
3.根據權利要求2所述的方法,其特征在于,所述在目標分析代碼的執行過程中,動態監測實時生成的目標線程,包括:
在目標分析代碼的執行過程中,動態捕捉生成的線程標識;
根據各所述線程標識,確定分別與各所述線程標識對應的目標線程。
4.根據權利要求2所述的方法,其特征在于,所述根據所述動態描述數據以及所述功能注解數據,形成與所述目標分析代碼對應的執行流程描述信息,包括:
根據同一目標線程中捕捉到的動態描述數據,生成與所述目標線程對應的流程記錄數據;
將所述動態描述數據對應的代碼塊的功能注解數據添加至對應的流程記錄數據中,形成與所述目標分析代碼對應的執行流程描述信息。
5.根據權利要求4所述的方法,其特征在于,所述根據同一目標線程中捕捉到的動態描述數據,生成與所述目標線程對應的流程記錄數據,包括:
生成分別與各所述目標線程對應的流程記錄模板;
將各所述動態描述數據寫入至對應的流程記錄模板中,生成流程記錄數據。
6.根據權利要求5所述的方法,其特征在于,所述將各所述動態描述數據寫入至對應的流程記錄模板中,生成流程記錄數據,包括:
根據所述動態描述數據在各所述目標線程中的生成順序,將各所述動態描述數據依次寫入至對應的流程記錄模板中,生成流程記錄數據,以使各所述流程記錄數據中的動態描述數據具有與所述生成順序一致的排序關系。
7.根據權利要求1-6任一所述的方法,其特征在于,所述動態描述數據包括:所述代碼塊的傳入參數數據、輸出參數數據和數據庫關聯數據。
8.一種代碼分析裝置,其特征在于,包括:
代碼獲取模塊,用于獲取目標分析代碼,所述目標分析代碼包括多個用于實現不同功能的代碼塊,每個代碼塊中預先標注有功能注解數據;
數據捕捉模塊,用于在目標分析代碼的執行過程中,動態捕捉每個代碼塊在執行過程中所生成的動態描述數據;
流程描述模塊,用于根據所述動態描述數據以及所述功能注解數據,形成與所述目標分析代碼對應的執行流程描述信息。
9.一種計算機設備,其特征在于,所述計算機設備包括:
一個或多個處理器;
存儲裝置,用于存儲一個或多個程序;
當所述一個或多個程序被所述一個或多個處理器執行,使得所述一個或多個處理器實現如權利要求1-7中任一所述的代碼分析方法。
10.一種計算機存儲介質,其上存儲有計算機程序,其特征在于,該程序被處理器執行時實現如權利要求1-7中任一所述的代碼分析方法。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于蘇州沁游網絡科技有限公司,未經蘇州沁游網絡科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.17sss.com.cn/pat/books/202110396877.7/1.html,轉載請聲明來源鉆瓜專利網。





