XV6 操作系统实验

环境搭建

ubuntu

新建一个文件setup.sh,内容如下

#获取工具链
git clone --recursive https://github.com/riscv/riscv-gnu-toolchain
#安装必要依赖
sudo apt-get update
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

sudo apt-get install pkg-config
sudo apt-get install libpixman-1-dev
sudo apt-get install libglib2.0-dev libgthread2.0-dev
sudo apt-get install git
apt install gcc-riscv64-unknown-elf

#编译工具链
cd riscv-gnu-toolchain
./configure --prefix=/usr/local
sudo make -j$(nproc)
cd ..
#下载并解压qemu
wget https://download.qemu.org/qemu-4.1.0.tar.xz
tar xf qemu-4.1.0.tar.xz
#编译qemu
cd qemu-4.1.0
./configure --disable-kvm --disable-werror --prefix=/usr/local --target-list="riscv64-softmmu"
make -j$(nproc)
sudo make install
cd ..


#下载xv6实验代码
git clone git://g.csail.mit.edu/xv6-labs-2021

在终端输入bash setup.sh

等待完成基本就可以了,如果哪里报错缺少什么模块就自己去下就好了,这份代码集成了许多我参考别人时遇到的软件包不可用或找不到的问题,大概率是没问题的,有问题可以评论区提出,到时候看到再在文章里补充

检验是否搭建完毕

$ riscv64-unknown-elf-gcc --version
> riscv64-unknown-elf-gcc (GCC) 10.1.0
$ qemu-system-riscv64 --version
> QEMU emulator version 4.1.0

输入$ 后面的代码,如果出现下一行>后面显示的内容就说明成功了(可能不止这么短,但出现这些功能包和版本号就是成功了)

使用VScode进行SSH连接

首先在ubuntu中运行

sudo apt-get update
sudo apt-get install openssh-server

在Ubuntu中启动ssh服务,下面的代码都可以试试

sudo service ssh start
sudo ufw allow ssh

启动xv6

进入到xv6的文件夹中,运行

make qemu

如果出现下面的提示,就说明搭建成功了

xv6 kernel is booting

virtio disk init 0
init: starting sh

参考文献

2021 MIT6.S081 Xv6 实验环境配置 - 知乎 (zhihu.com)

 从零开始使用Vscode调试XV6 - 知乎 (zhihu.com)

OS实验xv6 6.S081 开坑_xv6.s081 mmap github-CSDN博客

Deadpool带你做XV6实验-Lab1: Utilities_哔哩哔哩_bilibili

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LenckCuak

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值