第一章 緒論 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