指令集模拟器

1、部分集成开发环境提供了指令集模拟器,可方便用户在PC机上完成一部分简单的调试工作,但是由于指令集模拟器与真实的硬件环境相差很大,因此即使用户使用指令集模拟器调试通过的程序也有可能无法在真实的硬件环境下运行,用户最终必须在硬件平台上完成整个应用的开发。

驻留监控软件

1、运行在目标板上的程序,集成开发环境中的调试软件通过以太网口,并行端口,串行端口等通讯端口与驻留软件进行交互。

2、由调试软件发布命令通知驻留监控软件控制程序的执行、读写存储器、读写寄存器、设置断点等。

3、驻留监控软件是一种比较低廉有效的调试方式,不需要任何其他的硬件调试和仿真设备。例如ARM公司的Angel。

4、大部分嵌入式实时操作系统也是采用该类软件进行调试,不同的是在嵌入式实时操作系统中,驻留监控软件是作为操作系统的一个任务存在的。

JTAG

1、jtag是一种国际标准测试协议,主要用于芯片内部测试。

2、基于芯片边界扫描链进行调试,读取引脚状态,寄存器值。

3、硬件断点,当cpu去读某个地址的指令时,将cpu挂起。

4、软件断点,程序在编译时,生成调试信息,根据调试信息,从源代码的某行定位到指令的存储地址,然后调试软件利用硬件断点的原理将cpu挂起。

5、gdb就是利用软件断点来进行调试的。

在线仿真器

1、使用仿真头完全取代目标板上的cpu,可以完全仿真ARM芯片行为。

2、主要用于ARM硬件开发中,价格昂贵,难以普及

最新文章

  1. sql 保留两位小数+四舍五入
  2. AFNetwork ATS 网络层改造
  3. 您还有心跳吗?超时机制分析(java)
  4. python 中date datetime time 与str的互转
  5. 使用 archetype插件创建maven目录结构
  6. VC++编译zlib
  7. atol字符串转换函数应用实例
  8. Mvc里查询商品页面
  9. 我的Python成长之路---第四天---Python基础(14)---2016年1月23日(寒风刺骨)
  10. 【七】注入框架RoboGuice使用:(Your First Custom Binding)
  11. 将ADS1.2的工程迁移到KEIL上-基于2440
  12. 浅谈Java工具类CommonUtils的使用
  13. Angular JS的正确打开姿势——简单实用(下)
  14. java中的接口概念
  15. angular6 开发实践基础知识汇总
  16. Javascript 使用 async 声明符和 await 操作符进行异步操作
  17. C/C++中volatile关键字详解
  18. 虚拟机Linux不能上网简单有效的解决办法
  19. 使用WinForm Chart控件 制作饼装,柱状,折线图
  20. js 动态生成html 触发事件传参字符转义

热门文章

  1. 如何监控Redis性能指标(译)
  2. dump命令详解
  3. Fiddler基础使用三之请求过滤
  4. centos中pipelinedb安装及初步使用
  5. [转]一千行 MySQL 学习笔记
  6. python 写入数据
  7. echarts简单的折线图
  8. 一段自适应的CSS代码
  9. Linux Apache虚拟主机配置方法
  10. net core中动态给log4net添加日志类型