异常、中断、断点、单步、GDB、GDBSERVER

1. 异常

 异常大家都知道,cpu不正常的时候,就是异常,什么时候不正常呢?除0,指令未定义,总线信号错,总之导致cpu无法工作的,都是异常.

分类时,一般把中断的概念划分给为异常.

2. 中断

 软件中断,硬件中断,等等,很好理解.

3. 断点

想要让cpu在制定的地址前,停下来,之后,看cpu的状态,程序的状态,是调试的需要。cpu支持断点,方法很多,指令里加断点bit;加断点软中断等.跟cpu有关,要硬件支持.

4. 单步

让cpu一步一步指令执行,执行一条指令后停止,类似于断点,但不是断点,不太可能所以的指令都加断点bit,插入断点中断是可能的。主要还是cpu支持,标记后,cpu在每条指令后异常即可.

5. GDB

gnu工具里重要的一个,支持调试程序,支持本地程序,gdbserver程序,通过各种方式连接gdbserver.

6. GDBServer

是很好的一个概念,跟gdb之间通过gdb remote serial protocol, RSP通信,简单的交互过程,实现了很多很好的功能.

具体协议看文档,或者代码更好.

作者:linucos

出处:http://linucos.cnblogs.com

声明因文章引起的任何问题,本博客不负任何责任;版权所有,欢迎转载 
原文地址:https://www.cnblogs.com/linucos/p/2939985.html