[發(fā)明專利]一種基于主機(jī)端動(dòng)態(tài)鏈接的嵌入式系統(tǒng)動(dòng)態(tài)模塊調(diào)試系統(tǒng)有效
| 申請(qǐng)?zhí)枺?/td> | 201710893864.4 | 申請(qǐng)日: | 2017-09-28 |
| 公開(公告)號(hào): | CN107577609B | 公開(公告)日: | 2021-06-04 |
| 發(fā)明(設(shè)計(jì))人: | 張記強(qiáng);瞿秋薏;張楊;孟慶磊 | 申請(qǐng)(專利權(quán))人: | 北京計(jì)算機(jī)技術(shù)及應(yīng)用研究所 |
| 主分類號(hào): | G06F11/36 | 分類號(hào): | G06F11/36 |
| 代理公司: | 中國兵器工業(yè)集團(tuán)公司專利中心 11011 | 代理人: | 張然 |
| 地址: | 100854*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 主機(jī) 動(dòng)態(tài) 鏈接 嵌入式 系統(tǒng) 模塊 調(diào)試 | ||
本發(fā)明公開了一種基于主機(jī)端動(dòng)態(tài)鏈接的嵌入式系統(tǒng)動(dòng)態(tài)模塊調(diào)試系統(tǒng),其中,包括:宿主機(jī)與目標(biāo)機(jī);宿主機(jī)包括:工程管理模塊,用于在新建工程時(shí),指定工程編譯后生成可重定位的目標(biāo)文件;動(dòng)態(tài)鏈接器,用于宿主機(jī)根據(jù)可重定位文件、鏈接腳本與目標(biāo)機(jī)反饋的符號(hào)實(shí)際地址生成可絕對(duì)定位的目標(biāo)文件;GDB調(diào)試器,用于用戶通過命令或者圖形化的方式發(fā)送調(diào)試命令;宿主機(jī)支撐平臺(tái),用于作為宿主機(jī)與目標(biāo)機(jī)的通信接口;目標(biāo)機(jī)包括:動(dòng)態(tài)加載器,用于管理目標(biāo)機(jī)上所有的符號(hào);動(dòng)態(tài)鏈接器代理模塊,用于與宿主機(jī)動(dòng)態(tài)鏈接器的交互,為動(dòng)態(tài)鏈接器完成動(dòng)態(tài)鏈接提供服務(wù);調(diào)試代理模塊,用于通過接收GDB調(diào)試器的調(diào)試命令,控制被調(diào)試程序的運(yùn)行;目標(biāo)機(jī)支撐平臺(tái),用于作為目標(biāo)機(jī)與主機(jī)的通信接口為網(wǎng)絡(luò)。
技術(shù)領(lǐng)域
本發(fā)明屬于計(jì)算機(jī)嵌入式軟件領(lǐng)域,具體涉及一種基于主機(jī)端動(dòng)態(tài)鏈接的嵌入式系統(tǒng)動(dòng)態(tài)模塊調(diào)試系統(tǒng)。
背景技術(shù)
動(dòng)態(tài)鏈接是相對(duì)于靜態(tài)鏈接而言的一種技術(shù)。動(dòng)態(tài)鏈接在編譯階段不對(duì)組成程序的目標(biāo)文件鏈接,而是將鏈接過程推遲到了運(yùn)行時(shí)再進(jìn)行。對(duì)于資源有限的嵌入式系統(tǒng),動(dòng)態(tài)鏈接技術(shù)可以有效解決共享的目標(biāo)文件多個(gè)副本浪費(fèi)磁盤和內(nèi)存空間的問題,還可以減少物理頁面的換入換出,增加CPU緩存的命中率,同時(shí)還可以使程序升級(jí)變得更加容易。
動(dòng)態(tài)鏈接的基本思想決定了動(dòng)態(tài)模塊對(duì)應(yīng)目標(biāo)文件中的函數(shù)和變量的地址是相對(duì)地址,其真實(shí)地址在動(dòng)態(tài)模塊運(yùn)行時(shí)才能產(chǎn)生,這就為動(dòng)態(tài)模塊的在線調(diào)試帶來了問題,因?yàn)檎{(diào)試過程要求獲悉被調(diào)試目標(biāo)文件內(nèi)函數(shù)和變量的真實(shí)地址。桌面系統(tǒng)常用的解決方法是在調(diào)試之前首先將動(dòng)態(tài)模塊與應(yīng)用模塊鏈接,使動(dòng)態(tài)模塊各符號(hào)具有絕對(duì)地址,這樣調(diào)試器就可以訪問和控制被調(diào)試的動(dòng)態(tài)模塊。與桌面系統(tǒng)不同的是,嵌入式系統(tǒng)采用遠(yuǎn)程交叉調(diào)試的方式,即調(diào)試器運(yùn)行于宿主機(jī)的通用桌面系統(tǒng),被調(diào)試程序運(yùn)行于目標(biāo)機(jī)的嵌入式系統(tǒng),調(diào)試器通過目標(biāo)機(jī)的調(diào)試代理遠(yuǎn)程控制和訪問運(yùn)行在目標(biāo)機(jī)系統(tǒng)上的被調(diào)試程序。
目前在對(duì)嵌入式系統(tǒng)動(dòng)態(tài)模塊進(jìn)行調(diào)試時(shí),通常的方案是主機(jī)端在遇到目標(biāo)文件中的未定義符號(hào)時(shí),向目標(biāo)機(jī)獲取符號(hào)的絕對(duì)定位地址,目標(biāo)機(jī)則將符號(hào)及符號(hào)絕對(duì)定位地址返回給主機(jī)端,從而完成一次未定義符號(hào)的調(diào)試過程。
主機(jī)端通過在調(diào)試過程中查詢未定義符號(hào)運(yùn)行時(shí)地址,完成調(diào)試的手段,需要在調(diào)試時(shí)反復(fù)多次進(jìn)行主機(jī)端與目標(biāo)機(jī)的信息交互。這種方式無疑提高了調(diào)試階段宿主機(jī)與目標(biāo)機(jī)信息交互頻次,降低了調(diào)試的性能,影響用戶體驗(yàn)。此外,主機(jī)端實(shí)現(xiàn)調(diào)試過程依賴于目標(biāo)機(jī)文件系統(tǒng)和動(dòng)態(tài)加載器的實(shí)現(xiàn),降低了主機(jī)端調(diào)試功能的通用性和可移植性。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種基于主機(jī)端動(dòng)態(tài)鏈接的嵌入式系統(tǒng)動(dòng)態(tài)模塊調(diào)試系統(tǒng),用于解決上述現(xiàn)有技術(shù)的問題。
本發(fā)明一種基于主機(jī)端動(dòng)態(tài)鏈接的嵌入式系統(tǒng)動(dòng)態(tài)模塊調(diào)試系統(tǒng),其中,包括:宿主機(jī)與目標(biāo)機(jī);宿主機(jī)包括:工程管理模塊,用于在新建工程時(shí),指定工程編譯后生成可重定位的目標(biāo)文件;動(dòng)態(tài)鏈接器,用于宿主機(jī)根據(jù)可重定位文件、鏈接腳本與目標(biāo)機(jī)反饋的符號(hào)實(shí)際地址生成可絕對(duì)定位的目標(biāo)文件;GDB調(diào)試器,用于用戶通過命令或者圖形化的方式發(fā)送調(diào)試命令;宿主機(jī)支撐平臺(tái),用于作為宿主機(jī)與目標(biāo)機(jī)的通信接口;目標(biāo)機(jī)包括:動(dòng)態(tài)加載器,用于管理目標(biāo)機(jī)上所有的符號(hào);動(dòng)態(tài)鏈接器代理模塊,用于與宿主機(jī)動(dòng)態(tài)鏈接器的交互,為動(dòng)態(tài)鏈接器完成動(dòng)態(tài)鏈接提供服務(wù);調(diào)試代理模塊,用于通過接收GDB調(diào)試器的調(diào)試命令,控制被調(diào)試程序的運(yùn)行;目標(biāo)機(jī)支撐平臺(tái),用于作為目標(biāo)機(jī)與主機(jī)的通信接口為網(wǎng)絡(luò)。
根據(jù)本發(fā)明的基于主機(jī)端動(dòng)態(tài)鏈接的嵌入式系統(tǒng)動(dòng)態(tài)模塊調(diào)試系統(tǒng)的一實(shí)施例,其中,在CCS開發(fā)環(huán)境中創(chuàng)建一個(gè)可重定位的文件,在工程管理模塊中添加-r選項(xiàng),告知編譯器在編譯階段遇到未定義符號(hào)時(shí)不報(bào)錯(cuò);然后運(yùn)行動(dòng)態(tài)鏈接器,動(dòng)態(tài)鏈接器的輸入為可重定位文件、與目標(biāo)機(jī)有關(guān)的鏈接腳本文件,輸出為一個(gè)絕對(duì)定位的二進(jìn)制文件。
根據(jù)本發(fā)明的基于主機(jī)端動(dòng)態(tài)鏈接的嵌入式系統(tǒng)動(dòng)態(tài)模塊調(diào)試系統(tǒng)的一實(shí)施例,其中,目標(biāo)機(jī)運(yùn)行的嵌入式操作系統(tǒng)為tyche3.7。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京計(jì)算機(jī)技術(shù)及應(yīng)用研究所,未經(jīng)北京計(jì)算機(jī)技術(shù)及應(yīng)用研究所許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710893864.4/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F11-00 錯(cuò)誤檢測(cè);錯(cuò)誤校正;監(jiān)控
G06F11-07 .響應(yīng)錯(cuò)誤的產(chǎn)生,例如,容錯(cuò)
G06F11-22 .在準(zhǔn)備運(yùn)算或者在空閑時(shí)間期間內(nèi),通過測(cè)試作故障硬件的檢測(cè)或定位
G06F11-28 .借助于檢驗(yàn)標(biāo)準(zhǔn)程序或通過處理作錯(cuò)誤檢測(cè)、錯(cuò)誤校正或監(jiān)控
G06F11-30 .監(jiān)控
G06F11-36 .通過軟件的測(cè)試或調(diào)試防止錯(cuò)誤
- 動(dòng)態(tài)矢量譯碼方法和動(dòng)態(tài)矢量譯碼裝置
- 動(dòng)態(tài)口令的顯示方法及動(dòng)態(tài)令牌
- 動(dòng)態(tài)庫管理方法和裝置
- 動(dòng)態(tài)令牌的身份認(rèn)證方法及裝置
- 令牌、動(dòng)態(tài)口令生成方法、動(dòng)態(tài)口令認(rèn)證方法及系統(tǒng)
- 一種動(dòng)態(tài)模糊控制系統(tǒng)
- 一種基于動(dòng)態(tài)信號(hào)的POS機(jī)和安全保護(hù)方法
- 圖像動(dòng)態(tài)展示的方法、裝置、系統(tǒng)及介質(zhì)
- 一種基于POS機(jī)聚合碼功能分離顯示動(dòng)態(tài)聚合碼的系統(tǒng)
- 基于動(dòng)態(tài)口令的身份認(rèn)證方法、裝置和動(dòng)態(tài)令牌





