定 價:26 元
叢書名:高等院校計算機(jī)實驗與實踐系列示范教材
- 作者:張坤
- 出版時間:2008/6/1
- ISBN:9787302177340
- 出 版 社:清華大學(xué)出版社
- 中圖法分類:TP316
- 頁碼:
- 紙張:膠版紙
- 版次:1
- 開本:16
本書是“操作系統(tǒng)”課程的輔助教材,通過其中的實驗可加深對本課程概念的理解。全書共分為10章,從設(shè)計一個簡單的操作系統(tǒng)引導(dǎo)程序開始,指導(dǎo)學(xué)生初步理解操作系統(tǒng)的設(shè)計原理和過程,使學(xué)生能夠掌握簡單的Shell編程,掌握進(jìn)程、線程、進(jìn)程管理、進(jìn)程調(diào)度和進(jìn)程通信等基本概念和技術(shù),掌握內(nèi)存管理基本概念和技術(shù),掌握文件操作和磁盤調(diào)度的基本原理。
本書的實驗以Linux操作系統(tǒng)為主。因為Linux是開放源碼的,因此,在本書附錄中給出了Linux0.11的部分源碼分析,可以讓讀者得以一窺操作系統(tǒng)的內(nèi)部實現(xiàn)機(jī)制。
書中的實驗題目具有獨(dú)立性,并且對每個實驗中用到的知識,在前面都給予描述和指導(dǎo),這樣有利于讀者通過自學(xué)掌握實驗教程中的技術(shù)和方法。
本書可作為高等院校計算機(jī)及相關(guān)專業(yè)“操作系統(tǒng)”課程實驗的輔助教材,也可作為讀者學(xué)習(xí)操作系統(tǒng)技術(shù)的實驗指導(dǎo)教程。
操作系統(tǒng)是現(xiàn)代計算機(jī)系統(tǒng)中不可缺少的系統(tǒng)軟件。如果讓用戶去使用一臺沒有配置操作系統(tǒng)的計算機(jī),那是難以想象的。操作系統(tǒng)控制和管理整個計算機(jī)系統(tǒng)中的軟硬件資源,并為用戶使用計算機(jī)提供一個方便靈活、安全可靠的工作環(huán)境。本書遵循操作系統(tǒng)課程的教學(xué)大綱要求,針對應(yīng)用型模式的專業(yè)定位和人才培養(yǎng)目標(biāo)而編寫。
操作系統(tǒng)課程的實驗環(huán)節(jié)一直是操作系統(tǒng)教學(xué)的難點。本書通過Windows和Linux兩個操作系統(tǒng)各自的編程接口,提供一些編程實例,以此加深學(xué)生對操作系統(tǒng)工作原理的領(lǐng)會和對操作系統(tǒng)實現(xiàn)方法的理解,并且使學(xué)生在程序設(shè)計方面得到基本訓(xùn)練。
全書共分為10章,從設(shè)計一個簡單的操作系統(tǒng)引導(dǎo)程序開始,指導(dǎo)學(xué)生初步理解操作系統(tǒng)的設(shè)計原理和過程,使學(xué)生能夠掌握簡單的Shell編程,掌握進(jìn)程、線程、進(jìn)程管理、進(jìn)程調(diào)度、進(jìn)程通信等基本概念和技術(shù),掌握內(nèi)存管理基本概念和技術(shù),掌握文件操作和磁盤調(diào)度的基本原理。
結(jié)合操作系統(tǒng)理論課程的學(xué)習(xí),通過本書的全部實驗,使學(xué)生能夠理解操作系統(tǒng)的一般概念和方法,有能力去分析、設(shè)計和改變一個操作系統(tǒng)的某些組件。
本書的大部分程序在Linux下實現(xiàn),可為后續(xù)的嵌入式Linux系統(tǒng)課程打下很好的基礎(chǔ)。為了更好地讓讀者理解操作系統(tǒng)的原理和實現(xiàn)技術(shù),其余程序是在Windows下實現(xiàn)的一些模擬算法。所有程序都經(jīng)過測試和驗證。
本書附有Linux0.11的部分源碼分析,這主要是為了讓讀者能夠更加深入地理解一個真實操作系統(tǒng)的內(nèi)部原理。附錄還精選了一些習(xí)題,供廣大師生選用。
實驗要求:
1. 明確實驗?zāi)康,掌握相關(guān)背景知識。
2. 熟練掌握實驗內(nèi)容和方法。
3. 每個實驗都要求學(xué)生寫出實驗報告,同時注意各實驗中給出的“實驗任務(wù)”。
4. 教師最后寫出實驗總結(jié)。
在本書的編寫過程中,姜立秋編寫了第4章、第9章和第10章,趙慧然編寫了附錄B、附錄C、附錄D和附錄E,全書由張坤提出編寫大綱并編寫了其余章節(jié)。由于編者水平有限,錯誤和不妥之處敬請讀者提出寶貴意見。
第1章引導(dǎo)操作系統(tǒng)的過程
1.1實驗?zāi)康?br />
1.2預(yù)備知識
1.3實驗內(nèi)容
1.3.1簡單匯編程序設(shè)計
1.3.2查看啟動記錄
1.3.3修改啟動記錄
1.3.4用NASMW編譯一個自己的
啟動程序(.bin文件)
第2章Linux基本環(huán)境
2.1實驗?zāi)康?br />
2.2預(yù)備知識
2.2.1Linux的安裝
2.2.2Linux 命令行(Shell環(huán)境)
2.2.3文件系統(tǒng)命令
2.2.4用戶及系統(tǒng)管理常用命令
2.2.5網(wǎng)絡(luò)操作常用命令
2.2.6Linux下軟件安裝
2.2.7使用編輯器vi 編輯文件
2.2.8GCC編譯器
2.2.9Gdb調(diào)試器
2.2.10編寫包含多文件的Makefile
2.3實驗內(nèi)容
2.3.1Linux基本操作練習(xí)
2.3.2Makefile的應(yīng)用
第3章Shell編程
3.1實驗?zāi)康?br />
3.2預(yù)備知識
3.2.1Shell概述
3.2.2Shell的特點和命令行書寫規(guī)則
3.2.3常用Shell類型
3.3實驗內(nèi)容
3.3.1簡單Shell 程序設(shè)計
3.3.2Shell腳本的建立和執(zhí)行
3.3.3Shell變量
3.3.4Shell中的特殊字符
3.3.5表達(dá)式的比較
3.3.6控制結(jié)構(gòu)
3.3.7綜合應(yīng)用
第4章進(jìn)程管理
4.1實驗?zāi)康?br />
4.2預(yù)備知識
4.2.1進(jìn)程相關(guān)基本概念
4.2.2Linux下系統(tǒng)調(diào)用
4.2.3Windows下的系統(tǒng)調(diào)用
4.2.4進(jìn)程調(diào)度算法
4.3實驗內(nèi)容
4.3.1進(jìn)程的創(chuàng)建
4.3.2進(jìn)程的控制
4.3.3文件的加鎖、解鎖
4.3.4Windows下的進(jìn)程管理
4.3.5進(jìn)程調(diào)度模擬算法
第5章進(jìn)程間通信
5.1實驗?zāi)康?br />
5.2預(yù)備知識
5.2.1管道
5.2.2消息
5.2.3共享內(nèi)存
5.2.4信號機(jī)制
5.3實驗內(nèi)容
5.3.1進(jìn)程的管道通信
5.3.2消息的創(chuàng)建、發(fā)送和接收
5.3.3共享存儲區(qū)的創(chuàng)建、附接和段接
5.3.4消息隊列和共享存儲區(qū)性能比較
5.3.5信號機(jī)制舉例
第6章進(jìn)程(或線程)同步與多線程編程
6.1實驗?zāi)康?br />
6.2預(yù)備知識
6.2.1進(jìn)程(或線程)同步概述
6.2.2線程概述
6.3實驗內(nèi)容
6.3.1生產(chǎn)者消費(fèi)者問題
6.3.2進(jìn)程、線程綜合應(yīng)用
第7章死鎖避免——銀行家算法
7.1實驗?zāi)康?br />
7.2預(yù)備知識
7.2.1死鎖的概念
7.2.2死鎖預(yù)防
7.2.3死鎖避免
7.3實驗內(nèi)容
7.3.1實現(xiàn)銀行家算法所用的數(shù)據(jù)結(jié)構(gòu)
7.3.2銀行家算法
7.3.3源程序清單
7.3.4設(shè)計輸入數(shù)據(jù)、驗證銀行家算法
第8章存儲管理
8.1實驗?zāi)康?br />
8.2預(yù)備知識
8.3實驗內(nèi)容
8.3.1可變分區(qū)主存分配和回收
8.3.2請求頁式存儲管理
第9章文件操作
9.1實驗?zāi)康?br />
9.2預(yù)備知識
9.3實驗內(nèi)容
第10章磁盤調(diào)度
10.1實驗?zāi)康?br />
10.2預(yù)備知識
10.3實驗內(nèi)容
附錄A80386基礎(chǔ)
附錄B操作系統(tǒng)練習(xí)題與參考答案
附錄C綜合測試題及其參考答案
附錄D操作系統(tǒng)自測題
附錄ELinux0.11系統(tǒng)引導(dǎo)程序
附錄FLinux0.11進(jìn)程調(diào)度
附錄GLinux0.11中信號的處理
附錄HLinux0.11的內(nèi)存管理
參考文獻(xiàn)