写在前面

  此系列是本人一个字一个字码出来的,包括示例和实验截图。由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新。 如有好的建议,欢迎反馈。码字不易,如果本篇文章有帮助你的,如有闲钱,可以打赏支持我的创作。如想转载,请把我的转载信息附在文章后面,并声明我的个人信息和本人博客地址即可,但必须事先通知我

你如果是从中间插过来看的,请仔细阅读 羽夏看Win系统内核——简述 ,方便学习本教程。

  看此教程之前,问一个问题,你完成下载环境需要的文件了吗?


华丽的分割线




  当你继续观看下面的内容时,说明你已按照我的要求下载好所需文件了,好那我们开始吧。

合并WinXP系统ISO文件

  当按照我的要求全部下载,打开ReadMe.txt文件,结果如下:

  然后双击运行合并.bat文件,确定好文件的完整性时,按键盘上的Y,运行一段时间后完成文件合并,结果如下:

  合并WinXP系统ISO文件就这样完成了。

合并WinXP补丁安装包

  当按照我的要求全部下载,打开ReadMe.txt文件,结果如下:

  然后双击运行合并.bat文件,确定好文件的完整性时,按键盘上的Y,运行一段时间后完成文件合并,结果如下:

  合并WinXP系统ISO文件就这样完成了。

微软应用商店安装WinDbg

  在应用菜单找到Microsoft Store,在搜索栏搜索WinDbg,选中并安装即可。最终结果如下:

配置虚拟机

在选择文件夹的下拉列表时,如果列表没有自己想要的路径,请选择其他项目,将会弹出文件夹选择窗体进行选择,确定即可。

新建虚拟机

  从官网搜索后下载安装完毕运行后,软件如下所示:

  点击新建按钮,给虚拟机起一个名字为WindowsXP(名字随便,不过最后带有的XP字符是为了软件自动帮我识别是什么系统的虚拟机),结果如下:

  点击下一步,将会对虚拟机分配内存,请根据自己的内存情况分配。分配过少,虚拟机会有明显的卡顿;分配过多会导致真机卡顿甚至死机。我的电脑是8G内存,给虚拟机3G。

  点击下一步,虚拟硬盘默认就行。

  点击下一步,默认即可。

  点击下一步,默认。动态分配即为虚拟机占用多少就多少,如果固定大小一次就占满位置给虚拟机用,建议动态分配以节省磁盘空间。

  点击下一步,虚拟硬盘的大小根据自己硬盘的情况决定。我的硬盘有几百个GB,所以给50GB。

  点击创建,至此空的可用虚拟机就此完成。

安装WinXP操作系统

  接下来就是安装操作系统的步骤,创建好空的可用虚拟机如下图所示:

  点击启动按钮,会弹出一个窗体,那个就是虚拟机窗体,由于此虚拟机没有预先安装系统,故会要求启动盘。

  点击右边的图标按钮,弹出虚拟光盘选择,点击注册,找到合并好的WinXP系统ISO文件,确定,如下图所示:

  点击选择,操作系统安装就开始了。

  过一段时间,就会显示如下图界面,按回车继续。

  许可条款,按F8继续。

  安装系统位置,按回车继续。

  格式化未分配磁盘,按回车继续。以后将进入正式的系统安装阶段。

  正在安装操作系统,如下图所示:

  过一段时间,就会弹出如下窗体显示,默认下一步。

  自己起一个名字或者单位名,可空,下一步。

  这一步是关键的一步,直接点击下一步,然后再信息框点否。我们以后将用工具进行激活。

  再过一段,就会让设置如下图所示的计算机名和系统管理员密码等等,以后所有的操作都按默认处理继续,直至操作系统完成。

  接下来是操作系统配置阶段,如下图所示,点击下一步。

  下一步是设置自动更新,设置不启用,下一步。

  下一步是设置网络,直接跳过。

  下一步是是否激活Windows,选否,下一步。

  下一步是设置姓名,可空,下一步。

  到此基本操作系统就进入能够使用的阶段了,点完成继续。

  过一段时间,就能够正式进入操作系统了。稍作设置,把我的电脑网上邻居显示出来。这东西自己想弄就弄,个人习惯问题。

  为了尽可能少的系统占用,我们对性能进行设置,建议如下图所示:

