Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 操作系统 > 其他操作系统 > 如何利用vmware调试内核
【标  题】:如何利用vmware调试内核
【关键字】:vmware
【来  源】:http://blog.chinaunix.net/article.php?articleId=51273&blogId=132

如何利用vmware调试内核

Your Ad Here 写内核的模块,调试是个头痛的问题。一般情况下,多数人是通过串口线调试的。操作起来是比较繁琐的。
用vmware其实是非常方便的。

首先要配置好各个虚拟机,着重要配置的各个虚拟机的串口,一个作server,一个作client,被调试的当然是server了

1. 配置调试机


2. 配置被调试机


3. 在内核中增加调试选项
options DDB
makeoptions DEBUG=-g
device sio0 at isa? port IO_COM1 flags 0x10 irq 4
device sio1 at isa? port IO_COM2 flags 0x80 irq 3


串口1一般用作控制台,在此保留了,串口2才是调试口,注意其标志位为0x80
# config -d /tiny TINY ; cd /tiny; make depend;make

对于内核和源码的位置可以有下面几种处理方式,

一是直接在调试机上编译内核,
二是在其他服务器上编译,然后将包含源码以及kernel.debug的目录nfs共享,调试机挂接
三是通过pxe远程引导一个系统

推荐采用第三种方式:
在服务器上一目录中单独安装一个相应版本的系统(4.x和5.x是不兼容的,请注意),所有的编译操作都在这个目录下进行
当然要chroot到这个目录下。

pxe远程引导这个系统。这个目录无论在服务器上还是在pxe引导的客户机上的目录映射都是相同的,编译速度和便捷都有保证。

将kernel拷贝到被调试机上,启动。同时启动调试机。

进入被调试机
ctrl-alt-esc,进入db状态


进入调试机
# gdb -k kernel.debug
(kgdb) target remote /dev/cuaa0

调试机开始尝试连接远程被调试机

连接完成后
(kgdb) c
继续执行,在以后的操作中,可以随时在被调试机上中断,进入gdb中。在调试机上就可以设置断点,跟踪调试了。

panic 就会慢慢地从你手中消失,如同手中的那片雪花。







m0n0wall:【上一篇】
终于可以休整一段时间了:【下一篇】
【相关文章】
  • 在VMWare上实现FreeBSD的PPPoE网关(IPFW+NAT)
  • Vmware gsx server 下RedHat Advanced Server 2.1集群配置
  • 终于把Vmware中的Redhat9给启动了
  • 在VMware中启用Linux桌面系统X-Window
  • linux9.0 vmware配置网卡不能起的bug
  • 关于VMware tools的安装
  • VMware Workstation 5 For linux
  • [转]vmware for linux 使用经典问答
  • [原创]如何使用Vmware的ShareFolder功能
  • [larf 原创]Vmware 5.0版本提示处理器频率不稳定的解决方法
  • 【随机文章】
  • Excel中常见问题及解决方法
  • oracle10G备份与恢复详解
  • 宏定义学习
  • MySQL查询优化讲座之数据类型与效率
  • 界面设计 - 貌似简单的问题(II)
  • Painter IX快速克隆技术及应用(2)
  • Apache与IIS
  • fork() 基础
  • Solaris 设置网卡IP地址
  • Windows XP 中系统性能的查看
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.