操作系统实验Lab 0:实验环境搭建(MIT 6.S081 FALL 2020)

MIT 6.S081 Operating System Engineering (FALL 2020) 课程实验采用的是 xv6 系统。
xv6 是在ANSI C中针对多处理器x86系统的Unix第六版的现代重新实现。

配套资源链接

MIT 6.S081 Operating System Engineering FALL 2020 视频链接

MIT 6.S081 Operating System Engineering FALL 2020 视频中文字幕翻译链接

MIT 6.S081 Operating System Engineering FALL 2020 操作系统课程主页链接

课程配套图书 《xv6: a simple, Unix-like teaching operating system》链接

课程配套图书中文翻译版链接

实验工具搭建方法链接

xv6 实验环境搭建

首先说明一下,本人使用的是 Windows 系统,所以采用安装 Linux 虚拟机的方式做的实验。

第一步:安装 VMware

首先我们要安装 VMware 虚拟机软件,VMware 下载地址链接

第二步:安装 Ubuntu

下载 Ubuntu 镜像并安装 Ubuntu 系统。Ubuntu 镜像下载地址链接

本人使用的是 Ubuntu 20.04.2.0 LTS 版本。

安装完 Ubuntu 后,先使用下面的命令修改 root 管理员密码。

sudo passwd root

再通过下面的命令更新软件列表。

sudo apt-get update

再安装 git 。

sudo apt install git

第三步:安装编译器

接下来就可以开始安装实验所需要的工具了。
首先克隆 RISC-V GNU 编译器工具链的存储库。

git clone --recursive https://github.com/riscv/riscv-gnu-toolchain

如果下载太慢,可以换成下面的地址。

git clone --recursive https://github.com.cnpmjs.org/riscv/riscv-gnu-toolchain

接下来,使用下面的命令安装实验编译工具链所需要的包。

sudo apt-get install autoconf automake autotools-dev curl libmpc-dev libmpfr-dev libgmp-dev gawk build-essential bison flex texinfo gperf libtool patchutils bc zlib1g-dev libexpat-dev

接下来依次输入下面的命令配置和构建工具链,首先进入工具链目录。

cd riscv-gnu-toolchain

然后输入下面的命令进行配置。

./configure --prefix=/usr/local

再进行编译。

sudo make

返回上一级目录。

cd ..

第四步:安装 QEMU 模拟器

首先下载 QEMU 5.1.0 的源代码。

wget https://download.qemu.org/qemu-5.1.0.tar.xz

然后对 QEMU 5.1.0 的源代码包进行解压。

tar xf qemu-5.1.0.tar.xz

解压后,进入 QEMU 5.1.0 的源代码目录。

cd qemu-5.1.0

接下来的操作可能遇到下面的报错,所以在这里先提一下,为了避免接下来你的操作报错,可以先运行解决方案的命令安装对应的工具。

如果报 ERROR: glib-2.48 gthread-2.0 is required to compile QEMU 错误,输入下面的命令安装工具进行解决。

apt-get install build-essential zlib1g-dev pkg-config libglib2.0-dev

如果报 ERROR: pixman >= 0.21.8 not present. Please install the pixman devel package. 错误,输入下面的两条命令安装工具进行解决。

apt-cache search pixman
apt-get install libpixman-1-dev

为 riscv64-softmmu 构建 QEMU。

./configure --disable-kvm --disable-werror --prefix=/usr/local --target-list="riscv64-softmmu"
make
sudo make install
cd ..

第五步:检查编译器是否安装成功

接下来输入下面的命令检查你的编译器是否安装成功。

riscv64-unknown-elf-gcc --version

如果安装成功,该命令执行后会显示版本等信息。

riscv64-unknown-elf-gcc (GCC) 11.1.0
...

第六步:检查 QEMU 模拟器是否安装成功

再输入下面的命令检查一下 QEMU 是否安装成功。

qemu-system-riscv64 --version

如果安装成功,该命令执行后会显示版本等信息。

QEMU emulator version 5.1.0
...

第七步:下载 xv6 源码

接下来使用下面的命令下载 xv6 系统源码,当然,你可以下载一份在主机上方便阅读查看。

git clone git://github.com/mit-pdos/xv6-riscv.git

第八步:编译运行 xv6

xv6 源码下载完成后,进入 xv6 源码目录。

cd xv6-riscv

使用下面的命令对 xv6 源码进行编译。

make qemu

如果成功,最后会看到输出如下。

init: starting sh
$

这时,说明你已经把 xv6 系统运行起来了,可以使用 ls 命令查看当前目录下的内容,结果可能与我下面给出的不同,但也不用担心,因为这里用的是 xv6 的源码编译后运行的结果,接下来的实验会以 FALL 2020 版本进行,所以下面是该系统 FALL 2020 实验分支编译运行后的结果。

$ ls
.              1 1 1024
..             1 1 1024
README         2 2 2059
xargstest.sh   2 3 93
cat            2 4 24256
echo           2 5 23080
forktest       2 6 13272
grep           2 7 27560
init           2 8 23816
kill           2 9 23024
ln             2 10 22880
ls             2 11 26448
mkdir          2 12 23176
rm             2 13 23160
sh             2 14 41976
stressfs       2 15 24016
usertests      2 16 148456
grind          2 17 38144
wc             2 18 25344
zombie         2 19 22408
console        3 20 0

在 xv6 中按 Ctrl + p 会显示当前系统的进程信息。
在 xv6 中按 Ctrl + a ,然后按 x 即可退出 xv6 系统。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值