本文转自http://blog.sina.com.cn/s/blog_a2dded3d010194pj.html
Nachos系列免责说明:本系列博客所用源代码及文档均来自互联网,如有侵权,请私信,马上删除。此外,Nachos为高校操作系统实习课程所用,本系列博客只为读者提供思路,以避免浪费不必要的时间,这是博主写这个系列的初衷所在。如果出现作业抄袭现象,博主一概不负责,希望读者实事求是,自己思考!
先贴出下载地址:
Nachos 3.4 Linux C++版本(源码):http://pan.baidu.com/share/link?shareid=2032464898&uk=2822100601
Nachos 3.4中文教程:http://pan.baidu.com/share/link?shareid=2036766080&uk=2822100601
第一部分
Nachos简介:Nachos的全称是“Not Another Completely Heuristic Operating System”,它是一个可以修改和跟踪的操作系统教学软件。它给出了一个支持多线程和虚拟存储的操作系统骨架,可让学生在短时间内对操作系统中的基本原理和核心算法有一个全面和完整的了解。
Nachos 安装:下载代码包之后,我所用的linux是ubuntu的12.04版本,可以直接解压缩,如果使用终端,可以cd到相应目录,利用tar -xf code-linux.tar.gz解压如图:
解压之后可以看见gnu-decstation-ultrix 和nachos-3.4两个代码包
进入nachos-3.4可以看见ample code 等包,其中nachos源代码的包就是放在code里面
machine包是用来模拟虚拟机的,network包用来模拟网络,threads包是线程管理,filesys包是文件系统,userprog包是用户程序
可以cd到各个代码下面去看看有那些代码,没有编译过的Nachos是没有可执行文件的,以Threads为例:
可以看到里面都是.cc和.h文件
nachos的运行:cd到code下面,输入make进行编译
错误信息是unbuntu不支持-fwritable-strings,用gedit打开Makefile.common
删除即可
之后继续make,如果没有报错,且安全退出,如:
则说明已成功,进入Threads,-ls,可以看到刚刚编译出来的.o文件和可执行文件Nachos
运行./nachos,如果出现:
则说明安装成功!
第二部分
在编写和调试Nachos系统的过程中,如果使用gedit或者vim编写代码,效率十分低下,为此,使用eclipse环境编写,Linux有免费的eclipse下载源,请读者自行百度查看安装。
(想必大多数人安装eclipse去了现在)
20分钟以后......
下载安装好eclipse 之后,打开File->import,然后选择:
之后选择:
在Existing Code Location中选择nachos-3.4文件夹下的code文件夹即可
我们看到nachos已经导入成功了,刚才运行./nachos 之后输入出来的内容,就是在threads/threadtest.cc文件中定义的。
打开threadtest.cc之后,点击build(就是eclipse的小榔头),然后run在控制台中可以看到如下:
是不是很眼熟?没错,就是终端下面运行./nachos的结果,至此,nachos安装与配置已经成功。
下一期将讲述Makefile和Nachos中文教程的相关内容。