出版時間:2003-9 出版社:上海交通大學(xué)出版社 作者:黃上騰 等編著 頁數(shù):322 字?jǐn)?shù):520000
前言
自20世紀(jì)50年代以來,操作系統(tǒng)一直伴隨著計算機(jī)系統(tǒng)的發(fā)展而不斷地發(fā)展著。進(jìn)入2l世紀(jì),社會信息化的步伐進(jìn)一步加快,計算機(jī)系統(tǒng)的應(yīng)用深入到人類生活的各個領(lǐng)域,從琳瑯滿目的家用電器,到顯示國家實力的設(shè)備和武器;從個人使用的微機(jī)和PDA,到超級計算機(jī),到處都有著與計算機(jī)共存的各類操作系統(tǒng)?! ”M管操作系統(tǒng)本身及其應(yīng)用領(lǐng)域正在不斷地擴(kuò)大,但是操作系統(tǒng)的許多基本概念和技術(shù)仍然被普遍采用,并構(gòu)成了所有操作系統(tǒng)的基礎(chǔ)。另一方面,現(xiàn)代操作系統(tǒng)的許多概念與技術(shù)是這些基本技術(shù)的擴(kuò)展和延伸。因此,本書立足于介紹操作系統(tǒng)基本的概念和技術(shù),并簡要地介紹現(xiàn)代操作系統(tǒng)涉及的重要內(nèi)容。為使讀者對現(xiàn)代操作系統(tǒng)有更加直接的認(rèn)識,本書的各個部分用Linux的相關(guān)內(nèi)容作為所介紹的各種概念和技術(shù)的實例。每一章后均附習(xí)題,便于讀者加深對書中內(nèi)容的理解?! ”緯牡谝徊糠纸榻B了操作系統(tǒng)產(chǎn)生的背景和它的定義、各種背景下的操作系統(tǒng)的目標(biāo)、操作系統(tǒng)的主要組成部分,以及操作系統(tǒng)的運(yùn)行平臺;還簡要地介紹了使用操作系統(tǒng)的方式和方法,以便于讀者理解后續(xù)章節(jié)中涉及的概念和技術(shù)?! ”緯牡诙糠忠M(jìn)了進(jìn)程的概念,介紹了對進(jìn)程的描述和控制的方法。為了進(jìn)一步提高系統(tǒng)的并行性,引入了線程的概念,并簡單介紹了更適合線程運(yùn)行的SMP平臺?;コ?、同步和通信機(jī)制的實現(xiàn)是協(xié)調(diào)并行運(yùn)行的進(jìn)程時必須解決的問題,因此,詳細(xì)介紹了實現(xiàn)和使用這些機(jī)制的技術(shù)。多進(jìn)程并行時,難免會出現(xiàn)死鎖或饑餓,這里介紹了它們的成因和解決它們引起的問題的各種方案。最后介紹了進(jìn)程調(diào)度的目標(biāo)和策略?! ”緯牡谌糠衷诮榻B了內(nèi)存管理的需求之后,介紹了各種實內(nèi)存和虛擬內(nèi)存管理的技術(shù),而以后者為主。對于虛擬內(nèi)存管理,介紹了虛擬內(nèi)存的概念,以及頁式、段式和段頁式三種虛擬管理方案的原理、硬件支持和管理策略?! ”緯牡谒牟糠质紫冉榻B了操作系統(tǒng)中I/O管理的目標(biāo)和相應(yīng)的邏輯結(jié)構(gòu),單獨分析了VO管理中的兩項關(guān)鍵技術(shù),即緩存技術(shù)和磁盤調(diào)度技術(shù)。然后,對文件管理做了一個概述,并介紹了文件的組織、目錄的實現(xiàn)、文件的共享和輔存的管理。最后概述操作系統(tǒng)和計算機(jī)的安全性問題。為此,首先闡述安全威脅的總體情況,然后陳述計算機(jī)安全保護(hù)機(jī)制。在此之后考察對抗入侵者(包括非授權(quán)用戶和試圖執(zhí)行非授權(quán)操作的授權(quán)用戶)威脅的方法,接著是分析病毒,還講述了一種復(fù)雜的計算機(jī)安全設(shè)計的方法,即可信任系統(tǒng)。最后介紹網(wǎng)絡(luò)安全。
內(nèi)容概要
本書立足于介紹操作系統(tǒng)基本的要領(lǐng)和技術(shù),并簡要地介紹現(xiàn)代操作系統(tǒng)涉及的重要內(nèi)容。 全書分四個部分。第一部分介紹操作系統(tǒng)的定義、目標(biāo)和主要的組成部分,以及操作系統(tǒng)的運(yùn)行平臺和使用操作系統(tǒng)的方式。第二部分介紹進(jìn)程、線程和SMP的概念,進(jìn)程的描述與控制、進(jìn)程的互斥與同步及死鎖與饑餓、進(jìn)程調(diào)度。第三部分介紹內(nèi)存管理技術(shù),重點是虛擬內(nèi)存的管理。第四部分介紹I/O設(shè)備管理、文件管理,以及安全和保護(hù)問題。本書的各個部分用Linux的相關(guān)內(nèi)容作為所介紹的各種要領(lǐng)和技術(shù)的實例。每章后均附習(xí)題,便于讀者加深對書中內(nèi)容的理解。本書內(nèi)容豐富,通俗易懂,便于自學(xué),可作為非計算機(jī)專業(yè)的本科生或研究生的教科書和參考書,也可以作為大學(xué)程度的繼續(xù)教育的教材。
書籍目錄
第一部分 引論 1 操作系統(tǒng)概述 1.1 什么是操作系統(tǒng) 1.2 操作系統(tǒng)的發(fā)展 1.3 操作系統(tǒng)的主要組成部分 1.4 Linux操作系統(tǒng)概述 1.5 習(xí)題 2 計算機(jī)系統(tǒng)概述 2.1 基本成分 2.2 處理器的寄存器 2.3 指令的執(zhí)行 2.4 中斷 2.5 存儲器的層次結(jié)構(gòu) 2.6 高速緩沖存儲器 2.7 I/O通信技術(shù) 2.8 習(xí)題 3 用戶與操作系統(tǒng)的接口 3.1 概述 3.2 操作員接口 3.3 程序級接口 3.4 Linux的用戶界面Shell 3.5 習(xí)題第二部分 進(jìn)程 4 進(jìn)程描述與控制 4.1 進(jìn)程狀態(tài) 4.2 進(jìn)程描述 4.3 進(jìn)程控制 4.4 線程 4.5 對稱多處理 4.6 總結(jié) 4.7 習(xí)題 5 并發(fā):互斥與同步 6 并發(fā):死鎖和饑餓 7 單處理器調(diào)度第三部分 內(nèi)存 8 內(nèi)存管理 9 虛擬內(nèi)存第四部分 輸入/輸出和文件 10 輸入/輸出管理和磁盤調(diào)度 11 文件管理 12 系統(tǒng)安全參考資料
章節(jié)摘錄
圖4.5 列出了導(dǎo)致進(jìn)程狀態(tài)轉(zhuǎn)換的各種事件類型,進(jìn)程轉(zhuǎn)換有以下幾種: 1)空一初始:一個新進(jìn)程被創(chuàng)建以執(zhí)行一個程序。引發(fā)這個事件的原因見表4.1 。 2)初始一就緒:當(dāng)操作系統(tǒng)完成增加一個進(jìn)程的準(zhǔn)備工作之后,操作系統(tǒng)將會把該進(jìn)程從初始態(tài)轉(zhuǎn)為就緒態(tài)。大多數(shù)操作系統(tǒng)根據(jù)已經(jīng)存在的進(jìn)程個數(shù)或分配給已經(jīng)存在的進(jìn)程虛擬內(nèi)存總量設(shè)置一定的限制。設(shè)置限制的目的是為了避免由于活躍進(jìn)程的個數(shù)太多而導(dǎo)致系統(tǒng)性能下降。 3)就緒一運(yùn)行:當(dāng)?shù)搅诉x擇一個新進(jìn)程運(yùn)行的時候,操作系統(tǒng)在就緒態(tài)的進(jìn)程中選擇一個。4)運(yùn)行一退出:當(dāng)前運(yùn)行的進(jìn)程如果已經(jīng)結(jié)束或被取消,它會被操作系統(tǒng)終止。5)運(yùn)行一就緒:這種轉(zhuǎn)換最常見的原因是進(jìn)程的運(yùn)行已達(dá)到了所允許的不間斷執(zhí)行的最長時間。實際上,所有采用多道程序方式的操作系統(tǒng)都有這種時間規(guī)則。此外,還有其他幾種原因會導(dǎo)致運(yùn)行狀態(tài)到就緒狀態(tài)的轉(zhuǎn)換,但是并不是在所有操作系統(tǒng)中都會實現(xiàn)因為那些原因引起的轉(zhuǎn)換。例如,如果操作系統(tǒng)為不同的進(jìn)程設(shè)計不同的優(yōu)先級。這樣,有的進(jìn)程的運(yùn)行權(quán)有可能被其他進(jìn)程強(qiáng)占。假設(shè),進(jìn)程B比進(jìn)程A優(yōu)先級高,A在運(yùn)行而B被阻塞。如果操作系統(tǒng)知道進(jìn)程B所等待的事件已經(jīng)發(fā)生,它將把進(jìn)程B轉(zhuǎn)為就緒態(tài),并調(diào)度進(jìn)程B運(yùn)行。最后,進(jìn)程A也可能自行釋放對處理器的控制,轉(zhuǎn)為就緒狀態(tài)?! ?)運(yùn)行一阻塞:對于一個進(jìn)程,如果它必須等待某個事件的發(fā)生,它將被被置成阻塞狀態(tài)。對操作系統(tǒng)的請求通常以系統(tǒng)服務(wù)調(diào)用(即運(yùn)行程序?qū)ψ鳛椴僮飨到y(tǒng)代碼的部分過程的調(diào)用)的方式出現(xiàn)。例如,一個進(jìn)程可能會請求操作系統(tǒng)去做操作系統(tǒng)尚未準(zhǔn)備好而不能夠立即執(zhí)行的操作,也就是說,進(jìn)程可能會請求像文件或虛擬內(nèi)存那樣的資源,而該資源尚未被調(diào)入內(nèi)存。又如,進(jìn)程要求啟動某一操作,如I,0操作,且必須在這個操作完成之后,這個進(jìn)程才能夠繼續(xù)執(zhí)行。又比如,當(dāng)進(jìn)程間相互通信時,一個進(jìn)程可能會因為等待其他進(jìn)程提供輸入或發(fā)送消息而被阻塞。 7)阻塞一就緒:如果發(fā)生了一個進(jìn)程所等待的事件,進(jìn)程將從阻塞態(tài)轉(zhuǎn)為就緒態(tài)。 8)就緒一退出:為了繪圖的清晰起見,這個轉(zhuǎn)換并沒有畫在狀態(tài)轉(zhuǎn)換圖中。在一些系統(tǒng)中,一個父進(jìn)程可以在任何時刻結(jié)束它的子進(jìn)程。同樣,當(dāng)一個父進(jìn)程終止,所有子進(jìn)程也跟著終止。
圖書封面
評論、評分、閱讀與下載