安装VirtualBox增强功能

  最重要的一步就是安装增强功能,它会为我们提供虚拟机和真机的文件夹共享、文件拖拽复制,自动调整分辨率等功能。强烈建议您进行安装,不过得花费大量的时间,约一个小时,请耐心等待。

  首先我们在虚拟机窗体菜单点击设备-安装增强功能,如下图所示:

  打开我的电脑,双击软盘进行安装(也可能自动启动安装程序),如下图所示:

  默认安装下一步,开始安装,当安装的如下图进度时,就会停在这里,不要以为程序假死了,它仍在正常运行,耐心等待。

  等了很长时间,终于弹出一个框,如下图所示:

  点击仍然继续按钮,程序继续安装,后续将会弹出相同的弹窗,如法炮制即可,每一次弹窗之间的间隔很长,请耐心等待。当如下图所示时,安装完毕,直接结束,电脑将自动重启。重启后所有增强功能可用。

设置共享文件夹

  虚拟机还有设置分享文件夹功能,这样可以方便频繁的访问真机上的文件夹里的内容,建议设置,在菜单选中设备-共享文件夹-共享文件夹,如下图所示:

  然后点击右面的带有加号的文件夹图标,选择好路径名称,设置只读分配(阻止虚拟机感染病毒木马影响实体机的一条途径)、自动挂载(接触过Linux你就会明白)、固定分配,确定,如下图所示。

  这样就完成了共享文件夹的设置。

WinXP虚拟机安装补丁

  如果不想安装该补丁的,请忽略此小节,继续下一节。

  安装完操作系统后第一件事情就是打补丁,否则后续的调试环境配置和激活都会影响补丁的正常安装。既然增强工具都已安装完成,直接通过共享文件夹或者拖拽的方式复制进入虚拟机。然后运行,如下图所示:

  显示如下图界面时,点击下一步。

  点击我同意,然后下一步。

  补丁开始安装,等待一段时间。

  安装完毕后如下图所示,点击完成,补丁重启虚拟机后生效。

激活Windows

  在激活Windows之前,如果想安装补丁一定要在这之前安装,否则会报错无法安装。将激活工具复制到虚拟机中,如下图所示:

  上面说明要安全模式,其实不必,因为这里没有安装任何杀软,点击安装,结果如下:

  最后会弹出关闭计算机窗体,点击重启重新进入操作系统即可永久生效。

安装符号文件

  下面我们来安装符号安装包:

  选择好安放符号的路径(一定要记住),点击确定,如果有UAC弹窗允许。

  接下来就进入复制符号文件阶段,如下图所示:

  当显示如下图所示结果时,证明安装完毕。

配置调试环境

虚拟机自身设置

  此操作需要在关闭虚拟机的状态下设置,按照如下图所示,请用端口,按照对应设置即可,端口号路径/地址不必和我的一样,但必须做好记录,和WinDbg配置一致。

虚拟机内部设置

  为了方便设置,文件夹选项中用红框框出的区域请按照如下图配置:

  配置好后,找到C盘,找到boot.ini,它就是系统配置文件。打开,把最后一行复制一行附到后面。引号里面的就是启动选择操作系统显示的名称,后面将会以图片展示。

  然后Win+R启动运行,输入msconfig,回车启动该程序。

  然后按照下图指示完成操作,将结果如下图所示,高级选项里面的值可以和我不完全一样,但必须和虚拟机自身设置WinDbg配置保持一致

  改完后确定,会弹出下面提示,重新启动即可生效。

WinDbg配置

  接下来配置WinDbg,本人只提供新版配置教程,老版的自行搜索进行配置。

  打开WinDbg的设置,找到Debugging settings,按照下图修格式修改调试符号位置(Default symbol path)。第一行填写的是我XP的符号的路径,第二行你就不必管了,想要了解的自行科普。

  点击左上角的文件,点击Attach to kernel,按下面输入(注意红框部分,不要照抄,如果前面和我配置的不一样,一定要按照之前自己配置的配置,一样的话直接按照我的填即可)。

  然后开启配置好的虚拟机,如果原来开启则重启。

  当显示如上图所示时,切到WinDbg,点击确认,如果如下图结果所示,证明WinDbg找到通信管道,等待连接。

  切到虚拟机,选中调试模式回车,如果调试器如下图所示,证明WinDbg成功与虚拟机建立了通信关系且正常使用调试符号。

  当虚拟机第一次开始调试模式,进入系统后会显示下图弹窗,选中不再显示确定,以后将不会再显示此提示。

  到此基本的双机调试的环境已搭建成功了,你成功了吗?

其余软件的安装

  其余软件的安装我就不再详细说明了,玩过电脑的应该都会安装软件。尽量把我提到的软件都安装上,这样对于学习后面的教程具有更大的帮助。

