計算機作業系統·高等院校計算機系列教材

計算機作業系統·高等院校計算機系列教材

《計算機作業系統·高等院校計算機系列教材》是一本正文語種為簡體中文的書籍

基本介紹

  • 書名:計算機作業系統·高等院校計算機系列教材
  • ISBN:7307045850,9787307045859;
  • 出版社:武漢大學出版社
  • 裝幀:平裝
  • 開本:16開;
內容簡介,目錄,資源管理,程式控制,人機互動,進程管理,記憶體管理,虛擬記憶體,

內容簡介

本書從計算機資源管理的角度出發,系統、全面、準確、通俗地闡述了作業系統的概念原理和方法,涵蓋了引論、作業管理和用戶接口、進程和處理機管理、存儲管理、設備管理、檔案系統、網路作業系統、UNIX系統分析和Windows2000/NT介紹等。全書結構清晰、內容循序漸進。語言流暢,具有內容豐富、涉及面廣、概念準確、實踐性強等特點。

目錄

第一章 引論
1.1 什麼是作業系統
作業系統是管理計算機硬體資源,控制其他程式運行並為用戶提供互動操作界面的系統軟體的集合。作業系統是計算機系統的關鍵組成部分,負責管理與配置記憶體、決定系統資源供需的優先次序、控制輸入與輸出設備、操作網路與管理檔案系統等基本任務。作業系統的種類很多,各種設備安裝的作業系統可從簡單到複雜,可從手機的嵌入式作業系統超級計算機的大型作業系統。目前流行的現代作業系統主要有AndroidBSDiOSLinuxMac OS XWindowsWindows Phonez/OS等,除了Windows和z/OS等少數作業系統,大部分作業系統都為類Unix作業系統。
1.2 作業系統的功能
作業系統的主要功能是資源管理,程式控制人機互動等。計算機系統的資源可分為設備資源和信息資源兩大類。設備資源指的是組成計算機的硬體設備,如中央處理器,主存儲器,磁碟存儲器,印表機,磁帶存儲器,顯示器,鍵盤輸入設備和滑鼠等。信息資源指的是存放於計算機內的各種數據,如檔案,程式庫,知識庫,系統軟體和套用軟體等。
作業系統位於底層硬體與用戶之間,是兩者溝通的橋樑。用戶可以通過作業系統的用戶界面,輸入命令。作業系統則對命令進行解釋,驅動硬體設備,實現用戶要求。以現代觀點而言,一個標準個人電腦的OS應該提供以下的功能:
進程管理(Processing management)
記憶體管理(Memory management)
檔案系統(File system)
網路通訊(Networking)
安全機制(Security)
用戶界面(User interface)
驅動程式(Device drivers)

資源管理

系統的設備資源和信息資源都是作業系統根據用戶需求按一定的策略來進行分配和調度的。作業系統的存儲管理就負責把記憶體單元分配給需要記憶體的程式以便讓它執行,在程式執行結束後將它占用的記憶體單元收回以便再使用。對於提供虛擬存儲的計算機系統,作業系統還要與硬體配合做好頁面調度工作,根據執行程式的要求分配頁面,在執行中將頁面調入和調出記憶體以及回收頁面等。
處理器管理或稱處理器調度,是作業系統資源管理功能的另一個重要內容。在一個允許多道程式同時執行的系統里,作業系統會根據一定的策略將處理器交替地分配給系統內等待運行的程式。一道等待運行的程式只有在獲得了處理器後才能運行。一道程式在運行中若遇到某個事件,例如啟動外部設備而暫時不能繼續運行下去,或一個外部事件的發生等等,作業系統就要來處理相應的事件,然後將處理器重新分配。
作業系統的設備管理功能主要是分配和回收外部設備以及控制外部設備按用戶程式的要求進行操作等。對於非存儲型外部設備,如印表機顯示器等,它們可以直接作為一個設備分配給一個用戶程式,在使用完畢後回收以便給另一個需求的用戶使用。對於存儲型的外部設備,如磁碟、磁帶等,則是提供存儲空間給用戶,用來存放檔案和數據。存儲性外部設備的管理與信息管理是密切結合的。
信息管理是作業系統的一個重要的功能,主要是向用戶提供一個檔案系統。一般說,一個檔案系統向用戶提供創建檔案,撤銷檔案,讀寫檔案,打開和關閉檔案等功能。有了檔案系統後,用戶可按檔案名稱存取數據而無需知道這些數據存放在哪裡。這種做法不僅便於用戶使用而且還有利於用戶共享公共數據。此外,由於檔案建立時允許創建者規定使用許可權,這就可以保證數據的安全性。

