新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 關于WinCE的調試技術簡介之調試程序

        關于WinCE的調試技術簡介之調試程序

        作者: 時間:2016-09-12 來源:網絡 收藏

        模擬器運行后,就可以調試程序了。使用Evc調試和VC++很類似。可以設置斷點,點擊調試后就在工具欄中出現調試按鈕,可以進行單步調試,查看線程和模塊信息,以及捕獲異常。

        本文引用地址:http://www.104case.com/article/201609/304645.htm

        PB中啟動模擬器后,可以使用Kerneldebugger查看系統內部信息。使用target control窗口進行內核調試。這是一個命令行模式的shell:

        Welcome to the Windows CE Shell. Type ? for help.

        Windows CE>

        通過?命令可以查看支持的命令選項。可以查看系統進程和線程信息,內存信息,可以啟動新的進程和關閉之。還可以掛起設備等。也可以在鼠標右鍵的彈出菜單中選擇相應的項,通過特定窗口察看,比命令方便一些。在輸出窗口中會顯示每一個程序運行時加載的DLL庫。

        具體的調試情況需要在實踐中不斷摸索。下面我就介紹一下evc和pb中均提供的十大遠程調試工具。

        1.Remote File Viewer

        遠程文件瀏覽器。

        這個工具類似于Windows Explorer,可以顯示WinCE目標設備上的目錄層次和文件。通過這個工具,可以在主機和目標機之間互傳文件,也可以刪除目標設備上的文件。使用這個工具,方便了程序的下載和調試。

        2.Remote Process Viewer

        遠程進程查看工具

        這 個工具可以查看WinCE上所有運行的進程以及它的現成的信息。包括進程的名稱,PID,進程基本優先級,進程的線程數,進程基地址和訪問鍵值,窗口名 稱;線程ID,線程的當前進程ID(因為有的線程需要其它的進程來加載模塊),線程優先級,線程訪問鍵值;模塊名稱和ID,模塊的進程使用計數,全局使用 計數,基地址和大小,模塊的句柄和路徑名稱等。

        在這個工具中可以看到,每個進程的地址空間是32MB,核心進程NK.exe從4000 000開始,所以系統將第0和1兩個槽來加載當前進程。在WinCE4.0以前只有第0個槽。現在的第1個槽用于當前進程使用的DLL,并且保證不和其它進程使用的DLL發生沖突。

        3.Remote Zoomin

        這個工具可以抓取目標設備的屏幕圖像,可以保存為位圖文件或到剪切板上。

        4.Remote Registy Editor

        遠程注冊表編輯器

        這個工具可以顯示主機和目標機的注冊表,可以編輯注冊表或導出注冊表。對于查看目標設備的驅動程序配置信息很有用。網上也有下載WinCE下的注冊表編輯器。

        5.Remote Heap Walker

        遠程堆查看器

        這個工具可以列出目標機上所有運行的進程和他們的堆的使用情況。每個進程開始時,系統只提供192KB的堆,且不立刻提供物理內存。程序可以申請更大的堆。WinCE分配的堆是不能移動的,所以要頻繁的分配和釋放內存,最好自己預先分配一個大堆,用完后釋放。

        這個工具顯示每個進程分配的堆ID,堆的塊地址和大小以及堆的創建標志。HF32_DEFAULT表示是系統默認創建的堆。塊的標志有fixed和free兩種。前者表示不能釋放,后者表示可以釋放,這是給內存管理單元看的 。



        關鍵詞:

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 吉木萨尔县| 吉隆县| 平原县| 万载县| 湘阴县| 吕梁市| 永登县| 军事| 锡林郭勒盟| 丹东市| 新巴尔虎左旗| 自治县| 白河县| 城固县| 博罗县| 乐平市| 常州市| 广宗县| 密云县| 贵州省| 砀山县| 张家口市| 盐边县| 福清市| 夹江县| 乡宁县| 临澧县| 玉门市| 霍邱县| 怀化市| 苗栗县| 静安区| 海口市| 洛川县| 东乡| 房山区| 尼勒克县| 农安县| 滦平县| 朔州市| 阿克|