利用KGDB调试Linux kernel
创建时间:2010-01-27
作者:Steven Yang
E-mail:mqyoung@gmail.com
为了高效的对kernel进行调试,作者在实验室利用已有的资源进行环境配置。首先是硬件环境,我有两个PC,
一个是P III,Debian(Target)
一个是AMD 64,Ubuntu(Developer)
要通过Developer调试Target,这就需要给Target重编内核,并进行串口调试相关设置,而Developer需要装一个32位的虚拟机用作调试。如下为详细的配置过程。
1 KGDB Introduction
KGDB is a debugger for the Linux kernel. It requires two machines
that are connected via a serial connection. The serial connection may
either be an RS-232 interface using a null modem cable, or via the
UDP/IP networking protocol (KGDB over Ethernet, KGDBoE).
KGDB was originally implemented as a patch to Linux kernel, but it has
been included in the official kernel in 2.6.26. The target machine (the
one being debugged) runs the patched kernel and the other (host)
machine runs gdb. The GDB remote protocol is used between the two
machines.
KGDB is available for the following architectures: x86, x86-64, PowerPC, ARM, MIPS, and S390.
It is free software released under the terms of the GNU General Public
License. Until 2006 kgdb was maintained by Linsyssoft Technologies.,
after which Jason Wessel at Wind River Systems, Inc. took over as the
official maintainer.
Ingo Molnar and Jason Wessel created a slimmed-down and cleaned up
version of KGDB which was called "kgdb light" (without Ethernet support
and many other hacks). This was the one merged into the 2.6.26
kernel.[1] The version of kgdb in the 2.6.26 kernel supports only rs232
using a driver which can split debugger inputs and console inputs such
that only a single rs232 port is required.
Jason Wessel created a kgdb test suite which was merged into the 2.6.26
kernel in order to regression test the kgdb core as well as to aid in
the validation of future architecture support for kgdb.
from: http://en.wikipedia.org/wiki/KGDB
Refer: http://kgdb.linsyssoft.co
相关文档:
Service Discovery Protocol(SDP)提供一种能力,让应用程序有方法发现哪种服务可用以及这种服务的特性。
服务发现协议(SDP或Bluetooth SDP)在蓝牙协议栈中对蓝牙环境中的应用程序有特殊的含意,发现哪个服务是可用的和确定这些可用服务的特征。SDP定义了bluetooth client发现可用bluetooth server服务和它们的特征的方法。 ......
一:前言
最近在研究android的sensor driver,主要是E-compass,其中用到了Linux input子系统.在网上也看了很多这方面的资料,感觉还是这篇分析的比较细致透彻,因此转载一下以便自己学习,同时和大家分享!
(这篇博客主要是以键盘驱动为例的,不过讲解的是Linux Input Subsystem,可以仔细的研究一下!)
键盘驱动将检 ......
让Mplayer成为Linux系统下的万能播放器
2007-9-20
作者:kid
1.下载相关codes ( http://www.mplayerhq.hu/MPlayer/ ) 主要都在这里
Mplayer-1.0rc1.tar.bz2(主程序)(
http://www.mplayerhq.hu/MPlayer/releases/MPlayer-1.0rc1.tar.bz2
)
Abyss-1.6.tar.bz2 (皮肤)
(http://www2.mplayerhq.hu/MPla ......
www.csdn.net
www.linux.org
www.chinaunix.net
http://www.loveunix.net/
http://www.linuxsir.org/main/
http://www.linuxforum.net/
http://www.codeproject.com/
http://www.codeplex.com/
http://sourceforge.net/
python:
http://www.python.org/
agile:
http://www.thoughtworks.com/ ......
Linux下建议的命名规则如下。
(1)变量名必须有一定的意义,并且意义准确。例如有一个变量用于保存图书的数目,可以命名为number_of_book或者num_of_book。不建议使用i,因为它没有意义。也不建议使用number或book,因为意义不准确。
(2)不建议大小写混用。如定义一个计数变量,int nCount;这在Windows中是一个很好 ......