程式控制

一個用戶程式的執行自始至終是在作業系統控制下進行的。一個用戶將他要解決的問題用某一種程式設計語言編寫了一個程式後就將該程式連同對它執行的要求輸入到計算機內,作業系統就根據要求控制這個用戶程式的執行直到結束。作業系統控制用戶的執行主要有以下一些內容:調入相應的編譯程式,將用某種程式設計語言編寫的源程式編譯成計算機可執行的目標程式,分配記憶體儲等資源將程式調入記憶體並啟動,按用戶指定的要求處理執行中出現的各種事件以及與操作員聯繫請示有關意外事件的處理等。

人機互動

作業系統的人機互動功能是決定計算機系統“友善性”的一個重要因素。人機互動功能主要靠可輸入輸出的外部設備和相應的軟體來完成。可供人機互動使用的設備主要有鍵盤顯示、滑鼠、各種模式識別設備等。與這些設備相應的軟體就是作業系統提供人機互動功能的部分。人機互動部分的主要作用是控制有關設備的運行和理解並執行通過人機互動設備傳來的有關的各種命令和要求。

進程管理

不管是常駐程式或者應用程式,他們都以進程為標準執行單位。當年運用馮紐曼架構建造電腦時,每箇中央處理器最多只能同時執行一個進程。早期的OS(例如DOS)也不允許任何程式打破這個限制,且DOS同時只有執行一個進程(雖然DOS自己宣稱他們擁有終止並等待駐留(TSR)能力,可以部分且艱難地解決這問題)。現代的作業系統,即使只擁有一個CPU,也可以利用多進程(multitask)功能同時執行複數進程。進程管理指的是作業系統調整複數進程的功能。
由於大部分的電腦只包含一顆中央處理器,在單核心(Core)的情況下多進程只是簡單迅速地切換各進程,讓每個進程都能夠執行,在多核心或多處理器的情況下,所有進程通過許多協同技術在各處理器或核心上轉換。越多進程同時執行,每個進程能分配到的時間比率就越小。很多OS在遇到此問題時會出現諸如音效斷續或滑鼠跳格的情況(稱做崩潰(Thrashing),一種OS只能不停執行自己的管理程式並耗盡系統資源的狀態,其他使用者或硬體的程式皆無法執行)。進程管理通常實現了分時的概念,大部分的OS可以利用指定不同的特權等級(priority),為每個進程改變所占的分時比例。特權越高的進程,執行優先權越高,單位時間內占的比例也越高。互動式OS也提供某種程度的回饋機制,讓直接與使用者互動的進程擁有較高的特權值。

記憶體管理

根據帕金森定律:“你給程式再多記憶體,程式也會想盡辦法耗光”,因此程式設計師通常希望系統給他無限量且無限快的存儲器。大部分的現代計算機存儲器架構都是層次結構式的,最快且數量最少的暫存器為首,然後是高速快取、存儲器以及最慢的磁碟存儲設備。而作業系統的存儲器管理提供查找可用的記憶空間、配置與釋放記憶空間以及交換存儲器和低速存儲設備的內含物……等功能。此類又被稱做虛擬記憶體管理的功能大幅增加每個進程可獲得的記憶空間(通常是4GB,即使實際上RAM的數量遠少於這數目)。然而這也帶來了微幅降低運行效率的缺點,嚴重時甚至也會導致進程崩潰。
存儲器管理的另一個重點活動就是藉由CPU的幫助來管理虛擬位置。如果同時有許多進程存儲於記憶設備上,作業系統必須防止它們互相干擾對方的存儲器內容(除非通過某些協定在可控制的範圍下操作,並限制可訪問的存儲器範圍)。分區存儲器空間可以達成目標。每個進程只會看到整個存儲器空間(從0到存儲器空間的最大上限)被配置給它自己(當然,有些位置被作業系統保留而禁止訪問)。CPU事先存了幾個表以比對虛擬位置與實際存儲器位置,這種方法稱為標籤頁(paging)配置。
藉由對每個進程產生分開獨立的位置空間,作業系統也可以輕易地一次釋放某進程所占據的所有存儲器。如果這個進程不釋放存儲器,作業系統可以退出進程並將存儲器自動釋放。

