第一章 绪论 1 第一节 NACHOS概述 1 一、引言 1 二、Nachos教学用操作系统 1 第二节 NACHOS的实验环境 4 一、Nachos的安装 4 二、Nachos的目录结构 4 三、各个部分的编译运行 4 四、应用程序的编译 5 第二章 机器模拟 6 第一节 概述 6 第二节 机器模拟的实现 10 1. Sysdep模块分析(文件sysdep.cc sysdep.h) 10 1.1 PoolFile 函数 10 1.2 OpenForWrite 函数 10 1.3 OpenForReadWrite 函数 10 1.4 Read 函数 10 1.5 ReadPartial 函数 11 1.6 WriteFile 函数 11 1.7 Lseek 函数 11 1.8 Tell 函数 11 1.9 Close 函数 11 1.10 Unlink 函数 12 1.11 OpenSocket 函数 12 1.12 CloseSocket 函数 12 1.13 AssignNameToSocket 函数 12 1.14 DeAssignNameToSocket 函数 12 1.15 PoolSocket 函数 12 1.16 ReadFromSocket 函数 13 1.17 SendToSocket 函数 13 1.18 CallOnUserAbort 函数 13 1.19 Delay 函数 13 1.20 Abort 函数 13 1.21 Exit 函数 14 1.22 RandomInit 函数 14 1.23 Random 函数 14 1.24 AllocBoundedArray 函数 14 1.25 DeallocBoundedArray 函数 14 2. 中断模块分析(文件interrupt.cc interrupt.h) 14 2.1 PendingInterrupt类 16 2.2 Interrupt类 17 2.2.1 内部使用方法 17 2.2.2 内部使用函数 18 2.2.3 对外接口 18 3. 时钟中断模块分析(文件timer.cc timer.h) 20 4. 终端设备模块分析(文件console.cc console.h) 22 5. 磁盘设备模块分析(文件disk.cc disk.h) 23 6. Nachos运行情况统计(文件stats.cc stats.h) 24 第三章 线程管理系统 25 第一节 进程与线程 25 一、进程 25 1. 进程概念 25 2. 进程的状态及状态变化 25 3. 进程调度 26 4. 进程之间的同步和互斥 27 5. 进程的实施 28 6. 进程的创建 28 二、线程 29 1. 线程概念 29 2. 进程和线程的关系 30 第二节 NACHOS的线程管理 31 一、Nachos的线程管理 31 二、Nachos线程管理同实际进程管理的不同 33 第三节 NACHOS线程管理系统的初步实现 34 1. 工具模块分析(文件list.cc list.h utility.cc utility.h) 34 2. 线程启动和调度模块分析(文件switch.s switch.h) 34 2.1 ThreadRoot函数 34 2.2 SWITCH函数 35 3. 线程模块分析(文件thread.cc thread.h) 35 3.1 Fork 方法 37 3.2 StackAllocate 方法 38 3.3 Yield 方法 39 3.4 Sleep 方法 40 4. 线程调度算法模块分析(文件scheduler.cc scheduler.h) 40 4.1 Run方法 41 5. Nachos主控模块分析(文件main.cc system.cc system.h) 41 6. 同步机制模块分析(文件synch.cc synch.h) 42 6.1 信号量 ( Semaphore ) 42 6.2 锁机制 42 6.3 条件变量 43 第四节 线程管理系统作业 45 第五节 实现实例 47 4.1 对线程的改进 47 4.2 对线程调度的改进 48 第四章 文件管理系统 51 第一节 文件管理系统概述 51 一、文件 51 1. 文件结构 51 2. 文件访问 52 3. 文件类型 52 4. 文件属性 53 5. 文件操作 53 二、目录 54 1. 目录结构 54 2. 多级目录结构 55 3. 文件路径名 55 4. 工作目录 55 5. 目录结构的勾连 55 6. 目录项 56 三、UNIX文件系统的实现 56 1. UNIX文件系统中的主要结构 56 2. UNIX文件系统存储资源的分配和回收 58 第二节 NACHOS文件管理系统 61 第三节 NACHOS文件系统的实现 63 1. 同步磁盘分析(文件synchdisk.cc 、synchdisk.h) 63 2. 位图模块分析(文件bitmap.cc、bitmap.h) 64 3. 文件系统模块分析(文件filesys.cc、filesys.h) 64 3.1 生成方法 65 3.2 Create方法 65 3.3 Open方法 66 3.4 Remove方法 66 4. 文件头模块分析(文件filehdr.cc、filehdr.h) 66 5. 打开文件结构分析(文件openfile.cc、openfile.h) 67 5.1 ReadAt方法 67 5.2 WriteAt方法 68 6. 目录模块分析(文件directory.cc directory.h) 68 第四节 文件管理系统作业 70 第五章 用户程序和虚拟内存 71 第一节 NACHOS 对内存、寄存器以及CPU的模拟 71 1 RaiseException 方法 74 2 ReadMem 方法 74 3 WriteMem 方法 74 4 Translate方法 74 5 Run 方法 75 第二节 NACHOS用户进程运行机制 77 一、用户程序空间(文件address.cc, address.h) 77 1.1 生成方法 77 1.2 InitRegisters方法 78 1.3 SaveState方法 78 1.4 RestoreState方法 78 二、系统调用(文件exception.cc, syscall.h, start.s) 78 第三节 虚存管理的设计和实现 80 一、Nachos存储管理的改进要求 80 二、一个虚拟存储管理实现的实例 80 2.1 虚拟存储系统的总体设计 80 2.2 缺页中断陷入及其调度算法 83 2.3 虚存的存储分配 85 2.4 存储保护 85 2.5 实现中的一些细节 85 第四节 用户程序和虚拟存储作业 87 第六章 NACHOS的网络系统 88 第一节 NACHOS对物理网络的模拟 88 第二节 NACHOS的邮局协议 91 2.1 PostalDelivery方法 92 2.2 Send方法 93 第三节 网络部分作业 94
资源简介:nachos中文教程C语言版本,详细介绍各个类和方法
上传时间: 2016-09-27
上传用户:虫虫王王
资源简介:这是一个教我们如何操作nachos的中文教程,很适合操作系统的学习者
上传时间: 2013-12-18
上传用户:lixinxiang
资源简介:Allegro中文教程下载
上传时间: 2013-05-31
上传用户:eeworm
资源简介:ProE2001中文教程
上传时间: 2013-04-15
上传用户:eeworm
资源简介:ProE2001全套中文教程
上传时间: 2013-07-10
上传用户:eeworm
资源简介:ProE全套中文教程
上传时间: 2013-07-27
上传用户:eeworm
资源简介:Pro/E 全套中文教程
上传时间: 2013-04-15
上传用户:eeworm
资源简介:ProE全套中文教程 pdf
上传时间: 2013-06-03
上传用户:eeworm
资源简介:Cdrs中文教程
上传时间: 2013-07-13
上传用户:eeworm
资源简介:ProE2001中文教程
上传时间: 2013-06-21
上传用户:eeworm
资源简介:建PSPICE仿真模型库[中文教程] 3篇 PDF版
上传时间: 2013-08-06
上传用户:eeworm
资源简介:PADS2005中文教程 PDF版
上传时间: 2013-06-10
上传用户:eeworm
资源简介:SST 单片机中文教程
上传时间: 2013-04-15
上传用户:eeworm
资源简介:专辑类----PCB及CAD相关资料专辑 PADS2005中文教程-10.7M-PDF版.rar
上传时间: 2013-06-11
上传用户:heart520beat
资源简介:专辑类-PCB及CAD相关资料专辑-174册-3.19G 建PSPICE仿真模型库[中文教程]-3篇-0.9M-PDF版.zip
上传时间: 2013-07-09
上传用户:zhengjian
资源简介:专辑类-PCB及CAD相关资料专辑-174册-3.19G PADS2005中文教程-10.7M-PDF版.zip
上传时间: 2013-06-21
上传用户:luominghua
资源简介:专辑类-PCB及CAD相关资料专辑-174册-3.19G Protel-DXP-中文教程-138页-3.6M-PDF版.zip
上传时间: 2013-05-31
上传用户:x4587
资源简介:专辑类-Pro-E教程及相关资料专辑-134册-38.9G Pro-E-全套中文教程-43.9M.zip
上传时间: 2013-04-24
上传用户:ardager
资源简介:专辑类-Pro-E教程及相关资料专辑-134册-38.9G ProE全套中文教程-43.9M-pdf.zip
上传时间: 2013-04-24
上传用户:ghostparker
资源简介:专辑类-单片机专辑-258册-4.20G SST-单片机中文教程-71页-1.0M.pdf
上传时间: 2013-06-13
上传用户:liu_yuankang
资源简介:此书为ADS1.2开发环境中文教程,讲得很详细,希望对大家有用
上传时间: 2013-04-24
上传用户:wxhwjf
资源简介:比较全的Quartus II 中文教程 目录 第一章 可编程逻辑设计流程 第二章 设计输入 第三章 综合 第四章 仿真 第五章 布局布线 第六章 ······ ···· 第十五章 文档和其他资源
上传时间: 2013-06-14
上传用户:lingduhanya
资源简介:PROTEUS中文教程,对proteus软件的初学者很有帮助
上传时间: 2013-06-05
上传用户:sevenbestfei
资源简介:Layout2007中文教程,比较使用,方便查询
上传时间: 2013-06-09
上传用户:yangmars
资源简介:最详细的QuartusII中文教程,最详细的QuartusII中文教程
上传时间: 2013-04-24
上传用户:haobin315
资源简介:Arduino_电子积木基础套装中文教程 讲解arduino的基本使用方法
上传时间: 2013-06-28
上传用户:rocwangdp
资源简介:Logic2007中文教程 PADS Logic功能,特点及使用教程 本教程描述了PADS Logic 的各种功能和特点、以及使用方法。这些功 能包括: 如何在PADS Logic 中使用工作区(Working Area)。 如何在PADS Logic 的元件库中定义目标库(Library)。 如何从库中搜索有关...
上传时间: 2013-04-24
上传用户:zhaoq123
资源简介:不错的CAM350中文教程,有兴趣的可以看看
上传时间: 2013-04-24
上传用户:liucf
资源简介:DesignSpark PCB是一只免费的PCB 设计工具。 压缩包内含以下DesignSpark PCB的中文教程PDF文档: - DesignSpark PCB简介与教程 - 创建库教程 - 导入 Eagle 文件教程
上传时间: 2013-04-24
上传用户:隐界最新
资源简介:uCOSⅡ中文教程,详细的介绍了uCOSⅡ的使用
上传时间: 2013-04-24
上传用户:qin1208