一、构建、装入过程
1.编写“启动代码+主体代码”(在下载的xv6的原始代码上进行修改)
2.源代码进行编译、链接生成系统镜像(elf格式的目标文件)
3.将系统镜像保存起来(如保存到磁盘、flash或者网络服务器上)
4.主机启动(物理机或虚拟机) -> 载入镜像(控制权转给启动代码)
5.运行启动代码
6.进入主体代码
二、安装运行QEMU+xv6
1.安装Linux
我采用的是deepin-desktop-community-20.7-amd64虚拟机环境
安装链接:deepin系统安装教程(详细)_Shun Li的博客-CSDN博客
2.安装QEMU仿真器
我们需要QEMU来做一个虚拟的i386的机器,然后让它来运行我们的操作系统。
(1)打开终端,然后输入
sudo apt-get update
(2)下载基本的软件
sudo apt-get install net-tools gcc g++ git vim
sudo apt-get install git build-essential gdb-multiarch qemu-system-misc gcc-riscv64-linux-gnu binutils-riscv64-linux-gnu
(3)开始验证刚刚下载安装的工具的版本号
qemu-system-riscv64 --version
riscv64-linux-gnu-gcc --version
3.下载xv6源代码
(1)对xv6的源码进行下载
git clone git://g.csail.mit.edu/xv6-labs-2021
(2)到下载文件目录下(xv6-labs-2021)进行相关的路径配置
cd xv6-labs-2021
git checkout util
(3)对xv6文件进行编译
make
make qemu
在源代码的目录树的根目录下
执行make qemu,运行qemu+xv6
或者
执行make qemu-nox,运行qemu+xv6
启动之后,仿真器会弹出一个名为QEMU的qemu+xv6运行窗口,窗口显示进行一系列操作之后,给出shell提示符。
在xv6中,键入Ctrl-P可以显示进程信息。
参考链接:
关于操作系统项目课的环境搭建——在ubuntu上,安装xv6和qemu_xv6安装_bulbul6767的博客-CSDN博客
02-xv6操作系统-安装调试_哔哩哔哩_bilibili