基本信息
書名:UNIX作業系統教程
ISBN:756060000
作者:尤晉元
出版日期:2004-09-01
版次:1
開本:16開
簡介
本書以UNIX作業系統為線索,介紹計算機系統中的一種基本系統軟體——作業系統。全書共分十四章。第一章概要介紹設定作業系統的目的,作業系統的分類、功能和特性以及UNIX作業系統的概況。第二章介紹程式設計語言C。第三章闡述進程的基本概念、進程調度狀態和通訊。第四章到第十三章結合UNIX作業系統講述作業系統的各個主要組成部分,包括:中斷和陷入、存儲管理、進程管理、信號和跟蹤、字元塊和字元設備管理、檔案管理系統、進程通訊和死鎖、系統的初啟和再生以及作業系統面向用戶的界面等。
本書可作為計算機科學和工程類專業的教材以及有關科技人員的參考書。
目錄
第一章 引論
一、設定作業系統的目的
(一)設定作業系統的兩個目的
(二)軟、硬體資源分類
二、作業系統分類,
(一)實時系統
(二)作業處理系統
三、作業系統的功能
(一)從人工操作到機器自動處理
(二)用快速輸入、輸出代替低速輸入、輸出
(三)從串列操作到並行操作
(四)從單道到多道程式
(五)分時作業系統的出現
(六)作業處理作業系統功能綜合
四、作業系統的特性
(一)並發
(二)共享
(三)長期的信息儲存
(四)不確定性
五、作業系統的性能
(一)可靠性
(二)效率
(三)可維護性
六、UNIX作業系統的發展歷史和特點
(一)UNIX系統的產生和發展
(二)UNIX系統的某些特點
七、UNIX的結構
(一)UNIX系統的基本結構
(二)UNIX核心源程式結構
習題
第二章 程式設計語言C
一、數據類型、運算符和表達式
(一)從一個簡單程式開始
(二)華氏—攝氏溫度對照表列印程式
(三)數據類型
(四)常數
(五)運算符
二、控制流
(一)語句和複合語句
(二)二路選擇語句if-else
(三)多路選擇語句switch
(四)循環語句while和for
(五)循環語句do-while
(六)break和continue語句
(七)goto語句
三、符號常數和預處理程式
(一)符號常數
(二)宏代換
(三)檔案蘊含
(四)條件編譯
四、兩個輸入、輸出程式及其套用
(一)字元輸入和輸出
(二)複製檔案
(三)檔案字元、字和行計數
五、函式
(一)函式的一般形式
(二)一個例子
(三)返回語句和返回值
(四)參數傳遞方式
(五)變數存儲類型
(六)遞歸調用
六、指針
(一)指針和地址
(二)指針和函式參數
(三)指針和數組
(四)指針運算
(五)二維數組和指針
(六)指針和函式
七、結構
(一)結構的基本形式
(二)結構指針和函式
(三)結構數組和指針
(四)結構的靈活套用
習題
第三章 並發進程
一、程式和進程
(一)程式的順序執行
(二)資源共享和程式的並發運行
(三)各種程式活動的相互依賴和制約
(四)進程概念的引入和描述
(五)進程和程式的區別和聯繫
(六)對並發和不確定性的再說明
二、進程的表示及調度狀態
(一)進程的表示
(二)進程的狀態
三、進程通訊
(一)同步
(二)互斥和臨界區
(三)實施臨界區互斥的鎖操作法
(四)信號量
(五)高級通訊機構
四、UNIX作業系統中的進程
(一)UNIX進程與圖象
(二)UNIX進程的兩種運行狀態
(三)UNIX進程的存儲器圖象
(四)進程基本控制塊
(五)進程擴充控制塊
(六)共享正文段
習題,
第四章 中斷和陷入
一、概述
(一)中斷及其一般處理過程
(二)中斷優先權和多重中斷
(三)中斷源分類
(四)陷入和系統調用
二、PDP-11的中斷機構
(一)處理機狀態字Ps
(二)中斷的多線、多級結構
(三)中斷矢量
三、UNIX中斷處理
(一)中斷隱指令
(二)現場保護和參數傳遞
(三)設備處理子程式
(四)恢復現場和退出中斷
(五)多重中斷
四、時鐘管理
(一)時鐘中斷處理子程式
(二)時鐘中斷處理的特點
五、陷入處理
(一)陷入分類
(二)陷入處理子程式
六、系統調用處理
(一)參數傳遞
(二)系統調用處理程式入口表
(三)系統調用基本處理過程
七、小結
習題
第五章 存儲管理
一、概述
(一)二級存儲器及信息傳送
(二)存儲器分配
(三)地址重定位
(四)信息保護
二、PDP-11記憶體管理機構
(一)虛地址字
(二)記憶體管理暫存器
(三)虛地址到物理地址的轉換
三、UNIX存儲管理
(一)在虛、實地址空間中的UNIX進程圖象
(二)虛、實地址映照
(三)存儲資源管理
(四)UNIX存儲管理中的保護
(五)UNIX存儲管理小結
四、虛擬存儲器
(一)虛擬存儲器的基本思想
(二)用分頁技術實施虛擬存儲器
(三)段式虛擬存儲器
(四)段頁式虛擬存儲器
(五)在段式系統中的存放位置選擇算法
(六)頁式系統中的淘汰算法
(七)段式系統中的淘汰算法
(八)調入算法
(九)工作集模型
習題
第六章 進程管理
一、UNIX中進程的各種調度狀態
(一)運行狀態
(二)睡眠狀態
(三)其它狀態
(四)進程調度狀態轉換圖
二、進程切換調度
(一)進程調度的一般原理
(二)UNIX進程切換調度算法
(三)進程切換調度的條件和時機
(四)進程切換調度程式Swtch
(五)UNIX進程調度小結
三、進程的睡眠和喚醒
(一)進程睡眠
(二)喚醒睡眠進程
*(三)系統調用sleep(seconds)
四、進程圖象在記憶體和盤交換區之間的傳送
(一)進程圖象傳送和切換調度的關係
(二)進程圖象調入記憶體算法
(三)進程圖象調出記憶體算法
(四)進程圖象傳送程式sched
(五)進程圖象傳送對系統性能的影響
五、進程的創建
(一)進程的樹形體系
(二)創建進程的基本任務和方式
(三)創建進程的基本工作過程
(四)創建進程的系統調用fork
六、進程終止和父、子進程的同步
(一)進程自我終止
(二)父進程等待子進程終止
*七、數據段和橫段的擴大、縮小
(一)進程占用存儲區的長度變更
(二)用戶棧的擴充
(三)數據段長度的變更
習題
第七章 信號和跟蹤
一、概述
二、信號機構的工作原理
(一)信號類型
(二)信號的產生、傳送和同步
(三)信號處理方式
(四)信號檢測和處理
(五)信號機構套用舉例
三、跟蹤機構的工作原理
(一)父、子進程的基本跟蹤過程
(二)跟蹤要求和命令的提出及傳送
(三)跟蹤處理過程的啟動及stop程式
(四)系統調用Wait在跟蹤機構中的套用
(五)跟蹤命令的執行和procxmt程式
(六)跟蹤機構工作綜述
*四、跟蹤機構在斷點調試中的套用
習題
第八章 字元塊設備管理
一、概述
(一)設備分類
(二)設備管理的設計目標
(三)通道
(四)緩衝技術
二、PDP-11磁碟設備
三、UNIX塊設備管理的主要數據結構
(一)緩衝存儲區及快取控制塊
(二)塊設備表
(三)塊設備開關表
四、緩衝存儲區管理
(一)兩種緩衝存儲區管理佇列
(二)快取管理算法
(三)快取管理佇列的初始狀態及變化過程
五、塊設備驅動
(一)輸入/輸出請求塊及其佇列
(二)塊設備啟動
(三)塊設備中斷處理和同步操作
六、塊設備讀、寫技術
(一)字元塊輸入
(二)字元塊輸出
*(三)不使用快取的塊設備讀、寫
七、UNIX塊設備管理小結
習題
第九章 字元設備管理
一、概述
二、字元緩衝技術
(一)小型字元快取及其佇列
(二)字元快取管理
三、字元設備開關、設備表和設備暫存器組
(一)字元設備開關
(二)終端機設備表
(三)設備暫存器組
四、終端機的I/O字元處理及設備驅動
(一)終端機I/O字元處理
(二)終端機驅動
五、終端機讀、寫操作
(一)終端機讀操作
(二)終端機寫操作
(三)終端機讀、寫操作過程綜合
*六、終端機的打開和關閉
(一)終端機的打開
(二)終端機的關閉
*七、spooling技術簡介
習題
第十章 檔案管理系統
一、概述
二、檔案系統的用戶界面
(一)檔案的創建和取消、打開和關閉
(二)檔案的讀、寫
(三)隨機存取
三、目錄結構
(一)一級目錄結構
(二)二級目錄結構
(三)多級目錄結構
(四)目錄和目錄檔案
(五)目錄項
四、檔案的結構和存取方法
(一)檔案的邏輯結構和物理結構
(二)檔案的三種物理組織方法
五、檔案存儲空間的管理
六、檔案的共享、保護保密和檔案系統的完整性
(一)檔案的共享和保護保密
(二)檔案系統的完整性
七、UNIX檔案系統的主要結構和算法
(一)檔案控制塊inode
(二)檔案索引結構
(三)檔案目錄結構和目錄中的勾連
(四)記憶體打開檔案結構門
(五)檔案系統存儲資源管理
(六)子檔案系統裝卸和裝配塊表
(七)各主要數據結構之間的聯繫
八、UNIX檔案系統的實施
(一)檔案讀、寫和地址變換
(二)檔案的創建、打開、取消和目錄搜尋二
習題
第十一章 進程通訊和死鎖
一、UNIX進程通訊機構pipe
(一)pipe機構的引入
(二)pipe的基本組成
(三)pipe檔案的讀、寫
(四)pipe套用示例
二、UNIX中的臨界區互斥
三、死鎖
(一)產生死鎖的條件
(二)死鎖的防止
(三)死鎖的檢測和解除
(四)死鎖的避免
習題
第十二章 系統初啟和再生
一、系統初啟
(一)系統初啟的主要工作
(二)系統初啟程式
二、進程圖象改換和檔案的執行
(一)可執行目標程式檔案的組成
(二)改換進程圖象系統調用exec和參數傳遞
(三)exec的基本執行過程
(四)exec的兩種用法
三、UNIX作業系統的再生
(一)作業系統再生的幾種情況
(二)UNIX核原始碼的組織
(三)UNIX核目標代碼的組織
(四)系統再生的基本過程
習題
第十三章 命令控制語言及其解釋程式
一、概述
二、UNIX命令語言shell
(一)簡單命令
(二)後台命令
(三)輸入、輸出轉向
(四)管道命令
(五)命令表和命令行
(六)模式匹配和檔案名稱參數
(七)元字元的轉義
(八)Shell過程
三、shell解釋程式的基本結構和工作原理
(一)shell解釋程式的基本結構
(二)命令行的讀入
(三)命令行的分析和命令行樹的構成
(四)命令行樹的執行
(五)命令樹和進程族
習題
第十四章 並發Pascal和Solo作業系統
一、概述
二、一個並發程式的例子
(一)問題的提出
(二)抽象數據類型
(三)行李託運系統的完整程式
三、Solo作業系統簡介
(一)系統基本性能
(二)系統程式結構
(三)系統的數據流
(四)系統的控制流