之前一直想写的博客,无奈一拖再拖,今天痛下决心,决定写完这个系列,就当给自己还愿好了。

   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里面
   

在code包中:

    machine包是用来模拟虚拟机的,network包用来模拟网络,threads包是线程管理,filesys包是文件系统,userprog包是用户程序
    可以cd到各个代码下面去看看有那些代码,没有编译过的Nachos是没有可执行文件的,以Threads为例:
    
    可以看到里面都是.cc和.h文件
    nachos的运行:cd到code下面,输入make进行编译
    

   如果出现错误,查看一下错误信息,因为有些linux不是make,而是gmake,去百度一下解决办法,如果使用的ubuntu那么你一定会出现如下问题:

  

错误信息是unbuntu不支持-fwritable-strings,用gedit打开Makefile.common

   按住ctrl+F寻找-fwritable-strings发现在28行28列
     删除即可
    之后继续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中文教程的相关内容。

natch os调试环境搭建相关推荐

  1. X86汇编调试环境搭建

    最近毕设需要做一个基于X86的微型OS内核,一直在学习汇编,前来记录一下 汇编环境搭建 本次使用vscode搭建的,需要的插件有X86 and X86_64 Assembly(也可以使用masm插件) ...

  2. 双机调试环境搭建 windbg + virtualkd

    双机调试环境搭建 1. 环境准备 2. 单独的windbg双机配置 2.1 设置GuestOS环境 2.2 设置HostOS环境 2.3 Windbg测试 3. 使用Virtualkd/Virtual ...

  3. auto.js id为参数滑动_【Autojs教程】02Autojs PC端开发调试环境搭建

    [Autojs教程]02-Autojs PC端开发调试环境搭建 写在前面 本篇教程算是保姆级教程了,希望以此能吸引更多感兴趣的同学学习Autojs,也希望大家能因此碰撞出更多的奇思妙想 关注微信公众号 ...

  4. mac 内核调试环境搭建

    操作系统安装 先从 app store 下载 下载完后安装程序在应用里 打开 vm 新建 双击从光盘或映像安装 安装 安装失败 用其它工具安装 还可以先在 windows 上的 VM 下先安装好再拷贝 ...

  5. uni-app 模拟机调试环境搭建

    前言 最近接手了一份使用 uni-app 进行开发的工作,今天才有时间正式开始,在这里记录一下使用 HBuilderX 进行 uni-app 开发的调试环境搭建过程. 下载安装 HBuilderX 进 ...

  6. Mikrotik路由器(routerOS)调试环境搭建

    routerOS 调试环境搭建 1 安装routerOS 1.1 下载routerOS镜像文件 略 1.2 安装 需要注意的是:选择硬盘类型为IDE,因为routerOS默认情况下未包含SCSI或SA ...

  7. eas java配置_EAS客户端调试环境搭建

    客户端调试环境搭建说明 适用场景:在现场跟踪问题或者在研发内部跟踪定位测试环境的问题时,开发人员需要快速搭建一个可供调试的环境以供分析问题,以下说明可供开发人员在需要时使用,注意该方式只支持客户端调试 ...

  8. Nacos 简介与 本地调试环境搭建

    目录 1.简介 2.Nacos架构 3.本地调试环境搭建 3.1 源码下载 3.3 单机启动 Nacos 3.4 集群方式启动:基于文件方式 4.Nacos源码模块介绍 5. 约定说明 1.简介 Na ...

  9. ffmpeg编译gb28181_RTSP/GB28181协议/海康SDK/Ehome协议视频上云网关EasyCVR视频平台在linux环境下ffmpeg源码单步调试环境搭建...

    目前TSINGSEE青犀视频研发的视频上云服务平台EasyCVR已经可集成海康EHome私有协议,并且在前文中我也跟大家讲过EHome协议的配置和调用流程,有兴趣的可以阅读一下:配置及协议介绍.Eho ...

最新文章

  1. ACL 2020今日放榜,779篇论文被接收,姚班校友陈丹琦首日演讲
  2. Gitlab环境快速部署(RPM包方式安装)
  3. Cisco 双出口NAT配置
  4. 变化的和不变的-让自己慢下来(49)
  5. sqlserver date类型和字符串比较_VB编程基本数据类型完整剖析
  6. dba_segments和dba_tables的不同
  7. php cgi模块,PHP5模块和CGI
  8. linux shell学习问题部分记录
  9. java 耦合解耦_为什么工厂模式可以解耦?why?
  10. 三维计算机视觉(六)--3DSC(3D形状上下文特征)
  11. TCP,UDP,IP数据包格式详解
  12. packages are looking for funding
  13. AndroidStudio各个版本下载
  14. 一功能简单的BBS系统源代码
  15. MD5加密,受到什么影响,改后缀有用么?
  16. Json本地校验工具--HiJson
  17. 车载电源的ISO7637处理
  18. 2021 Domain Adaptation(李宏毅
  19. PHP使用AES加密和解密
  20. 阿里云oss使用cdn,节省oss下行流量

热门文章

  1. vue3 watch 和watchEffect()
  2. windows使用/服务(7)电脑手机之间如何互传文件(华为分享)
  3. “交通·未来”第10期:基于深度学习的动态系统复杂数据建模方法:以铁路列车晚点预测为例...
  4. word功能应用技巧:排版应用中那些强大的功能
  5. 学霸如何用计算机表白,520,表白进行时!各科学霸们逆天的表白方式
  6. Nginx - 正反向代理,nginx.conf配置
  7. 公司企业文化 标语 中英文
  8. 冷眼看待360与QQ之争
  9. 在linux中下载迅雷链接(thunder://)
  10. Karhunen-Loeve变换