虛擬記憶體

虛擬記憶體是計算機系統記憶體管理的一種技術。它使得應用程式認為它擁有連續的可用的記憶體(一個連續完整的地址空間),而實際上,它通常是被分隔成多個物理記憶體碎片,還有部分暫時存儲在外部磁碟存儲器上,在需要時進行數據交換。
在早期的單用戶單任務作業系統(如DOS)中,每台計算機只有一個用戶,每次運行一個程式,且次序不是很大,單個程式完全可以存放在實際記憶體中。這時虛擬記憶體並沒有太大的用處。但隨著程式占用存儲器容量的增長和多用戶多任務作業系統的出現,在程式設計時,在程式所需要的存儲量與計算機系統實際配備的主存儲器的容量之間往往存在著矛盾。例如,在某些低檔的計算機中,物理記憶體的容量較小,而某些程式卻需要很大的記憶體才能運行;而在多用戶多任務系統中,多個用戶或多個任務更新全部主存,要求同時執行獨斷程式。這些同時運行的程式到底占用實際記憶體中的哪一部分,在編寫程式時是無法確定的,必須等到程式運行時才動態分配。
為此,希望在編寫程式時獨立編址,既不考慮程式是否能在物理存儲中存放得下,也不考慮程式應該存放在什麼物理位置。而在程式運行時,則分配給每個程式一定的運行空間,由地址轉換部件將編程時的地址轉換成實際記憶體的物理地址。如果分配的記憶體不夠,則只調入當前正在運行的或將要運行的程式塊(或數據塊),其餘部分暫時駐留在輔存中。
1.3 作業系統的類型
1.4 作業系統的特性及性能指標
1.5 中斷系統
小結
習題一
第二章 作業管理和用戶接口
2.1 用戶與作業系統間的接口
2.2 作業管理的基本概念
2.3 作業的輸入與輸出
2.4 作業調度
2.5 作業控制
小結
習題二
第三章 進程和處理機管理
3.1 進程的基本概念
3.2 進程管理
3.3 進程間的同步與互斥
3.4 進程通信
3.5 死鎖
小結
習題三
第四章 存儲管理
4.1 概述
4.2 簡單的存儲管理
4.3 分頁存儲管理
4.4 請求分頁存儲管理
4.5 段式存儲管理
4.6 段頁式存儲管理
小結
習題四
第五章 設備管理
5.1 I/O系統
5.2 緩衝技術
5.3 設備分配
5.4 虛擬設備
5.5 磁碟存儲器管理
5.6 設備驅動程式
小結
習題五
第六章 檔案系統
6.1 檔案系統的概念
6.2 檔案結構及存取方法
6.3 檔案存儲空間管理
6.4 檔案目錄管理
6.5 檔案的共享與保護
小結
習題六
第七章 網路作業系統
7.1 概述
7.2 網路作業系統的結構
7.3 網路作業系統的通信
7.4 資源共享
7.5 服務軟體
7.6 應用程式接口
小結
習題七
第八章 UNIX作業系統
8.1 概述
8.2 UNIX的進程
8.3 UNIX進程的控制與調度
8.4 存儲器管理
8.5 UNIX設備管理
8.6 UNIX檔案管理
小結
習題八
第九章 Windows2000作業系統
9.1 Windows作業系統的發展歷程
9.2 Windows2000的體系結構
9.3 Windows2000的進程和處理器管理
9.4 Windows2000的存儲管理
9.5 Windows2000的檔案系統
9.6 Windows2000的I/O系統
小結
習題九
參考文獻

相關詞條

熱門詞條

聯絡我們