《操作系统真象还原》学习笔记:第1章 部署工作环境

**提示:**这篇文章是根据学长提供的教程《操作系统真象还原》第一章 部署工作环境来完成的,我按照学长给的教程一步一步做下来,再结合《操作系统真象还原》这本书,对实验环境进行了配置。以下是我按照教程进行搭建的记录:

1.1 部署工作环境

  1. 物理机操作系统:Windows10
  2. 虚拟机软件:VMware Workstation 17pro
  3. 虚拟机操作系统:Ubuntu 22.04.3 LTS
  4. Bochs下载安装:我下载的版本是2.6.8,下载后的文件是bochs-2.6.8.tar.gz,下载完成后将主机中的文件复制到Ubuntu中,在这里我遇到了一点小麻烦,就是主机中的文件无法复制到Ubuntu中,我在csdn中找了一些解决办法,按照教程首先输入sudo apt-get autoremove open-vm-tools卸载清除了目前Ubuntu中已存在的vm-tools,其次再输入sudo apt-get install open-vm-tools安装vm-tools,安装完成后重新启动Ubuntu虚拟机,但还是没有解决,后来经过一番摸索,发现我没有开启虚拟机中的共享文件夹,开启之后终于成功将Bochs安装包复制进了虚拟机。

    然后就是打开终端输入以下内容:
bash 复制代码
sudo apt install build-essential
bash 复制代码
sudo apt-get install libghc-x11-dev
bash 复制代码
sudo apt-get install xorg-dev

进入bochs-2.6.8文件夹:

bash 复制代码
cd bochs-2.6.8

配置bochs的config文件:

bash 复制代码
./configure --prefix=/home/abc/Desktop/Bochs --enable-debugger --enable-disasm --enable-iodebug --enable-x86-debugger --with-x --with-x11 LDFLAGS='-pthread'

输入make命令:

输入make install命令:

安装成功!

1.2 配置bochs

进入安装好bochs的目录,创建编辑bochs配置文件:

bash 复制代码
cd /home/abc/Desktop/Bochs
touch bochsrc.disk
vim bochsrc.disk

由于我没有安装vim命令,因此这里我需要输入以下命令进行安装:

bash 复制代码
sudo apt install vim 

安装后重新输入vim bochsrc.disk

输入i进行插入模式,向文件中进行输入:

按照学长给的例子:

Esc回到命令模式并输入:wq

1.3 运行bochs

创建启动磁盘bin/bximage

依次写入1,hd,flat,60,hd60M.img,输入一个按一次回车键:

测试代码:

用学长给的例子进行测试:

安装编译器nasm 命令:

bash 复制代码
sudo apt install nasm

编译:

bash 复制代码
nasm -o test mbr.s

写入虚拟机启动磁盘:

bash 复制代码
dd if=/home/abc/Desktop/test of=/home/abc/Desktop/Bochs/hd60M.img bs=512 count=1 conv=notrunc

启动虚拟机查看效果:

bash 复制代码
cd Bochs
bin/bochs -f bochsrc.disk

启动之后,输入c可以看见Hello world!

相关推荐
xqqxqxxq6 分钟前
技术笔记:上下文工程(Context Engineering)心得总结(李博杰《深入理解 AI Agent》2.1,2.2观后总结)
人工智能·笔记
魔城烟雨1 小时前
从零开始学习betaflight《3-硬件接口设计规范标准》
学习·设计规范
正经人_x3 小时前
学习日记42
学习
一只小菜鸡..4 小时前
南京大学 操作系统 (JYY) 学习笔记:导论与历史的轮回 (OS Introduction)
笔记·学习
小弥儿4 小时前
GitHub 今日热榜 | 2026-07-24:金融 K 线基础模型上榜
学习·金融·开源·github
xqqxqxxq4 小时前
LeetCode Hot100 双指针专项题解笔记
笔记·算法·leetcode
520拼好饭被践踏4 小时前
JAVA+Agent学习day22
java·开发语言·后端·学习
懿路向前4 小时前
【HarmonyOS学习笔记】2026-07-24 | textProcessing 实体识别与踩坑实录
笔记·学习·边缘计算·harmonyos
菩提树下的打坐4 小时前
性能测试进阶:从 JMeter 基线到 SLO 驱动的压测体系
学习·jmeter
Albart5755 小时前
2026年Python入门路线图:从零到实战的30天逐日详解(三)
学习·flask·#python30 天入门·python 实战教程·pytest 单元测试·python 虚拟环境·logging 日志