写在前面

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

你如果是从中间插过来看的,请仔细阅读 羽夏看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. 【LeetCode】316. 去除重复字母

    316. 去除重复字母 知识点:栈:单调 题目描述 给你一个字符串 s ,请你去除字符串中重复的字母,使得每个字母只出现一次.需保证 返回结果的字典序最小(要求不能打乱其他字符的相对位置). 示例 输 ...

  2. Notes of Cygwin in Windows7

    Installation download setup.exe from its official website; run setup.exe, select "download with ...

  3. 不懂Ribbon原理的可以进来看看哦,分析SpringBoot自动装配完成了Ribbon哪些核心操作

      前面详细的给大家介绍了SpringBoot的核心内容,有了这部分的基础支持的话,我们再来分析SpringCloud中的相关组件就很容器了,本文我们来给大家开始介绍Ribbon的相关内容,首先来介绍 ...

  4. Tomcat进程意外退出的问题分析

    http://ifeve.com/why-kill-2-cannot-stop-tomcat/?tdsourcetag=s_pctim_aiomsg tail后关掉客户端 正常执行shutdown.s ...

  5. iOS开发之蜂窝布局—Swift

    前言 最近项目中用到了类似蜂窝的六边形布局,在这里分享出来抛砖引玉,供大家参考学习.本文提供了2种思路实现效果,第一种方式使用UICollectionView实现,第二种方式使用UIScrollVie ...

  6. Longhorn 企业级云原生分布式容器存储-券(Volume)和节点(Node)

    内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 云原生分布式块存储解决方案设计架构和概念 Longhorn 企业级云原生容器存储解决方 ...

  7. kubernetes/k8s CNI分析-容器网络接口分析

    关联博客:kubernetes/k8s CSI分析-容器存储接口分析 kubernetes/k8s CRI分析-容器运行时接口分析 概述 kubernetes的设计初衷是支持可插拔架构,从而利于扩展k ...

  8. BUUCTF刷题系列(2)5.27日记

    CTF-Bugku-安卓篇1signin Writeup Bugku安卓部分第一题,第七届山东省大学生网络安全技能大赛的题目,属于Android逆向分析.(常用工具:安卓模拟器.JEB.Cyberch ...

  9. 骨架屏css样式

    .chiaroscuro { background: #f2f2f2; animation-duration: 1.5s; animation-name: blink; animation-itera ...

  10. Nodejs koa2读取服务器图片返回给前端直接展示

    参考:https://blog.csdn.net/lihefei_coder/article/details/105435358 const fs = require('fs'); const pat ...