PintOS安装(适用于Ubuntu20.04及以上版本)
目录
- PintOS安装(适用于Ubuntu20.04及以上版本)
- 前期准备
- 具体操作
- 检验是否安装成功
前期准备
- qemu
安装方法:sudo apt install qemu-system
- gcc
安装方法:sudo apt install g++
- make
安装方法:sudo apt install make
- vim
安装方法:sudo apt install vim
- PintOS源码
下载地址:公共仓库。
进入公共仓库后,找到master后的tree,点击进入,然后再点击snapshot即可下载(也可以选择直接对git仓库进行clone,但速度可能会很慢)。
下载完成后,将压缩包放置在你喜欢的地方,解压,解压之后将文件夹改名为pintos-anon。
具体操作
解压完成后,进入pintos-anon文件夹,点击进入src目录后,右键点击在终端打开。
在终端输入:
cd utils
(进入utils目录)vim pintos-gdb
(编辑pintos-gdb)
键盘按i
开始进行编辑
将GDBMACROS
变量的路径中的/src/misc/gdb-macros
前的路径改为pintos-anon文件夹的完整路径,如图中我的路径为:
更改完成后,按ecs停止编辑,然后键盘输入:wq
保存文件并退出。vim Makefile
将LOADLIBES
改名为为LDLIBS
。- 接下来在终端输入:
make
(编译utils,确保你还处于pintos-anon/src/util/目录下)
如果你的Ubuntu系统版本>=20.04,那么此时gcc应该会报错找不到头文件stropts.h,此时,打开一个新的终端窗口,依次输入:
cd /usr/include
sudo vim stropts.h
:wq
- 关闭新打开的终端窗口
回到原来的终端窗口(处于pintos-anon/src/util/目录下),
输入:vim squish-pty.c
找到第288行左右,将if (isastream (slave))
这部分代码块注释掉,如图:
- 再次在终端输入:
make
(处于pintos-anon/src/util/目录下) cd ..
(返回到pintos-anon/src/目录下)cd threads
vim Make.vars
第7行,将bochs
替换为qemu
。make
cd ..
cd utils
vim pintos
1、第103行左右,将bochs
替换为qemu
2、第257行左右,将kernel.bin
替换为其完整路径,路径查找方式:
替换后的效果如图:
3、第621左右,替换qemu-system-i386
为qemu-system-x86_64
,如图:
4、按ecs停止编辑,然后键盘输入:wq
保存文件并退出。vim Pintos.pm
在第362行左右,替换loader.bin
为其完整路径,方法同上方替换kernel.bin的路径。sudo vim ~/.bashrc
添加export PATH=/home/你的路径/pintos-anon/src/utils:$PATH
到最后一行。- 关闭并重新打开终端,输入
source ~/.bashrc
以使新的环境变量生效。
检验是否安装成功
- 终端输入:
pintos run alarm-multiple
如果输入后桌面如图所示,则说明安装成功: