日期:2014-05-16  浏览次数:20826 次

linux中有没有类似windows里的debug命令的功能?
今天突然发现windows的cmd中debug命令简直就是一个神器……
除了调试以外,还能
1、随意访问进程地址空间
2、随意修改进程地址空间(只读的还是改不了)
3、可以在debug中直接写汇编代码,自己指定代码的存放地址,就像写脚本一样
4、因为是设备统一编址,所以还可以访问bios的rom,以及直接修改显存
简直就是强大的一塌糊涂……

本以为强大的linux也有类似的工具,不过找了好久都没有找到类似的工具,不知道论坛的大牛们有没有好的方法能实现以上的4个功能……
本以为gdb可以办到,而实际上gdb也半不到:
比如:在gdb中输入:x/10xb 0x0,结果显示:cannot access memory at address 0x0,好像是系统不允许访问0地址空间,但是windows的debug却表示根本无压力……

------解决方案--------------------
用jtag仿真器吧,可以访问任意“虚拟地址”。
------解决方案--------------------
GDB怎么样呢?
------解决方案--------------------
windows的cmd中debug命令是在ntvdm中运行的,是个虚拟的环境
你试试把中断向量表清空windows是否会崩溃

linux中用gdb
------解决方案--------------------
GDB 么,直接layout asm,或者bochs 也行的,你说的全在里面,GDB很强大!
------解决方案--------------------
看一楼,那个是V86模式。