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