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