[發明專利]一種兼容的接口創建方法和系統在審
| 申請號: | 201510971806.X | 申請日: | 2015-12-22 |
| 公開(公告)號: | CN106909430A | 公開(公告)日: | 2017-06-30 |
| 發明(設計)人: | 路堯 | 申請(專利權)人: | 北京奇虎科技有限公司;奇智軟件(北京)有限公司 |
| 主分類號: | G06F9/45 | 分類號: | G06F9/45 |
| 代理公司: | 北京潤澤恒知識產權代理有限公司11319 | 代理人: | 蘇培華 |
| 地址: | 100088 北京市西城區新*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 兼容 接口 創建 方法 系統 | ||
技術領域
本發明涉及計算機技術領域,特別是涉及一種兼容的接口創建方法和一種兼容的接口創建系統。
背景技術
內核態與用戶態(用戶態可以理解為應用態)是操作系統的兩種運行級別,Windows的設備驅動程序就是運行在內核態下,而用戶應用程序都運行在用戶態下。用戶態的程序運行在非特權處理機模式上,其他一些被保護的子系統代碼也運行在該模式上。用戶態的程序不能獲得系統數據的存取權,除非調用Win32API(Application Programming Interface,應用程序編程接口)或者系統服務。內核態的驅動程序作為操作系統的一個組成部分被執行——支持一個或多個受保護的子系統的操作系統底層組件。
Windows平臺的內核開發上存在一種開發需求,如對于同一套邏輯,同時需要內核態的代碼和用戶態的代碼。但是實際應用中,對于同一功能,對應該功能的內核態的接口函數和應用態的接口函數不同。因此,開發人員需要分別記錄內核態形式的接口函數和應用態形式的接口函數,在編譯內核態的代碼時不能使用應用態的接口函數,反之在編譯應用態的代碼時不能使用內核態的接口函數。如此對于開發人員來說,對于相同功能存在不同的形式的接口函數,其開發更復雜,并且要完全分別開發,開發效率低。
發明內容
鑒于上述問題,提出了本發明以便提供一種克服上述問題或者至少部分地解決上述問題的兼容的接口創建方法和相應的兼容的接口創建裝置。
依據本發明的一個方面,提供了一種兼容的接口創建系統,包括:
內核態接口創建模塊、應用態接口創建模塊、公用接口庫;
內核態接口創建模塊,適于在內核態實例中,為全局的函數指針變量加載對應內核態接口函數的第一對象;所述函數指針變量針對一對內核態接口函數和應用態接口函數;所述一對內核態接口函數和應用態接口函數具有相同的參數;
應用態接口創建模塊,適于在應用態實例中,為所述全局的函數指針變量加載對應應用態接口函數的第一對象;
公用接口庫,適于根據所述函數指針變量,為公用接口函數生成調用接口;所述公用接口函數具有所述內核態接口函數和應用態接口函數相同的參數。
優選地,在內核態接口創建模塊和應用態接口創建模塊之前還包括:
全局指針定義模塊,適于為每對內核態接口函數和應用態接口函數定義同一個全局的函數指針變量。
優選地,所述內核態接口創建模塊包括:
內核實例創建模塊,適于創建內核態實例;
內核態初始化模塊,適于在內核態實例中,獲取所述函數指針變量,并為函數指針變量加載對應內核態接口函數的符號。
優選地,所述應用態接口創建模塊包括:
應用實例創建模塊,適于創建應用態實例;
應用態初始化模塊,適于在應用態實例中,獲取所述函數指針變量,并為函數指針變量加載對應應用態接口函數的符號。
優選地,內核態接口創建模塊還包括:
內核接口函數導出模塊,適于獲取所述公用接口函數的調用接口,并根據所述公用接口函數的調用接口導出內核接口函數文件;
所述應用態接口創建模塊還包括:
應用接口函數導出模塊,適于獲取所述公用接口函數的調用接口,并根據所述公用接口函數的調用接口導出應用接口函數文件。
優選地,還包括:
應用態程序除錯模塊,適于通過應用態程序接口選擇文件和/或、標準輸入輸出調試方式、和/或調試輸出調試方式;所述應用態程序除錯接口模擬內核態程序除錯接口。
根據本發明的另一方面,提供一種兼容的接口創建方法,包括:
在內核態實例中,為全局的函數指針變量加載對應內核態接口函數的第一對象;所述函數指針變量針對一對內核態接口函數和應用態接口函數;所述一對內核態接口函數和應用態接口函數具有相同的參數
在應用態實例中,為所述全局的函數指針變量加載對應應用態接口函數的第一對象;
根據所述函數指針變量,為公用接口函數生成調用接口;所述公用接口函數具有所述內核態接口函數和應用態接口函數相同的參數。
優選地,在內核態實例中,為全局的函數指針變量加載對應內核態接口函數的第一對象和在應用態實例中,為所述全局的函數指針變量加載對應應用態接口函數的第一對象之前,還包括:
為每對內核態接口函數和應用態接口函數定義同一個全局的函數指針變量。
優選地,所述在內核態實例中,為全局的函數指針變量加載對應內核態接口函數的第一對象包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京奇虎科技有限公司;奇智軟件(北京)有限公司,未經北京奇虎科技有限公司;奇智軟件(北京)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510971806.X/2.html,轉載請聲明來源鉆瓜專利網。





