博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用QEMU调试Linux内核代码
阅读量:7104 次
发布时间:2019-06-28

本文共 1147 字,大约阅读时间需要 3 分钟。

http://blog.chinaunix.net/uid-20729583-id-1884617.html

http://www.linuxidc.com/Linux/2014-08/105510.htm

Linux内核代码的调试非常麻烦,一般都是加printk, 或者用JTAG调试。这里的方法是用QEMU来调试Linux内核。因为QEMU自己实现了一个gdb server, 所以可以非常方便的使用gdb来调内核。

这对内核的学习也非常有帮助。

为了尽量不多花时间在QEMU设置上,这里直接使用以下的内核image:

1.  QEMU的安装

 这个可以自己去QEMU的官网下载编译,如果自己手头上的发行版有对应QEMU的包的话那也可以直接安装。

 的话参考前面的 CentOS rpm 额外包的源

2.  下载对应的内核映像

 从以下网址下载: 这里面有一个vmlinuz-qemu-arm-2.6.20

3.  启动QEMU

 使用如下命令启动:

 $ qemu-system-arm -M versatilepb -m 16 -kernel vmlinuz-qemu-arm-2.6.20 -append "clocksource=pit quiet rw" -S -s

使用QEMU调试Linux内核代码

4.  调试内核

 这里需要有一个包含调试信息的vmlinux文件,可以直接编译

如果自己不想编译的话可以使用一个已编译好的vmlinux文件:

------------------------------------------分割线------------------------------------------

FTP地址:

用户名:ftp1.linuxidc.com

密码:www.linuxidc.com

在 2014年LinuxIDC.com\8月\使用QEMU调试Linux内核代码

下载方法见 

------------------------------------------分割线------------------------------------------

 然后执行如下命令:

 $ arm-none-linux-gnueabi-gdb vmlinux

 在gdb的控制台输入:

 (gdb) target remote :1234

 (gdb) b start_kernel

 (gdb) c

 这时候程序执行就会落在你设定的断点start_kernel处。OK。这样你就可以随意调试内核代码了!

 12.04之找不到Qemu命令 

Arch Linux上安装QEMU+EFI BIOS 

QEMU的翻译框架及调试工具 

QEMU 的详细介绍

QEMU 的下载地址

本文永久更新链接地址

转载地址:http://znchl.baihongyu.com/

你可能感兴趣的文章
Onvif开发之客户端鉴权获取参数篇
查看>>
高性能后台服务器架构设计
查看>>
mysql通信协议
查看>>
一碗拉面,两多温情
查看>>
英伟达研发全球首款AI自动驾驶平台 无需方向盘和油门!
查看>>
MSSQL - 架构分析 - 从SQL Server 2017发布看SQL Server架构的演变
查看>>
pipedata3d–Ladder
查看>>
根据innodb_trx、innodb_locks、innodb_lock_waits得到详细的锁信息
查看>>
如何通过抓包查看客户端https连接中ssl/tls加密所采用的秘钥位数
查看>>
如何以低成本提升IT安全性和合规性?
查看>>
《机械制造业智能工厂规划设计》——1.2 新一轮工业革命的兴起
查看>>
MIUI刷机曝重大危险 可致短信照片等个人隐私被盗
查看>>
物联网时代 企业需做出的十大战略选择
查看>>
IEEE中国区总裁赵永前:IEEE与未来网络技术
查看>>
光速运行的量子加密
查看>>
ESG:浅析思科进军服务器市场行业影响
查看>>
美国“黑色星期五”单日销量不及双十一
查看>>
探索Javascript异步编程
查看>>
云计算:对计算能力进行贩售的方式
查看>>
《中国人工智能学会通讯》——11.20 多任务学习在交通分析中的应用
查看>>