1、 指令集模拟器
部分集成开发环境提供了指令集模拟器,可方便用户在PC机上完成一部分简单的调试工作,但是由于指令集模拟器与真实的硬件环境相差很大,
因此即使用户使用指令集模拟器调试通过的程序也有可能无法在真实的硬件环境下运行,用户最终必须在硬件平台上完成整个应用的开发。
2、 驻留监控软件
驻留监控软件(Resident Monitors)是一段运行在目标板上的程序,集成开发环境中的调试软件通过以太网口、并行端口、串行端口等通讯端口与驻留监控软件进行交互,
由调试软件发布命令通知驻留监控软件控制程序的执行、读写存储器、读写寄存器、设置断点等。驻留监控软件是一种比较低廉有效的调试方式,不需要任何其他的硬件调试和仿真设备。ARM公司的Angel就是该类软件,大部分嵌入式实时操作系统也是采用该类软件进行调试,不同的是在嵌入式实时操作系统中,驻留监控软件是作为操作系统的一个任务存在的。
3、 JTAG仿真器
JTAG仿真器也称为JTAG调试器,是通过ARM芯片的JTAG边界扫描口进行调试的设备。JTAG仿真器比较便宜,连接比较方便,通过现有的JTAG边界扫描口与
ARM CPU 核通信,属于完全非插入式(即不使用片上资源)调试,它无需目标存储器,不占用目标系统的任何端口,而这些是驻留监控软件所必需的。
另外,由于JTAG调试的目标程序是在目标板上执行,仿真更接近于目标硬件,因此,许多接口问题,如高频操作限制、AC和DC参数不匹配,电线长度的限制等被最小化了

ARM常用的调试方式与ARM培训班常见的调试方法相关推荐

  1. 服务器硬盘常用的阵列方式有几种,常见的RAID阵列方式

    刚才给大家简单介绍了一下Promise RAID卡的发展历史,接下来我们看看常见的几种RAID阵列方式.常见的RAID阵列组合有:RAID0.RAID1.RAID10.RAID5.RAID6等. RA ...

  2. PHP 调试 - 方式

    之前学 Java 的时候,一直使用 IDE 的 console 控制台进行调试.后来搞 PHP 后,习惯在代码里面 echo 和 exit,然后在浏览器刷新看效果,把单步调试.变量值查看等常用的调试方 ...

  3. gdb的简单使用和gdb+gdbserver方式进行ARM程序调试

    gdb的简单使用 GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具.或许,各位比较喜欢那种图形界面方式的,像VC.BCB等IDE的调试,但如果你是在 UNIX平台下做软件,你会发现GDB ...

  4. ARM CPU挂死和总线挂死的DS-5调试方法

    DS-5以及配套的DSTREAM/RealView是对ARM处理器进行裸机调试的利器,本文将针对工作中常见的CPU挂死情况,进行具体分析,将介绍如何区分CPU挂死以及通过CSAT区分总线挂死的具体操作 ...

  5. arm ida 伪代码 安卓 符号表_使用IDA动态调试及ARM指令学习笔记

    本文介绍如何用IDA进行动态调试及部分ARM指令的学习. 环境:已root的安卓手机一部,IDA pro 6.8,win7系统. 下载样本app,并已确认可调试(debuggable = true), ...

  6. 嵌入式:ARM常用开发编译软件介绍

    文章目录 编译器介绍 1.ADS1.2 2.ARM RealView Developer Suite (RVDS) 3.IAR EWARM 4.KEIL ARM-MDKARM 5.WIN ARM-GC ...

  7. 同级中断可以嵌套吗_这可能是最通俗易懂的方式讲解ARM中断原理以及中断嵌套...

    几天前一个学生问我ARM中断嵌套的问题,我才发现原来在我心中理所当然的事对学生来说理解实属不易. ARM有七种模式,我们这里只讨论SVC.IRQ和FIQ模式. 我们可以假设ARM核心有两根中断引脚(实 ...

  8. 单步调试_keil for arm 调试时无法单步运行及打断点

    在keil调试的过程中,会出现部分函数断点打不上去.单步调试step over功能无法使用的情况.造成该情况的主要原因可能为编译时使用的优化等级过高,导致其调试信息失真的问题. 解决办法,打开魔术棒- ...

  9. Android动态方式破解apk进阶篇(IDA调试so源码)

    一.前言 今天我们继续来看破解apk的相关知识,在前一篇:Eclipse动态调试smali源码破解apk 我们今天主要来看如何使用IDA来调试Android中的native源码,因为现在一些app,为 ...

最新文章

  1. 自然语言处理 的 一些环境和包
  2. 阐述Spring security实现用户认证授权的原理----基于session实现认证的方式
  3. Source insight关联QT库函数
  4. Oracle RAC安装过程中所使用的一些配置
  5. C语言创建一个节点Node(附完整源码)
  6. etcd raft library设计原理和使用
  7. 思科集成管理控制器IMC爆出任意代码执行漏洞CVE-2017-6616 绿盟科技发布安全威胁通告...
  8. Linux--iptables常用命令
  9. 有关UITableviewCell 重用内存 内部解析
  10. String 转 jsonObject
  11. pcb天线和纯铜天线_PCB天线和FPC天线有怎样的特性
  12. 【数据挖掘学习笔记】数据挖掘中主要问题有哪些?
  13. Photoneo为IKEA提供家具零件包装自动化解决方案
  14. 异地监控组网实战案例(速度快)
  15. oCPC实践录 | oCPC产品设计与出价原理(1)
  16. 【已解决替代Google英文网页翻译】英文网页翻译成中文(不用额外的插件解决方法)
  17. Ubuntu18.04+ROS melodic 控制UR5机器人(持续更新)
  18. UG CAM 开发获取工序导航器当前选择的操作、程序组、几何体、刀具方法,获得名字并修改名字
  19. FileNotFoundException open failed: XXXXXXX EPERM (Operation not permitted)的坑
  20. Spring Security(12)——Remember-Me功能

热门文章

  1. swap的实现(没有中间变量)
  2. 获取某字符 之后 之前
  3. WF初学者对工作流的认识
  4. python常用内建函数
  5. 理解bootstrap的列偏移offset 和 推拉push/pull的区别?
  6. 计算机网络运输层之多路复用与多路分解
  7. RabbitMQ接触(二)
  8. Java并发教程(Oracle官方资料)
  9. win7如何打开防火墙某个端口的tcp连接
  10. ios开发学习--列表(Table)效果源码分享--系列教程4