安装Pintos之前需要先把 bochs-2.2.6-pintos.tar和pintos-tar下载到自己的目录文件中。这两个文件可以在此网站中下载。http://web.stanford.edu/class/cs140/projects/pintos/
注意,我们下载的文件是.tar.gz的,原本在windows系统上下载好这两个文件的.tar压缩包,却发现在ubuntu中无法解压.tar文件。
将下载好的两个文件解压,然后进入你的/home,新建一个文件夹os2014,把加压后的两个文件放进去。如果在输入命令的时候提示不存在该文件,可能是cd后时候加/的问题,小编没有仔细研究过绝对路径问题,但是有个小窍门就是可以利用ls指令查看终端当前所在位置里面的文档。
接着在你的命令终端输入以下命令(快捷键ctrl+alt+t):
首先安装以下软件(以下四个软件通过在命令行分别输入):
1:“sudo apt-get install buid-essential”
2:“sudo apt-get install xorg-dev”
3:“sudo apt-get install bison”
4:“sudo apt-get install libgtk2.0-dev”
以上四个安装可以确保你避免其他问题。
安装这四个软件伤了小编很多脑筋,因为系统一直提示无法定位该软件包。百度后我决定换源:一种方法是点击右上角的系统属性里,在源那里选择站点(有中国站点,有可以自选的好多站点,老师推荐163和阿里巴巴,不过我发现我的源的选项里面没有阿里巴巴,所以我换成了163的源),但是还是定位不到软件包。。。第二种方法是在文件sources.list中更改源,在百度上可以找到很多源的代码,直接考进去就可以了,#表示的是注释代码。但结果依然无用!
在了解到好多同学都装的是14.04版本的ubuntu后,我觉得可能是我的ubuntu12.10系统版本更不上软件更新脚步,所以定位不到软件包,于是我毅然决然重装一个ubuntu14.04,然后就很成功地下载好了以上四个软件。
安装完毕以后在命令行输入“cd bochs-2.2.6”,进入bochs-2.2.6目录内,输入命令“./configure”进行配置操作。配置完成以后输入命令“sudo make install”进行编译。最后输入命令“bochs”,bochs安装完成。
最后安装pintos: 输入命令“cd pintos”,进入pintos目录下面,再输入“cd src”,“cd threads” “make”安装完成。
啊哈哈,然后就可以跑代码啦!老师上课讲了一个C语言的陷阱,特别有意思的就是fork()和”\n“这个东西。
void main() { int i; for(i=0;i<2;i++) { fork(); printf("_"); } wait(null); wait(null); }
小伙伴们猜猜看,运行后会有几个_呢?如果改为printf("_\n")呢?