有机会再整吧
6.828: Learning by doing
配置环境
VMWare + Ubuntu20.04
编译工具链配置
测试,先后分别输入
1 | objdump -i |
我的机器上测试是没有问题的,PASS~~
QEMU 模拟器
Qemu 是纯软件实现的虚拟化模拟器,采用二进制指令翻译技术,几乎可以模拟任何硬件设备,我们最熟悉的就是能够模拟一台能够独立运行操作系统的虚拟机,虚拟机认为自己和硬件打交道,但其实是和 Qemu 模拟出来的硬件打交道,Qemu 将这些指令转译给真正的硬件。
正因为 Qemu 是纯软件实现的,所有的指令都要经 Qemu 过一手,性能非常低,所以,在生产环境中,大多数的做法都是配合 KVM 来完成虚拟化工作,因为 KVM 是硬件辅助的虚拟化技术,主要负责 比较繁琐的 CPU 和内存虚拟化,而 Qemu 则负责 I/O 虚拟化,两者合作各自发挥自身的优势,相得益彰。
step 1 获取 qemu 源码
1 | git clone https://github.com/mit-pdos/6.828-qemu.git qemu |
step 2 安装需要的工具包
1 | sudo apt install libsdl1.2-dev |
step 3 查看属性
1 | cd qemu |
👋由于Ubuntu版本的原因,20.04版本用的是 python3 ,与2018年的实验环境不符,所以要安装python2 后才可以查看 ./configure
。
1 | sudo apt install python2 |
tips:查看 python 路径的命令:
1 | type python python2 python2 |
截图如下
step 4 编译与安装
1 | make && make install |
但是会报错,因为权限不够,所以要加上 sudo,注意:两句命令都要加 sudo 才可以执行。
1 | sudo make && sudo make install |
step 5 获取 JOS 并挂载到qemu 上
1 | cd ;切回home文件夹 |
make
成功会显示:有一个 img 结尾的镜像文件。
之后才可以 make qemu
此时环境配置完毕。