首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

kGDB 调试 Linux 内核

1 简介 这个文档记录了用 kGDB 调试 Linux 内核的全过程,都是在前人工作基础上的一些总结。以下操作都是基于特定板子来进行,但是大部分都能应用于其他平台。...2 配置内核 2.1 基本配置 在内核配置文件 .config 中,需要打开如下选项: CONFIG_KGDB 加入KGDB支持 CONFIG_KGDB_SERIAL_CONSOLE 使KGDB通过串口与主机通信...2.3 启动参数 打开相应的选项后,需要配置 kernel 启动参数,使 KGDB 和内核能够找到正确的通信接口。...在其他板子上,若使用以太网口来和 KGDB 进行通信,则要把 kgdboc 换成 kgdboe(kgdb over ethernet) )。 配置完后,就可以正常编译,然后把内核下载到目标板上面。...则需要根据这一部分,修改串口驱动程序,若能正常进入 kgdb ,则忽略该节,直接进入下一节使用 KGDB

52421
您找到你想要的搜索结果了吗?
是的
没有找到

内核必须懂(六): 使用kgdb调试内核

---- 前言 调试内核肯定不是什么轻松的事情, 这里是使用kgdb进行调试, 你理解的没错, 就是kernel版的gdb. ---- 虚拟机串口设置 首先克隆下已经重新编译内核的虚拟机 然后设置两者的串口...update-grub nokaslr, 禁止内核地址随机化, 具体内容请自行google: reboot 然后重启的时候, 就能够看到一行关于nokaslr的提示了. ---- 开始调试 然后开始测试一下kgdb...的调试, 目标机切换为root用户, 控制权限交给kgdb, 目标机进入假死状态: echo g > /proc/sysrq-trigger 开发机进入自编译内核目录 gdb ....目标机切换为root用户, 控制权限交给kgdb, 目标机进入假死状态: echo g > /proc/sysrq-trigger 开发机进入自编译内核目录 gdb .

2.8K20

使用GDB调试Linux内核

KGDB是Linux内核的源代码级调试器,你可以使用GDB作为KGDB的前端,在我们熟悉且功能强大的GDB调试界面中调试内核。...使用KGDB需要两台机器,一台作为开发机,另一台是目标机器,要调试的内核在目标机器上运行。在开发机上使用gdb运行包含符号信息的vmlinux,然后通过指定网络地址和端口,连接到目标机器的KGDB。...我们也可以使用QEMU/KVM虚拟机作为目标机器,让待调试的内核运行在虚拟机中,然后在宿主机上运行gdb,连接到虚拟机中的KGDB。...-5506d28f-c9e7-46d4-a12e-42555d491eec' { menuentry 'Ubuntu, with Linux 5.4.106' --class ubuntu...在GRUB界面选择 Ubuntu 高级选项,选择第一项进去,就进入了新的内核。

64310

Ubuntu12Ubuntu14Ubuntu16Ubuntu18Ubuntu20Ubuntu22 安装Xfce图形界面

一、 Ubuntu12-22通用,安装Xfce图形界面(由于ubuntu12的源已经失效,目前没法验证ubuntu12了,其他的ubuntu偶数版本我都验证过)参考https://learn.microsoft.com...执行apt-get install net-tools xrdp firefox xfonts-wqy -y)执行时如果不识别sysv-rc-conf (≥ubuntu18.04不支持sysv-rc-conf...,不用动源)vim /etc/apt/sources.list在软件源sources.list文件末尾添加如下文本deb http://mirrors.tencentyun.com/ubuntu/ trusty...执行systemctl enable xrdp)echo xfce4-session >~/.xsessionadduser xrdp ssl-cert(≥ubuntu18.04需要执行这句)service...(适用ubuntu18/20,不适用ubuntu22)add-apt-repository ppa:linuxuprising/libpng12apt updateapt install libpng12

8.8K52

Ubuntu20.04linux内核(5.4.0版本)编译准备与实现过程-编译过程(2)

image.png Ubuntu20.04linux内核(5.4.0版本)编译准备与实现过程-编译前准备(1)    切记:注意一点需要参照前一篇随笔,不然编译过程十有八九出问题。...开发环境   Ubuntu20.04(ubuntu-20.04.2-live-server-amd64.iso)   系统自带的内核版本:5.4.0-67-generic(上篇随笔的内核版本为5.4.0...这之后,可以执行命令“make menuconfig”,在图形界面中对.config文件进行配置,按默认的配置就行(kgdb也默认配置好了),直接选择load,选择保存退出即可。...不过,ubuntu 20.04默认情况下,开机是看不到grub界面的,也就无法选择进入新编译好的内核。所以,此时还得修改一个/etc/default/grub文件。

2K20

ubuntu 卸载命令_Ubuntu怎么卸载

前言 本文重点介绍Ubuntu卸载软件的4种方法。他们分别是图形化界面的synaptic、自动解决依赖关系的apt-get,处理依赖关系更强大的aptitude,还有安装本地deb包的dpkg。...方法一: Ubuntu使用synaptic图形化界面管理软件 oucanrong@zcwyou:~$ sudo apt-get install synaptic -y 以下是使用Synaptic管理软件的教程...输入当前用户密码 右键选择安装或卸载等软件管理目标 方法二: Ubuntu使用apt-get卸载软件 apt会自动解决和安装模块的依赖关系,于Redat系统的yum命令类似,并且会查询软件仓库, 但不会安装本地的...删除软件包及配置文件 sudo apt-get remove xxx –purge 删除不再需要的软件包 sudo apt-get autoremove -y 注:aptitude 没有,它会自动解决这件事 方法三: Ubuntu...sudo aptitude clean 仅删除过期的包文件 sudo aptitude autoclean 利用apitude重装软件 sudo aptitude reinstall xxx 方法四: Ubuntu

6.6K10
领券