1.内核中的bug 内核调试的难点 2. 内核调试的工具和方法 2.1 输出 LOG 输出LOG不光是内核调试, 即使是在用户态程序的调试中, 也是经常使用的一个调试手段. 通过在可疑的代码周围加上一些LOG输出, 可以准确的了解bug发生前后的一些重要信息. linux内核中输出LOG的函数是 p ...
分类:
系统相关 时间:
2016-03-28 21:45:12
阅读次数:
260
输出LOG不光是内核调试, 即使是在用户态程序的调试中, 也是经常使用的一个调试手段. 通过在可疑的代码周围加上一些LOG输出, 可以准确的了解bug发生前后的一些重要信息. linux内核中输出LOG的函数是 printk (语法和printf几乎雷同, 唯一的区别是printk可以指定日志级别) ...
分类:
系统相关 时间:
2016-03-24 16:20:37
阅读次数:
226
systemtap是一款非常强大内核调试工具,可以debug很多关于kernel层的问题。Linux是通过PAM模块检测用户信息和认证信息的,从而确定一个用户是否可以登录系统,利用这个知识点,使用systemtap捕获一下pam_unix.so该动态库文件的函数调用,获得用户在ssh远程登录时的用户
分类:
其他好文 时间:
2016-03-03 14:44:11
阅读次数:
175
MarkdownPad Document <!-- /* GitHub stylesheet for MarkdownPad (http://markdownpad.com) */ /* Author: Nicolas Hery - http://nicolashery.com */ /* Vers
分类:
其他好文 时间:
2016-01-31 03:06:15
阅读次数:
134
如何在不重新编译内核,不rmmod内核模块的情况下修改系统调用为了解决这个问题,最终实现了两种解决方式:1.Linux系统调用劫持2.Kprobes内核调试技术(并非真正的修改)下面分别说下:Linux系统调用劫持:其实就是修改内核符号表,来达到一个劫持的作用。因为系统调用实际上是触发了一个0x80...
分类:
其他好文 时间:
2015-12-13 21:58:06
阅读次数:
196
一、简介 内核开发比用户空间开发更难的一个因素就是内核调试艰难。内核错误往往会导致系统宕机,很难保留出错时的现场。调试内核的关键在于你的对内核的深刻理解。 二、方法总结 1)内核调试指南 http://blog.csdn.net/blizmax6/article/details/6747601/ 2...
分类:
系统相关 时间:
2015-12-06 00:25:05
阅读次数:
171
原文网址:http://blog.csdn.net/dragon101788/article/details/9419175在内核中代码调用过程难以跟踪,上下文关系复杂,确实让人头痛调用dump_stack()就会打印当前cpu的堆栈的调用函数了。如此,一目了然的就能看到当前上下文环境,调用关系了假...
分类:
系统相关 时间:
2015-12-04 18:16:48
阅读次数:
124
一、简介 Linux 内核调试器(KDB)允许您调试 Linux 内核。这个恰如其名的工具实质上是内核代码的补丁,它允许高手访问内核内存和数据结构。KDB 的主要优点之一就是它不需要用另一台机器进行调试:您可以调试正在运行的内核。 在本文中,我们将从有关下载 KDB 补丁、打补丁、(重新)编译内核以...
分类:
数据库 时间:
2015-11-19 22:19:56
阅读次数:
252
注:本文配置环境为VMware® Workstation11.1.2 build-2780323+Windows xp SP2+Windbg 6.12.0002.63 x86*在win7以后的操作系统中配置会略有不同,会在最后进行补充一、虚拟机端配置:1、打开虚拟机系统,在c盘根目录下找到boot....
分类:
数据库 时间:
2015-09-13 14:32:29
阅读次数:
304
转载一篇文章:http://my.oschina.net/fgq611/blog/113249 linux内核调试方法总结。1.二分法与printk() AB之间有个bug,在AB之间找个中间点C,使用printk,查看bug在AC还是CB。以此类推。其中printk(“__func__”) 设定....
分类:
其他好文 时间:
2015-09-12 17:44:06
阅读次数:
158