|
楼主 |
发表于 2008-11-23 09:38:17
|
显示全部楼层
GDB RSP(Remote Serial Protocol)定义了GDB宿主机与被调试目标机进行通信时数据包的格式。信息的格式是:$数据#校验码。多数信息使用ASCII码,数据由一系列的 ASCII码组成,校验码是由两个16进制数组成的单字节校验码。接收方接收数据并校验,若正确则回应“+”,否则回应“-”。通信的内容包括读写数据、控制程序运行、报告程序状态等命令。RSP的基本命令从通信对话角度可以分为两种:
(1)请求
?:读当前系统状态
g:读所有寄存器
G<regiater_data>:写所有寄存器
m<address>,<length>:读内存
M<address>,<length>:<memory_data>:写内存
c:继续执行
s:单步执行
k:终止进程
(2)答复
“”:告诉GDB上次请求命令不支持。
E:告诉GDB出错
OK:上次请求正确
w<exit_Status>:系统在“exit_status”状态下退出。
X<signal>:系统在signal信号下终止。
S<signal>:系统在signal信号下停止。
O:告诉GDB控制台输出。这也是惟一向GDB发出的命令。
完整的RSP协议描述:
http://sourceware.org/gdb/current/onlinedocs/gdb_34.html#SEC708
本贴被 queue 编辑过,最后修改时间:2008-11-23,09:41:05. |
|