使用KGDB调试内核 on QEMU(一步一步跟我学)

2010年7月16日 DDD 39 条评论

一步一步跟我学 使用KGDB调试内核 on QEMU.
1: 编译Linux + KGDB
2: 制作自己的文件系统
3: 安装qemu
4: 使用qemu运行自己编译的内核
5: gdb 连结 自编译内核的kgdb
6: gdb + kgdb 调试内核操作示例
7: 引用/扩展阅读

kgdb抓虫日记 – kgdb 与 sched_clock[softlockup]

2010年6月28日 DDD 没有评论

softlockup: add sched_clock_tick() to avoid kernel warning on kgdbresume

WebKit 结构剖析

2012年4月3日 DDD 没有评论

1 系统结构图
2 webcore实现流程:
2.1 帧/页面/窗口管理:
2.2 文件下载:
2.3 文档解析处理:
2.4 XSLT/CSS解析处理:
3 JAVASCRIPT绑定:
4 插件处理:

分类: LinuxDev, webkit 标签:

kgdb内核选项配置

2010年6月28日 DDD 没有评论

KGDB内核选项配置

kgdb源代码分析(2.6.27)

2010年7月1日 Penny 3 条评论

本文的内容:
1.从内核是怎样把控制权交给 KGDB 的开始,到
2.kgdb 的入口函数,看 kgdb 怎样处理竞态,再了解
3.kgdb 和 gdb 之间的通信协议,接着是
4.kgdb 对具体命令的执行,最后再看看
5.kgdb 是在什么时候被启动的.

GDB十分钟快速入门教程

2010年8月13日 reship 3 条评论

本文转载自liigo’s blog

gdb快速入门教程,本文内容简约而不简单,强烈推荐初学的朋友看看。

分类: gdb 标签: ,

为KGDB 增加watchpoint断点支持 on x86

2010年11月18日 DDD 没有评论

the watchpoint of kgdb 大致流程为:

A:using gdb to set a watchpoint

B:send out a set watchpoint protocol packet to kgdb from gdb
C:kgdb receive/parse the protocol packet

D:kgdb set a watchpoint hardware breakpoint on kernel

E:Once kernel hit a watchpoint breakpoint, kgdb will collect the watchpoint breakpoint
info, fill them to a Stop-Reply-Packets with watchpoint format, and send out to gdb

分类: kgdb, 深入kgdb 标签: ,

gdb的基本工作原理

2011年4月9日 reship 8 条评论

一个非常好的介绍gdb基本工作原理文档,当初就是看了这个PPT才对gdb开始有感觉的。

分类: debugger theory, gdb 标签: , ,

Linux Kernel Debugging

2011年5月25日 DDD 2 条评论

自己准备的一个有关Linux 内核调试方面介绍的PPT,希望大家能够喜欢。

分类: LinuxDev, kgdb 标签: , ,

KDB 介绍和使用

2011年6月30日 reship 2 条评论

Here is some information about KDB – the in-kernel debugger for the Linux kernel.

分类: LinuxDev, kgdb 标签: , , , ,

gdb的 Ctrl+c 怎么让内核给停下来

2011年7月5日 DDD 没有评论

收到不少同学发邮件询问gdb的 Ctrl+c 怎么怎么让内核给停下来,这里就写写关于这方面的内容。
目前常用的gdblinux内核的通信是基于串口的kgdboc模块来连接的,所以本文就以串口的kgdboc来讲解。

文章分两个部分来解释这个问题,一部分是gdb端对ctrl+c操作做的一些处理,另外一部分则是内核对停止指令处理。

分类: gdb, kgdb, 深入kgdb 标签: , , ,

WebRTC简介

2011年11月9日 DDD 2 条评论

一个有关WebRTC简单介绍PPT。
Webrtc
View more presentations from libfetion.

本地下载: WebRTC

分类: LinuxDev 标签:

玩转Google单元测试框架gtest系列

2011年12月21日 reship 没有评论

gtest测试框架是在不同平台上(Linux,Mac OS X,Windows,Cygwin,Windows CE和Symbian)为编写C++测试而生成的。它是基于xUnit架构的测试框架,支持自动发现测试,丰富的断言集,用户定义的断言,death测试,致命与非致命的失败,类型参数化测试,各类运行测试的选项和XML的测试报告。

分类: LinuxDev, gtest 标签:

WebKit 插件的那些事之六-Plugin类型注册和管理

2012年3月12日 DDD 没有评论

本模块其实就是对plugin-manage中提供的函数进行封装,提供给外部用户调用的接口,这里提供了对插件的所有操作。

分类: LinuxDev, webkit 标签:

WebKit 插件的那些事之五-PluginView

2012年3月10日 DDD 没有评论

插件消息机制和图形窗口

分类: LinuxDev, webkit 标签:

WebKit 插件的那些事之四-operateurl

2012年2月6日 DDD 没有评论

所有有关operateurl的操作都是在plugin view里进行的,但由于其功能独立性强,所以从view模块中拿出来,以子模块形式提出。 本模块中的所描述的接口都是plugin view的成员函数。

分类: LinuxDev, webkit 标签:

WebKit 插件的那些事之三-PluginStream

2012年2月5日 DDD 没有评论

实现插件和浏览器之间的所有数据相互传输和控制,是实现插件机制的关键点之一

分类: LinuxDev, webkit 标签:

WebKit 插件的那些事之二-Plugin管理

2012年1月10日 DDD 没有评论

插件管理 详细设计
重要数据结构和变量
插件注册
插件注销
“PackageMg::CreatePackage” 的实现--完成插件和浏览器函数交互的通道

分类: LinuxDev, webkit 标签:

WebKit 插件的那些事之一-Plugin API概述

2012年1月3日 DDD 没有评论

浏览器角度来看Plugin API

对于浏览器来说,Plugin API就是帮助浏览完成获取用户插件函数地址功能的一系列函数。 浏览器只要调用Plugin API中的初始化用户插件函数,就能轻易的获取用户插件函数地址。这与操作系统初始化驱动程序类似,系统只要取得驱动程序的入口点,填充一个函数地址结构体供系统使用就基本完成驱动的初始化。

用户角度来看Plugin API

有了Plugin API,用户只需要专注于实现Plugin API给出的几个函数功能就能完成插件编写任务,而不需要考虑其Plugin 和 浏览器是怎么交互的。

分类: LinuxDev, webkit 标签:

玩转Google开源C++单元测试框架Google Test系列(gtest)之八 – 打造自己的单元测试框架

2011年12月21日 reship 没有评论

本篇我们就尝试编写一个精简版本的C++单元测试框架:nancytest ,通过编写这个简单的测试框架,将有助于我们理解gtest

分类: LinuxDev, gtest 标签: