首页 > 其他分享 >KGDB相关调试方式及设置

KGDB相关调试方式及设置

时间:2024-02-28 16:58:30浏览次数:16  
标签:KGDB ttyS1 dev gdb 设置 ttyUSB0 CONFIG 调试

KGDB内核配置选项:

打开:
CONFIG_KGDB
CONFIG_DEBUG_INFO
CONFIG_FRAME_POINTER
关闭:
CONFIG_STRICT_KERNEL_RWX

# CONFIG_STRICT_KERNEL_RWX is not set
CONFIG_FRAME_POINTER=y
CONFIG_KGDB=y
CONFIG_KGDB_SERIAL_CONSOLE=y

  

 

目标机命令行参数:

 

linux /vmlinuz-6.7.0-rc6vec_lbt+ root=/dev/sda3 ro rhgb selinux=0 nokaslr console=ttyS0,115200 kgdboc=ttyS1,115200

  

 

 

目标机启动内核
目标机启动后:
输入命令:echo g > /proc/sysrq-trigger
系统同样会中断,进入假死状态,等待远程gdb的连接

 

调试机端在内核源码目录执行:

sudo chmod 777 /dev/ttyUSB0

gdb vmlinux
set remotelogfile /home/fedora/work/kgdb/linux-loongson/gdb-kgdb.log
set serial baud 115200
target remote /dev/ttyUSB0
Remote debugging using /dev/ttyUSB0

break sys_clone

c

  

 

注意需要保证两台机器的串口是通的,使用如下命令发送数据测试

cat  /dev/ttyS1

echo "hello123" > /dev/ttyUSB0



cat /dev/ttyUSB0

echo "hello123" > /dev/ttyS1

  

 

标签:KGDB,ttyS1,dev,gdb,设置,ttyUSB0,CONFIG,调试
From: https://www.cnblogs.com/lh03061238/p/18041010

相关文章

  • uni-app 组件 uview u-action-sheet 项太多,占满屏幕,设置滚动
    找到文件/uni_modules/uview-ui/components/u-action-sheet/u-action-sheet.vue找到u-action-sheet__item-wrap的类名<viewclass="u-action-sheet__item-wrap">修改成<scroll-viewclass="u-action-sheet__item-wrap"scroll-ystyle=&......
  • Lua调试函数 debug.getinfo() namewhat详解
    Lua调试的时候会用到debug.getinfo()函数,what的值文档给了解释:"Lua":Luafunction"C":Cfunction"main":mainpartofachunk(通过load函数等执行的语句)关于namewhat的值到底表示什么,官方文档只是简单列举(不全)。列举一些常见情况localgetinfo=debug.getinfol......
  • postman 设置全局变量
    目的:如下图,需要把接口返回的data字段内容在下一个接口引用。代码:varjsondate=pm.response.json();//拿到接口返回的全部内容vardata=jsondate.data;//把接口返回内容中需要提取的值赋值给一个参数console.log(data);//可以通过输出到控制台查看是否提取成功;pm......
  • 设置CPU亲和性
    即,某个线程固定跑在某个CPU的(某个)核上/** *设置当前线程cpu亲和性 *@paramicpu索引,如果为-1,那么取消cpu亲和性 *@return是否成功,目前只支持linux---代码块来自ZLtookit */boolsetThreadAffinity(inti){#if(defined(__linux)||defined(__linux__))&&!defined(......
  • Qt 无法连接到进程内QML调试器
    问题:由于在Qt5以上版本默认开启QML调试器造成的。用于告知用户,这将打开一个到运行QML的Javascript解释器的端口,以便从中获得调试输出。显然,这会造成一个安全漏洞,所以在不安全的地方使用时应该关闭它(在释放运行时自动关闭)。Qt4默认不开启QML调试器,而Qt5版本以上默认开启。......
  • 【APP逆向16】frida反调试
    1.当我们对莫个app进行fridahook的时候,如果已启动hook脚本,app就自动退出了。这个时候可能就是app对frida进行了反调试。2.如何解决这种问题呢?反调试一般在so中实现,如果有frida使用,就给关闭app启动过程中,都有加载so文件下面的问题是如何找到反调试的so文件3.hookapp......
  • Oracle设置日志参数-ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;
    要实现两个数据库之间的实时同步,需要给Oracle设置参数ALTERDATABASEADDSUPPLEMENTALLOGDATA;--执行了12小时,等待数据库中的其它事务都提交以后才执行完成ALTERDATABASEADDSUPPLEMENTALLOGDATA(PRIMARYKEY)COLUMNS;ALTERDATABASEADDSUPPLEMENTALLOGDATA(......
  • Flutter 使用inspector 调试UI
    1.在AndroidStudio中点击Flutterinspector2.点击FlutterPerformace-openDevtool在浏览器中调试3.点选中widget可以在widget树中和模拟器中相互点击调试、相应控件会高亮4.其他功能 ......
  • css 设置版本号
      .el-row::before{content:"";width:0;height:0;border:60pxsolidtransparent;border-right:60pxsolid#e3e3e3;transform:rotate(135deg);position:absolute;right:-61px;top:-61px;cursor:pointer;}.el......
  • 开发之调试-debug
    流程需求或创意--开发--调试--测试--部署-上线debugc++有gdbjava有jdbpython有pdb调试器会附加到应用进程打断点python调试printassertpdb##assert的异常参数,其实就是在断言表达式后添加字符串信息,用来解释断言并更好的知道是哪里出了问题。格式......