本篇说明

  • 如果是初学者,最好按照本篇教程的说明顺序来,否则容易会导致配置失败。
  • 关于VirtualBox或者其他软件安装的问题,不要问我。
  • 如果在安装WinXP补丁前激活了系统导致补丁安装不上的,还想安装补丁,请重新用ISO文件修复操作系统,具体自行操作。
  • 本教程提供的虚拟机示例展示本人不会再使用,并不是配置的不对,因为我有一个配置好的虚拟机环境,里面比较全面,以后系统内核讲解都会用到它。
  • 我不是你请的老师,提出琐碎且不涉及该教程的问题概不回答。

下一篇

  羽夏看Win系统内核——保护模式篇

羽夏看Win系统内核——环境搭建的更多相关文章

  1. 羽夏看Win系统内核——简述

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新. 如有好的建议,欢迎反馈.码字不易, ...

  2. 羽夏看Win系统内核——保护模式篇

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新. 如有好的建议,欢迎反馈.码字不易, ...

  3. 羽夏看Win系统内核——驱动篇

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新. 如有好的建议,欢迎反馈.码字不易, ...

  4. 羽夏看Win系统内核——SourceInsight 配置 WRK

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新. 如有好的建议,欢迎反馈.码字不易, ...

  5. 羽夏看Win系统内核——系统调用篇

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新. 如有好的建议,欢迎反馈.码字不易, ...

  6. 羽夏看Win系统内核——进程线程篇

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新. 如有好的建议,欢迎反馈.码字不易, ...

  7. 羽夏看Win系统内核——句柄表篇

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新. 如有好的建议,欢迎反馈.码字不易, ...

  8. 羽夏看Win系统内核—— APC 篇

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新. 如有好的建议,欢迎反馈.码字不易, ...

  9. 羽夏看Win系统内核——同步篇

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新. 如有好的建议,欢迎反馈.码字不易, ...

随机推荐

  1. MVC4相关Razor语法浅谈

    1._LayOut.cshtml 文件为mvc的布局文件,里面包函的是htm的静态文件,作为mvc其他view的基础母版使用,子视图要不想想调用它只需在页面设置@{Layout=null;}即可,现对 ...

  2. 创建MySQL 用户

    create user 'lixianming'@'localhost' identified by 'lxm123456'; grant all on art.* to 'lixianming'@' ...

  3. 基于Open vSwitch的OpenFlow实践

    Open vSwitch(下面简称为 OVS)是由 Nicira Networks 主导的,运行在虚拟化平台(例如 KVM,Xen)上的虚拟交换机.在虚拟化平台上,OVS 可以为动态变化的端点提供 2 ...

  4. poj 3501 Escape from Enemy Territory 二分+bfs

    水题,不解释. #include<stdio.h> #include<math.h> #include<cstring> #include<algorithm ...

  5. j2ee的十三种技术

    J2EE的十三种技术(规范)  种不同的驱动,具体来说,包括有: 类型1:JDBC-ODBC桥 在JDBC刚产生时,JDBC-ODBC桥是非常有用的.通过它,开发者可以使用JDBC来访问一个ODBC数 ...

  6. Vue-指令

    1. v-text:这个指令用于将vue实例中的data内的属性渲染到标签内.有两种写法: 1. `<div v-text="数据"></div>`:该写法 ...

  7. 什么是 SaaS (Software as a Service)

    什么是SaaS (Software as a service ) 把软件作为一个服务.SaaS是一种cloud-based 和通过Internet提供软件的模式,用户不用再购买软件,而改用向提供商租用 ...

  8. Web前端数据存储

    Cookie 会跟随每次请求附加到请求header上,大小限制4k. 部署对象: document.cookie 构成: Key-Value 有效期:根据expires配置 可选项: ;path=pa ...

  9. 终于考完PMP

    快到年底,上手了GO语言,搞定了广告后台,觉得年底前应该不忙; 我们的PM也报了PMP,可以一起报团学习,后来由于地理位置关系,我们项目组,三个人报了不同的班,也好,信息可以共享; 跟我们公司合作的培 ...

  10. 【转】C# 中使用 ThoughtWorks.QRCode.dll 生成指定尺寸和边框宽度的二维码

    本文介绍在 C# 中使用 ThoughtWorks.QRCode.dll 生成指定尺寸和边框宽度的二维码.网上文章大多只是简单介绍内置参数的设置,根据我的使用目的,增加了自定义目标二维码图片尺寸和白边 ...