windbg linux内核调试,windbg调试虚拟机XP系统
一、先介绍一下被调试的虚拟机系统环境:
虚拟机:vmware workstation 10.0版本
虚拟机操作系统: Microsoft windows xp professional 2002 service pack3
cpu:2.8GHz,2.64GB内存
二、这个没有直接关系。做个笔记而已。
1.在XP系统中,创建了一个first.c文件
测试代码如下:
#include
void DriverUnload(PDRIVER_OBJECT driver)
{
DbgPrint("first:Our driver is unloading....\r\n");
}
NTSTATUS DriverEntry(PDRIVER_OBJECT driver, PUNICODE_STRING reg_path)
{
DbgPrint("first:Hello,my salary!");
driver->DriverUnload = DriverUnload;
return STATUS_SUCCESS;
}
2.添加无后缀makefile文件
内容如下:
!IF 0
Copyright (C) Microsoft Corporation, 1999-2002
Module Name:
makefile.
Notes:
DO NOT EDIT THIS FILE!!! Edit ./sources. if you want to add a new source
file to this component. This file merely indirects to the real make file
that is shared by all the components of Windows NT (DDK)
!ENDIF
!INCLUDE $(NTMAKEENV)\MAKEFILE.DEF
3.添加一个SOURCES无后缀文件
内容如下:
TARGETNAME=first
TARGETTYPE=DRIVER
SOURCES=first.c
4.windows driver kits---WDK 6001.18001--Build Environments--windows xp---Launch Windows XP x86 Checked Build Environment
5.在控制台窗口输入build命令,生成sys文件。
6.使用SRVINSTW.EXE安装first.sys驱动。(选项为设备驱动)
=============================================================================================
三、开始设置被 调试机(虚拟机和xp系统的设置)
设置中添加一个串行端口:使用命名管道。
设置参数如下:
使用命名的管道:
参数1:\\.\pipe\com_1
参数2:该端是客户端
参数3: 另一端是应用程序
如图:
在虚拟机XP系统中,把隐藏的boot.ini文件调出来,
修改如下:
[boot loader]
timeout=20
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect /debug/debugport=com1 /baudrate=115200
其实就是添加最后一行的内容.再重启系统时,就会出现调试选项
虚拟机的设置到此完成.
接下来是调试机(物理机系统):
window 10 专业版 64位
windbg 安装后,复制了一个快捷图标到桌面了。在属性目标中设置了参数:
"D:\Program Files\Debugging Tools for Windows (x64)\windbg.exe" -b -k com:port=\\.\pipe\com_1,baud=115200,pipe
这样就不需要每次去控制台输入命令这么麻烦的操作。
出现了这个很蛋疼的错误。
百度了快半天。能找到的就几个回答。。看了更蛋疼。。
意思就是,可能是已经有其它的com_1管道在。创建的不仅仅是一个com_1.
但是我就这个xp系统有添加串口管道。其它都没有。。
我又重新的开始从头到尾的操作一遍。。windbg也下载了好几个。。都是这么个提示。。
终于在有一次设置管道串口参数的时候。。我忘记了把:该端是服务器 选择。因为它默认就是,该端是服务器。。我直接设置第三个参数了。然后确定。。
选择调试。。
接着运行windbg。。
终于成功了。。。。
这是血与泪的教训。。。
呃。。一直黑屏了。。在kd输入g
继续运行。。
最后总结一下,问题其实就出现在参数设置的时候,"该端是服务器"和"该端是客户端"
<>一书中写到。。请读者随机应变。。随机应变。。。
windbg linux内核调试,windbg调试虚拟机XP系统相关推荐
- linux 内核 死锁 检查,一种linux内核自旋锁死锁检测报告系统和方法与流程
本发明涉及内核死锁检测领域,具体的说是一种linux内核自旋锁死锁检测报告系统和方法. 背景技术: linux内核死锁是长期困扰内核开发人员的问题之一,但自内核引入lockdep调试模块之后,内核死锁 ...
- Kali Linux 2016.2发布提供虚拟机以及系统镜像下载
Kali Linux 2016.2发布提供虚拟机以及系统镜像下载 Kali Linux 2016.2发布提供虚拟机以及系统镜像下载,本次Kali Linux 2016.2提供了五种桌面模式,分别为Gn ...
- kali linux 虚拟机iso 下载,Kali Linux 2016.2发布提供虚拟机以及系统镜像下载
Kali Linux 2016.2发布提供虚拟机以及系统镜像下载 Kali Linux 2016.2发布提供虚拟机以及系统镜像下载,本次Kali Linux 2016.2提供了五种桌面模式,分别为Gn ...
- mysql2008安装虚拟机_在虚拟机xp系统中安装SQL Server2008的方法
许多用户会使用虚拟机安装xp系统来使用,而有时候不想在主机中安装一些软件,那么在虚拟机中安装就是最好的选择,比如有用户想要在虚拟机xp系统中安装SQL Server2008,但是却不知道要怎么操作,现 ...
- windbg linux内核调试,使用Windbg调试window内核
也 许很多人早就知道了,但是我不知道,以前一直抓住softice大腿不放,但是由于在我的Hyber Thread处理器上,Softice实在是运行的太不理想了.故而只能利用WinDbg了.不过听牛人说 ...
- Linux内核睡眠唤醒调试
本文基于RockPI 4A单板Debian系统Linux4.4内核介绍下睡眠唤醒(suspend/resume)的一些调试方法. 一.参数设置 1.关闭串口睡眠 在Linux内核睡眠过程中,会先调用s ...
- Linux 内核测试和调试
自动测试工具 这里列出一些能满足不同需求的测试工具供你选择.本小节只是简单介绍个大概,并不提供详细操作指南. AuToTest AuToTest 是一个全自动测试框架,存在的主要目的就是测试 Linu ...
- 如何查看Linux内核输出的调试信息
第一点需要澄清:我使用的环境是嵌入式Linux,并非桌面版Linux,查看内核输出的调试信息也是为了追踪内核子系统的运行.这可能是一个非常小的知识点,但是还是希望自己记录一些东西,以后也好拾起. 本文 ...
- 学做Linux内核,Linux内核学习(3) 最小系统制做2 busybox制做initrd.img和根文件系统...
busybox制做initrd.img和根文件系统 (一)开发环境介绍 1.使用win7_64的笔记本安装Virtualbox虚拟机,笔记本cpu为i5-2450m.虚拟机上安装Ubuntu16.04 ...
最新文章
- 第二章 序列比对——Needleman-Wunsch全局比对
- PHP+HTML实现登出界面倒计时效果
- Xcode的简单使用
- Waymo研发经理:《自动驾驶感知前沿技术介绍》
- springboot 整合 mongodb实现 批量更新数据
- alt和title的区别与用法
- 编程入门指南 v1.4
- Java中栈,堆,常量池的简单理解
- 平衡二叉树(AVL Tree)
- 《Python语言程序设计基础》:第2章:Python程序实例解析:程序练习题
- 台达PLC-EH3.铆压机,3轴,Z轴(SMC)电缸下降的距 离用的是位置加扭矩模式,台达PLC MODBUS通讯控制台达A2伺服扭矩
- Kepware IOT Gateway Rest server
- python控制电机转动_Micropython TurnipBit 旋转按钮控制直流电机转速(儿时记忆中的吊扇)...
- vue引入iconfont阿里矢量图库
- 记仇表情包在线生成源码
- 杰理之低延时无线麦功能支持以下两种组合配置【篇】
- 尽管凭借主持人的身份成名,张绍刚先生在内心深处却对这一角色认可度很低
- 优课在线 实境英语作业3Unit 11-15
- 【第3期】量化大咖来了!揭开量化对冲的神秘面纱
- linux运维常用服务器软件整理和介绍
热门文章
- 为啥JAVA虚拟机不开发系统_理解Java虚拟机体系结构
- flask-sqlalchemy mysql_Flask SQLAlchemy连接到MySQL数据库
- a - 数据结构实验之图论一:基于邻接矩阵的广度优先搜索遍历_数据结构--图
- surface pro 7 linux,微软 Surface Pro、Studio、Laptop 全线更新
- oracle触发和存储过程,Oracle存储过程与触发器
- 王道操作系统考研笔记——1.1.6 系统调用
- 如何利用echarts图表获取条状图点击名称和值
- [react] 在React中如何避免不必要的render?
- 前端学习(3267):js中this的指向二
- react学习(57)--map赋值