中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      Gdb/Armulator 源代碼分析

      時(shí)間:2024-05-09 00:10:45 理工畢業(yè)論文 我要投稿
      • 相關(guān)推薦

      Gdb/Armulator 源代碼分析

      作者Email: Anti_chen2000@sohu.com

      摘要

      Gdb/Armulator 是Gdb自帶的arm7模擬器,是調(diào)試arm程序的一個(gè)好工具.而了解它的原碼結(jié)構(gòu)對(duì)擴(kuò)展它的IO功能有重要意義.本文介紹了從Armulator的啟動(dòng)到其內(nèi)部運(yùn)作和IO擴(kuò)展的大部分原代碼功能.

      說(shuō)明

      源代碼用的是gdb-5.0.tar gdb-5.0-uclinux-armulator-20021127.patch

      A.和GDB間的通迅

      Armulator一般和Gdb通訊有兩種方式,其一是在Gdb內(nèi)部直接調(diào)用模擬器的相關(guān)函數(shù),另一方法則是用pipe或socket傳遞RDP協(xié)議來(lái)連接Gdb和Amulator.而第一種方法是現(xiàn)在Gdb/Armulator所真正使用的(第二種是早期使用的方法),下面就分析了函數(shù)直接調(diào)用法.

      函數(shù)直接調(diào)用

      這個(gè)方法是由Steve (sac@cygnus.com) 修改原RDP方法而來(lái)的,Steve本人的描述如下:
      /******************************************************
      This directory contains the standard release of the ARMulator from
      Advanced RISC Machines, and was ftp'd from.

      ftp.cl.cam.ac.uk:/arm/gnu

      It likes to use TCP/IP between the simulator and the host, which is
      nice, but is a pain to use under anything non-unix.

      I've added created a new Makefile.in (the original in Makefile.orig)
      to build a version of the simulator without the TCP/IP stuff, and a
      wrapper.c to link directly into gdb and the run command.

      It should be possible (barring major changes in the layout of
      the armulator) to upgrade the simulator by copying all the files
      out of a release into this directory and renaming the Makefile.

      (Except that I changed armos.c to work more simply with our
      simulator rigs)
      ********************************************************/
      /gdb/target.c,/gdb/remote_sim.c以及在/sim/arm/wrapper.c是在Armulator和Gdb的通信中起著至關(guān)重要做用的幾個(gè)文件.所有的Gdb調(diào)試命令最后都是通過(guò)在target.h里定義的target_ops結(jié)構(gòu)中的函數(shù)指針調(diào)用在/sim/arm/wrapper.c中型如sim_xxx的函數(shù)完成的.以前這些sim_xxx函數(shù)是位于/sim/common中的,是建立RDP通訊的關(guān)鍵,代碼修改后此目錄中的文件不再有用,被wrapper.c取而代之了.

      以下是RDP 通訊和直接函數(shù)調(diào)用的圖示:

      要清楚Armulator的執(zhí)行過(guò)程就要從它的啟動(dòng)說(shuō)起,當(dāng)你在Gdb中鍵入target sim 去激活A(yù)mulator后Gdb首先進(jìn)行命令行解釋,并將current_target指針指向sim變量,即將Armulator的調(diào)試函數(shù)集賦予Gdb,隨后的函數(shù)調(diào)用堆棧如下:

      --àgdbsim_open (…) in remote-sim.c.
      --àsim_open(…) in /sim/arm/wrapper.c/*這里Amulator對(duì)調(diào)用參數(shù)進(jìn)行分析處理*/
      --à*current_target-

      【Gdb/Armulator 源代碼分析】相關(guān)文章:

      免費(fèi)vc++網(wǎng)上尋呼QICQ源代碼(附帶論文)(一)11-22

      delphi源代碼+可執(zhí)行文件+考試系統(tǒng)(一)03-07

      delphi+access網(wǎng)絡(luò)考試系統(tǒng)[開(kāi)題報(bào)告+論文+源代碼+答辯ppt+03-07

      分析哲學(xué)與哲學(xué)分析03-07

      分析魏晉文人的生命的價(jià)值分析03-18

      “案例分析”應(yīng)重在分析-關(guān)于搞好“案例分析”的若干想法12-03

      分析魏晉文人的生命的價(jià)值分析論文11-16

      論聚類分析在市場(chǎng)分析中的應(yīng)用03-19

      談聚類分析在市場(chǎng)分析中的應(yīng)用03-18

      主站蜘蛛池模板: 国产亚洲欧美日韩国产片| 天柱县| 亚洲精品一区二区三区免费观看| 日韩肥熟妇无码一区二区三区| 在线观看视频日本一区二区三区| 亚洲AV永久无码精品表情包| 富川| 国产亚洲一区二区三区夜夜骚| 青青草视频在线视频播放| 国产剧情麻豆一区二区三区亚洲| 依安县| 广州市| 亚洲av色在线观看网站| 狠狠色噜噜狠狠狠狠97俺也去| 久久精品美女久久| 国产成人综合亚洲av| 桐乡市| 石棉县| 凤山市| 国产丝袜美腿美女视频| 色婷婷狠狠97成为人免费| 亚洲无线码一区在线观看| 蜜桃成人永久免费av大| 欧美亚洲另类国产18p| 国产视频网站一区二区三区| 扬中市| 江山市| 国产黄片一区视频在线观看| 五大连池市| 江阴市| 亚洲欧美国产成人综合不卡| 安国市| 四虎无码精品a∨在线观看| 亚洲精品二区在线观看| 加勒比东京热久久综合| 日韩人妻中文字幕一区二区| 昌图县| 大乳丰满人妻中文字幕韩国| 99久久99久久精品免观看| 香蕉久久夜色精品国产| 亚洲成人av一区二区麻豆蜜桃|