《操作系统真象还原》学习笔记:第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!

相关推荐
Miqiuha10 分钟前
lock_guard和unique_lock学习总结
java·数据库·学习
一 乐1 小时前
学籍管理平台|在线学籍管理平台系统|基于Springboot+VUE的在线学籍管理平台系统设计与实现(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·学习
加油,旭杏2 小时前
【中间件学习】fastCG介绍和使用
学习·nginx·fastcgi
limengshi1383922 小时前
通信工程学习:什么是TFTP简单文件传输协议
网络·网络协议·学习·信息与通信
GFCGUO3 小时前
ubuntu18.04运行OpenPCDet出现的问题
linux·python·学习·ubuntu·conda·pip
丝丝不是土豆丝4 小时前
学习 CSS 新的属性 conic-gradient 实现环形进度条
学习
S hh4 小时前
【Linux】进程地址空间
java·linux·运维·服务器·学习
wusam5 小时前
螺蛳壳里做道场:老破机搭建的私人数据中心---Centos下Docker学习04(环境准备)
学习·docker·centos
攸攸太上5 小时前
Spring Gateway学习
java·后端·学习·spring·微服务·gateway
Geek之路6 小时前
QT系统学习篇(1)
开发语言·qt·学习