出版時間:2012-5 出版社:清華大學(xué)出版社 作者:諶衛(wèi)軍,王浩娟 編著 頁數(shù):212
內(nèi)容概要
本書是清華大學(xué)本科生專業(yè)課程“操作系統(tǒng)”的教材,主要介紹操作系統(tǒng)的基本概念和基本原理,包括進程管理、死鎖、存儲管理、i/o設(shè)備管理和文件系統(tǒng)等,內(nèi)容涵蓋了現(xiàn)代操作系統(tǒng)所應(yīng)具備的各個功能模塊。
操作系統(tǒng)是一門比較難的專業(yè)課程,內(nèi)容較為單調(diào)枯燥、晦澀難懂,學(xué)生不易掌握。本書作者具有豐富的教學(xué)經(jīng)驗,曾榮獲霍英東教育基金會高等院校青年教師獎、北京市高校青年教師教學(xué)基本功比賽一等獎等獎項,對教學(xué)規(guī)律、課程內(nèi)容和學(xué)生特點有深入的理解。因此,在寫作本書時,能夠生動活潑、通俗易懂地講述復(fù)雜的原理概念,這一點已經(jīng)在教學(xué)實踐中得到了充分的驗證。另外,為了配合課程的內(nèi)容,在每一章的末尾,附有大量的習(xí)題,以便瀆者及時地復(fù)習(xí)相關(guān)的內(nèi)容。
本書適合作為高等院校計算機、軟件、自動化和電子等專業(yè)本科生的操作系統(tǒng)課程教材,也適合正在學(xué)習(xí)操作系統(tǒng)的廣大科技人員、軟件工程師和青少年學(xué)生參考。尤其是對于即將參加研究生入學(xué)考試的學(xué)生來說,本書是一本不可多得的參考書。
書籍目錄
第1章操作系統(tǒng)概述
1.1操作系統(tǒng)的概念
1.2操作系統(tǒng)的發(fā)展歷史
1.3操作系統(tǒng)的類型
1.4操作系統(tǒng)的硬件環(huán)境
1.4.1受保護的指令
1.4.2系統(tǒng)調(diào)用
1.4.3內(nèi)存保護
1.4.4中斷機制
習(xí)題
第2章進程管理
2.1進程
2.1.1為何引入進程
2.1.2什么是進程
2.1.3進程的特性
2.1.4進程的創(chuàng)建與終止
2.1.5進程的狀態(tài)
2.1.6狀態(tài)隊列
2.2線程
2.2.1線程的概念
2.2.2線程的實現(xiàn)
2.2.3一個例子
2.3進程間通信與同步
2.3.1進程間通信方式
2.3.2進程的互斥
2.3.3基于關(guān)閉中斷的互斥實現(xiàn)
2.3.5信號量
2.3.6進程的同步
2.4經(jīng)典的ipc問題
2.4.1生產(chǎn)者—消費者問題
2.4.2哲學(xué)家就餐問題
2.4.3讀者—寫者問題
2.5進程調(diào)度
2.5.1關(guān)于調(diào)度的若干問題
2.5.2批處理系統(tǒng)中的調(diào)度算法
2.5.3交互式系統(tǒng)中的調(diào)度算法
2.5.4實時系統(tǒng)中的調(diào)度算法
習(xí)題
第3章死鎖
3.1死鎖概述
3.1.1什么是死鎖
3.1.2資源
3.1.3死鎖的模型
3.2死鎖的檢測和解除
3.2.1死鎖檢測算法
3.2.2死鎖的解除
3.3死鎖的避免
3.3.1資源軌跡圖
3.3.2安全狀態(tài)與不安全狀態(tài)
3.3.3銀行家算法
3.4死鎖的預(yù)防
習(xí)題
第4章存儲管理
4.1單道程序存儲管理
4.2分區(qū)存儲管理
4.2.1固定分區(qū)存儲管理
4.2.2可變分區(qū)存儲管理
4.2.3可變分區(qū)的實現(xiàn)
4.2.4內(nèi)存中的程序執(zhí)行
4.2.5重定位和存儲保護
4.3頁式和段式存儲管理
4.3.1頁式存儲管理
4.3.2段式存儲管理
4.3.3頁式管理與段式管理的比較
4.3.4段頁式存儲管理
4.4覆蓋技術(shù)與交換技術(shù)
4.4.1覆蓋技術(shù)
4.4.2交換技術(shù)
4.5虛擬存儲技術(shù)
4.5.1程序的局部性原理
4.5.2虛擬存儲技術(shù)的原理
4.5.3虛擬頁式存儲管理
4.5.4頁面置換算法
4.5.5工作集模型
4.5.6虛擬頁式的設(shè)計問題
4.5.7虛擬段式存儲管理
習(xí)題
第5章i/o設(shè)備管理
5.1i/o硬件
5.1.1i/o設(shè)備的類型
5.1.2設(shè)備控制器
5.1.3i/o地址
5.2i/o控制方式
5.2.1程序循環(huán)檢測方式
5.2.2中斷驅(qū)動方式
5.2.3直接內(nèi)存訪問方式
5.3i/o軟件
5.3.1i/o軟件的接口
5.3.2i/o軟件的層次結(jié)構(gòu)
5.4磁盤
5.4.1磁盤的硬件
5.4.2磁盤格式化
5.4.3磁盤調(diào)度算法
5.4.4出錯處理
習(xí)題
第6章文件系統(tǒng)
6.1文件
6.1.1文件的基本概念
6.1.2文件的使用
6.2目錄
6.2.1目錄的基本概念
6.2.2目錄的結(jié)構(gòu)
6.3文件系統(tǒng)的實現(xiàn)
6.3.1文件系統(tǒng)的布局
6.3.2文件的實現(xiàn)
6.3.3目錄的實現(xiàn)
6.3.4系統(tǒng)調(diào)用的實現(xiàn)
6.3.5空閑空間管理
習(xí)題
參考文獻
章節(jié)摘錄
版權(quán)頁: 插圖: 1.1 操作系統(tǒng)的概念 請讀者思考一個問題:在一個計算機系統(tǒng)當(dāng)中為什么要有操作系統(tǒng)?沒有操作系統(tǒng)行不行呢? 在一個計算機系統(tǒng)中,通常會包括以下一些部件:中央處理器(Central ProcessingUnit,CPU)、內(nèi)存、磁盤(如軟盤和硬盤)、輸入設(shè)備(如鍵盤和鼠標(biāo))、輸出設(shè)備(如顯示器和打印機)。這些部件之間是通過總線Bus連接在一起的。 那么計算機系統(tǒng)的目標(biāo)是什么呢?對于普通的終端用戶來說,可能希望計算機系統(tǒng)能夠為我們提供幾個基本的功能:高性能的計算、數(shù)據(jù)的存儲和管理以及數(shù)據(jù)的處理和呈現(xiàn)。以媒體播放為例,假設(shè)要在計算機上播放一部電影,由于電影文件的格式一般都是壓縮的,如MPEG,因此在制作電影時,需要對原始數(shù)據(jù)進行壓縮;而在播放電影時,需要對壓縮后的數(shù)據(jù)進行解壓縮,而這種壓縮和解壓縮的操作就需要大量的計算。另外,一部電影以什么樣的形式存放在計算機當(dāng)中,怎樣對它進行管理,在播放電影時,如何在屏幕上顯示一幅幅的圖像,這些都是需要計算機系統(tǒng)幫我們解決的問題。那么計算機系統(tǒng)如何來實現(xiàn)這些目標(biāo)呢? 計算機系統(tǒng)是通過各種應(yīng)用軟件來實現(xiàn)上述目標(biāo)的,以電影播放為例,通常使用的播放軟件是Windows媒體播放器、RealPlayer播放器等。一般來說,這些應(yīng)用軟件必須具備如下一些特點:一是功能正確、性能穩(wěn)定;二是易于開發(fā)、易于維護;三是可重用性好。如果應(yīng)用軟件的開發(fā)是直接面向機器硬件的,需要直接對聲卡、顯卡、鍵盤等硬件進行編程,那么在這種情形下,這些目標(biāo)容易實現(xiàn)嗎? 如果直接面對硬件來開發(fā)應(yīng)用軟件,那么不僅需要知道應(yīng)用軟件本身的實現(xiàn)邏輯,包括該軟件有多少個功能模塊、每個模塊的功能如何、相互關(guān)系如何等,除此之外,還要考慮許多與硬件相關(guān)的問題,例如,如何把鍵盤緩沖區(qū)中的數(shù)據(jù)復(fù)制到內(nèi)存中?如何在屏幕上的某個位置顯示一個字符?如何讀取磁盤的第51個扇區(qū)?如果有多個程序同時需要使用CPU,怎么協(xié)調(diào)?總之,如果每個程序員在編寫每一個應(yīng)用程序的時候,都要去考慮這樣一些瑣碎的細節(jié)問題,那么編程的效率將會極其低下。 如何解決這個問題呢?通常的做法就是在硬件和應(yīng)用軟件之間引入一層專門的軟件。其功能主要有兩個:一是管理系統(tǒng)的各個部件,使它們能正常運轉(zhuǎn);二是給上層的應(yīng)用軟件提供一個易于理解和編程的接口。這一層軟件就是本書的主題:操作系統(tǒng)。 操作系統(tǒng)是計算機系統(tǒng)中的一個系統(tǒng)軟件,它是一些程序模塊的集合,這些程序模塊能夠以盡量有效、合理的方式來管理和分配計算機的軟硬件資源,合理地組織計算機的工作流程,控制程序的執(zhí)行并向用戶提供各種服務(wù)功能,使用戶能夠靈活、方便、有效地使用計算機,使整個計算機系統(tǒng)能夠高效地運行。 實際上,對于不同的人來說,他們眼中的操作系統(tǒng)是不一樣的。對于操作系統(tǒng)的設(shè)計者來說,操作系統(tǒng)是系統(tǒng)資源的管理者,即如何管理CPU、內(nèi)存和I/O設(shè)備等系統(tǒng)部件,使它們能正常運轉(zhuǎn)。對于應(yīng)用程序開發(fā)人員來說,操作系統(tǒng)是一組抽象的API( ApplicationProgramming Interface,應(yīng)用程序編程接口)。例如,我們在Windows操作系統(tǒng)上編寫應(yīng)用軟件時,使用的都是Windows的各種API函數(shù),如MessageBox、CreateWindow和DrawText等。而對于普通的終端用戶來說,操作系統(tǒng)則是一個操作環(huán)境,是執(zhí)行各種操作的一個平臺,用戶可以在上面編寫程序,也可以在上面執(zhí)行各種各樣的應(yīng)用程序,如使用Word編寫文檔,使用QQ上網(wǎng)聊天,使用媒體播放器觀看視頻等。
編輯推薦
《重點大學(xué)計算機專業(yè)系列教材:操作系統(tǒng)》適合作為高等院校計算機、軟件、自動化和電子等專業(yè)本科生的操作系統(tǒng)課程教材,也適合正在學(xué)習(xí)操作系統(tǒng)的廣大科技人員、軟件工程師和青少年學(xué)生參考。尤其是對于即將參加研究生入學(xué)考試的學(xué)生來說,《重點大學(xué)計算機專業(yè)系列教材:操作系統(tǒng)》是一本不可多得的參考書。
圖書封面
評論、評分、閱讀與下載