操作系統知識點整理(完整版)_第1頁
操作系統知識點整理(完整版)_第2頁
操作系統知識點整理(完整版)_第3頁
操作系統知識點整理(完整版)_第4頁
免費預覽已結束,剩余36頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、.第一章操作系統概述1)一個完整的計算機系統是由硬件系統和軟件系統兩大部分組成2)計算機軟件是指程序和與程序相關的文檔的集合3)按功能可把軟件分為“系統軟件”和“應用軟件”兩部分系統軟件:操作系統語言處理程序,數據庫管理系統應用軟件:各種管理軟件,用于工程計算的軟件包,輔助設計軟件4)通常把未配置任何軟件的計算機稱為“裸機”5)操作系統可以被看作是計算機系統的核心,統管整個系統資源,制定各種資源的分配策略,調度系統中運行的用戶程序,協調它們對資源的需求,從而使整個系統在高效、有序的環境里工作。6)發展的動力:(1) 提高計算機資源的利用率的需要(2) 方便用戶使用計算機的需要(3) 硬件技術不

2、斷發展的需要(4) 計算機體系結構發展的需要7)操作系統是在“裸機”上加載的第一層軟件,是對計算機硬件系統功能的首次擴充8)操作系統的定義:操作系統是控制和管理計算機硬件和軟件資源,合理地組織計算機工作流程,以及方便用戶使用計算機的一個大型程序9)操作系統的功能:處理機管理:進程控制,進程同步,進程通信、調度、實施 CPU 分配存儲器管理:內存分配,內存保護,地址映射,內存擴充設備管理:緩沖管理,設備分配,設備管理文件管理:存儲空間管理,目錄管理,讀寫管理和保護與用戶有關的接口:用戶接口,程序接口,人機交互10)操作系統另一種定義:操作系統是一組能有效地組織和管理計算機硬件和軟件資源,合理地對

3、各類作業進行調度,以及方便用戶使用的程序的集合操作系統的種類:1) 單道批處理系統參考 .資料.特點:單路性、獨占性、自動性、封閉性、順序性缺點:系統的資源得不到充分的利用2) 多道批處理系統特點:多路性、共享性、自動型、封閉性、無序性、調度性好處:提高 CPU 的利用率提高內存和 I/O 設備的利用率增加系統吞吐量缺點:平均周轉時間長,無交互能力3) 分時系統分時系統是指在一臺主機上連接了多個配有顯示器和鍵盤的終端,由此所組成的系統, 該系統允許多個用戶同時通過自己的終端,以交互方式使用計算機,共享主機中的資源。采用了“時間片輪轉”的處理機調度策略4)實時系統實時系統是指系統能及時響應外部事

4、件的請求, 在規定的時間內完成對該事件的處理,并控制所有實時任務協調一致地運行第二章處理機管理1)進程是指在系統中能獨立運行并作為資源分配的基本單位,它是由一組機器指令,數據和堆棧等組成的,是一個能獨立運行的活動實體,多個進程可以并發執行和交換信息2) 程序是一個在時間上嚴格有序的指令集合3) 在單道程序設計下,系統具有的特點a. 資源的獨占性b. 執行的順序性c. 結果的再現性在多道程序設計環境下,系統具有:a. 執行的并發性b. 相互的制約性參考 .資料.c. 狀態的多變性(不可再現性)5) 并發、并行、串行a. 從宏觀上看是并行,同時在內存的多個程序都在執行著,互不影響b. 從微觀上看是

5、串行,由于 CPU 在任何時刻只能執行一個程序,因此這些程序輪流占用 CPU ,交替執行著c. 我們把 “邏輯上相互獨立的程序, 在執行時間上相互重疊, 一個程序的執行還沒有結束, 另一個程序的執行已經開始” 的這種特性稱為程序執行的并發性6) 對進程的描述a. 進程是程序的一次執行過程b. 進程的運行活動是建立在某個數據集合上的c. 進程是在獲得資源的基礎上從事自己的運行活動7) 進程的特征結構特征、動態性、并發性、獨立性、異步性進程是一個動態的概念不同進程可以執行同一個程序每一個進程都有自己的生命周期進程之間具有并發性,進程間會相互制約8) 程序和進程的區別a. 程序是指令的有序集合, 是

6、靜態的, 進程是程序在處理機上的一次執行過程,是動態的。 程序的存在時永久的, 而進程是有生命周期的, 它因創建而產生,因調度而運行,因撤銷而消亡b. 進程是程序的一次執行過程,程序是進程賴以存在的基礎c. 進程具有并發性,而程序并發執行會失去可再現性d. 進程是系統分配和調度的獨立單位, 進程由程序、 數據集合和進程控制塊組成9) 系統進程的使用級別高于用戶進程10) 進程的狀態創建、就緒、運行、阻塞參考 .資料.a.一個進程從運行狀態變為就緒狀態,一定會引起另一個進程從就緒變為運行b.一個進程從運行狀態變為阻塞狀態,一定會引起另一個進程從運行狀態變為就緒狀態;這種因果變遷絕對不可能發生,因

7、為一個CPU 不可能真正同時運行兩個進程c.一個進程從阻塞狀態變為就緒狀態,不一定會引起另一個進程從就緒狀態變為運行狀態11) 進程的三個組成部分:程序、數據集合、進程控制塊(PCB )12) 進程控制塊是進程存在的唯一標示a. 作用:通過 PCB ,是原來不能獨立運行的程序,成為一個可以獨立運行的基本單位,一個能夠并發執行的進程b. 其中的信息:進程標識符、處理機狀態、進程調度信息、進程控制信息13) 操作系統中把做出“決定把CPU 分配給誰用”的程序稱為“進程調度程序”14) 常用的進程調度算法:a. 先來先服務調度算法b. 時間片輪轉調度算法: 為就緒隊列中的每一個進程分配一個稱為“時間

8、片”的時間段,它是允許該進程占用CPU 的最長時間長度參考 .資料.c. 優先數調度算法:優先數高的先調度,若相同則先來先服務d. 多級隊列調度算法:時間片調度和優先數調度算法的結合15) 進程調度程序的主要功能a. 記錄系統中所有進程的有關情況,比如進程的當前狀態,優先數等b. 確定分配處理機的算法c. 完成處理機的分配d. 完成處理機的回收16) 把處理劑分配給進程后, 還有一個允許它占用多長時間的問題, 有兩種處理方式,一種是不可剝奪方式,另一種是剝奪方式17) 為了對進程進行有效的管理和控制, 操作系統要提供若干基本的操作以便能創建進程、撤銷進程、 阻塞進程、 喚醒進程,把具有這種特性

9、的程序稱為 “原語” ,原語的不可分割性,通常利用屏蔽中斷的方法18) 程序接口:操作系統在程序一級給予用戶的支持命令接口:操作系統在控制一級給予用戶的支持19) CPU 指令系統中的指令分為兩類a. 操作系統和用戶都能使用的指令,非特權指令b. 只能由操作系統使用的指令,特權指令20) CPU 的兩種工作狀態:管態、目態a. 當 CPU 處于管態時,可以執行包括特權指令在內的一切機器指令b. 當 CPU 處于目態時,禁止使用特權指令21) 訪管指令系統調用命令的程序屬于操作系統,它應該在管態下執行用戶程序只有通過計算機系統提供的訪管指令才能實現由目態轉為管態,進而調用這些功能程序的目的訪管指

10、令屬于非特權指令,功能是執行它就會產生一個軟中斷,促使中央處理機由目態轉為管態,進入操作系統并處理該中斷22) 從功能上看,可以把系統調用命令分為五大類: a. 一是關于進程管理和控制的參考 .資料.b. 二是關于外部設備輸入 / 輸出的c. 三是關于磁盤文件管理的d. 四是關于訪問系統信息的e. 五是關于存儲申請與釋放的23)從形式上看, 操作系統提供的系統調用與一般的過程調用(子程序調用) 相似,但它們有著明顯的區別作業管理:1)把一個作業提交給系統時,系統要開辟一個作業控制塊JCB ,以便隨時記錄作業的信息2) 被系統接納的作業, 在沒有投入運行之前, 稱為后備作業。 這些作業存放在輔助

11、存儲器中,并由他們的 JCB 連接在一起,形成所謂的后備作業隊列3)作業調度: 按照某種規則, 從后備作業隊列中挑選作業進入內存,參與處理機的競爭,這個過程稱為作業調度4) 作業的狀態:a. 提交狀態: 進入輔助存儲器, 作業的信息還沒有全部進入系統, 系統也沒有為它建立 JCB ,感知不到它的存在b. 后備狀態:建立起了 JCB ,并將 JCB 排到后備作業隊列中c. 運行狀態:(阻塞、運行、就緒)都屬于運行狀態d. 完成狀態:也是一個暫時性的狀態5) 作業的調度算法:a. 先來先服務:以作業進入后備作業隊列的先后次序周轉時間 = 完成時間 -到達時間注:若分配一定的內存,且不允許作業在內存

12、中移動時,要考慮所占內存大小b.短作業優先:從后備作業隊列中挑選所需CPU 時間最少且資源能夠得到滿足的作業注:如果所有作業“同時” 到達后備作業隊列, 那么采用短作業優先的作業調度算法總會獲得最小的平均周轉時間c. 響應比高著優先:先調度響應比高著參考 .資料.響應比 =已等待時間 / 所需 CPU 時間6) 在確定作業調度算法時應注意的問題:a. 公平對待后備作業隊列中的每一個作業, 避免無故或無限期的延遲一個作業的執行,使各類用戶感到滿意b. 使進入內存的多個作業, 能均衡地使用系統中的資源, 避免出現有的資源沒有作業使用,有的資源卻被多個作業爭搶的“忙閑”不均的情況c. 力爭在單位時間

13、內為盡可能多的作業提供服務, 提高整個系統的吞吐能力第三章 存儲管理1) 計算機操作系統的存儲器: CPU 寄存器,主存,輔存2) 在考慮計算機存儲器的設計時,必須顧及a. 價格、容量、訪問時間b. 存取時間越快,價格越高,容量越小3) 高速緩存: 介于寄存器和存儲器之間的存儲器, 主要用于備份主存中較常用的數據,以減少處理機對主存儲器的訪問次數,提高程序執行速度高速緩存容量遠大于寄存器,比內存約小兩到三個數量級左右為了緩和內存與處理機(CPU )速度的不匹配4)字(字長):一次傳送數據的長度16 、 32 、64 依系統而定(主)內存儲器和高速緩存之間是以“塊”為單位傳遞數據的高速緩存與CP

14、U 之間則以“字”為單位傳遞數據5) 存儲器管理的功能:a. 內存的分配與回收b. 存儲的保護和共享c. 地址定位d. 存儲擴充6) 內存儲器由一個個存儲單元組成,一個存儲單元可存放若干個二進制的位( bit ), 8 個二進制位被稱為一個字節(byte )7) 在操作系統中, 把用戶程序指令中的相對地址變為所在絕對地址空間中的絕對地址的這個過程,稱為地址重定位8) 地址的定位方式:a. 絕對定位方式: 是在程序裝入內存之前, 程序指令中的地址就已經是絕對參考 .資料.地址,已經正確地反映了它將要進入的存儲區的位置, 不適用于多道程序設計環境b. 靜態重定位(多道程序環境下)根據內存的具體情況

15、將裝入模塊裝入到內存的適當位置,會使裝入模塊中的所有邏輯地址與實際裝入內存后的物理地址不同。這種地址重定位是在程序執行前完成的c. 動態重定位將地址重定位的時間推遲到程序執行時再進行所以裝入內存的所有地址都仍是邏輯地址連續分配存儲方式:1) 單一連續分配(靜態重定位)a. 單道程序環境下,總體上把內存儲器分為兩個分區:系統區和用戶區b. 系統總是把整個用戶區分配給一個用戶使用, 把分配給了用戶但未被使用的區域稱為“內部碎片”c. 單一連續分區存儲管理的缺點:a) 由于每次只能有一個進入內存, 故它不適用于多道程序設計, 工作效率不高,資源利用率低b) 只要作業比用戶區小,在用戶區里就會形成碎片

16、,造成資源浪費c) 大作業無法在小內存中運行d. 為緩解大作業小內存的情況提出覆蓋技術和對換技術a) 覆蓋技術:允許一個作業的若干個程序段使用同一個存儲區b) 對換技術:以輔助存儲器作為內存的后援(硬盤)2) 固定分區存儲管理(靜態):分區數目、大小固定a. 預先把內存儲器中可供分配的用戶區劃分成若干個連續分區,每個分區的尺寸可以相同, 可以不同。 每個分區中只允許裝入一個作業運行,系統可以為每一個分區設置一個后備作業隊列,一個作業到達時, 總是進入到“能容納該作業的最小分區”的那個后備隊列中去排隊參考 .資料.b. 分區的分配與釋放方案:a) 在隊列中挑選出第一個可容納的作業進入i. 優點:

17、選擇效率高ii. 缺點:小作業 - 大內存b) 在這個隊列中進行搜索,找到這個分區能夠容納的最大的那個作業,讓它進入運行i. 優點:存儲空間利用率高,產生內部碎片盡可能的小ii. 缺點:選擇效率低c) 在系統中至少保留一個小的分區, 以避免因為運行小作業而被迫分配打分去的發生d) 為具體管理各個分區,并建立一個“分區分配表”, 其中包括每個分區的起始位置大小及狀態c. 特點a) 它是最簡單的, 具有“多道”色彩的存儲管理方案,提高資源利用率b) 當把一個分區分配給某個作業時, 該作業的程序將一次性的全部裝入到分配給他的連續分區里c) 靜態重定位,在分區內的程序不能隨意移動d. 缺點a) 進入分

18、區的作業尺寸不見得與分區的長度相吻合,勢必產生內部碎片,引起資源的浪費b) 如果到達作業的尺寸比任何一個分區的長度都大,它就無法運行3) 可變分區存儲管理:分區的邊界劃分隨作業的需求可變,分區的數目隨著進入作業的多少可變,消滅了內部碎片(可能會產生內部碎片)。外部碎片是指無法分配給用戶使用的存儲區a. 基本思想: 在作業要求裝入內存儲器時, 如果當時內存儲器中有足夠的存儲空間滿足該作業的需求, 就劃分出一個與作業相對地址空間同樣大小的分區,并分配給它參考 .資料.b. 要解決的問題a) 采用一種新的地址重定位技術, 動態地址重定位, 以便程序能夠在內存儲器中隨意移動,為空閑區的合并提供保證b)

19、 記住系統中各個分區的使用情況c) 給出分區分配算法c. 地址動態重定位過程(在程序執行時動態完成)a) 為實施地址動態重定位, 硬件要增加一個地址轉換機構, 這個機構一般由地址轉換線路和一個定位寄存器(基址寄存器)組成b) 地址的靜態重定位和動態重定位的比較i. 地址轉換時刻:靜態重定位是在程序運行之前完成地址轉換的,而動態重定位是在程序執行時完成ii. 誰來完成任務: 靜態重定位是由軟件完成地址轉換工作的, 而動態重定位則是由一套硬件提供的地址轉換機構來完成iii. 完成的形式:靜態重定位是在裝入時一次性集中地把程序指令中所有要轉換的地址加以轉換; 而動態重定位則是每執行一條執行時,就對其

20、地址加以轉換iv. 完成的結果:實施靜態重定位,原來的指令地址部分被修改了,而動態重定位只是按照所形成的地址去執行這條指令, 并不對指令本身做任何修改d. 空閑區的合并e. 分區的管理a) 表格法:一張已分配表,一張空閑表(分區號,分區大小,分區起始地址、狀態)b) 單鏈表法: 一個存放該分區的長度, 另一個存放它下一個空閑分區的起始地址c) 雙鏈表法:還存放上一個空閑區起始地址f. 空閑分區的分配算法a) 最先適應算法: 要求空閑分區鏈以地址遞增的次序鏈接 (對大作業不利)b) 最佳適應算法: 每次為作業分配內存時, 總是把能滿足要求, 又是最參考 .資料.小的空閑分區分配給作業,避免“大材

21、小用”按其容量c) 最壞適應算法: 挑選一個最大的空閑區, 從中分割一部分存儲空間給作者使用, 以至于存儲器中缺乏大的空閑分區, 照顧中小作業的需求d) 循環首次適應算法:從上次分配的位置之后開始查找g. 可變分區存儲管理的特點a) 作業一次性的全部裝入到一個連續的存儲分區中b) 分區是按照作業對存儲的需求劃分的,所以不會出現內部碎片c) 為了確保作業能夠在內存中移動, 要有硬件的支持, 實行指令地址的動態重定位h. 缺點:a) 仍然沒有解決小內存裕興大作業的問題, 只要作業的存儲需求大于系統提供的整個用戶區,該作業就無法投入運行b) 雖然避免了內部碎片, 但有可能出現極小的翻去暫時分配不出去

22、的情形,引起了外部碎片,c) 為了形成大的分區, 可變分區存儲管理通過移動程序來達到分區合并的目的, 然而程序的移動是很花費時間的,增加了系統在這方面的投入與開銷4)分頁式存儲管理:需要兩次訪問內存,目的是提高內存利用率a.分頁式儲存管理是將固定分區方法與動態重定位技術結合在一起,需要硬件支持基本思想: 首先把整個內存儲器劃分成大小相等的許多分區,每個分區稱為“一塊”b. 在分頁式存儲管理中,塊是存儲分配的單位a) 用戶作業仍然是相對于“ 0 ”進行編址,形成一個連續的相對地址空間b) 用戶程序相對地址空間中的每一個分區被稱為“頁” ,用戶相對地址空間中的每一個相對地址,都可以用(頁號, 頁內

23、位移) 這樣的數對來表示i.物理地址 =頁的大小 *頁號 +頁內位移參考 .資料.ii. 頁號 = 相對地址 / 塊尺寸iii. 頁內位移 =相對地址 %塊尺寸c. 頁與塊對應關系表稱為“頁表”a) 快速寄存器組單獨起名為“相聯寄存器”,簡稱“快表”b) 快表與頁表聯合工作, 先查找快表, 若無再查找頁表并把數據寫入快表c) (訪問頁表時間 + 訪問一次內存時間) * 命中率 + 訪問快表時間 *命中率 = 平均內存存取時間d) 頁面尺寸大多選在 512byte 到 64kb 之間d. 特點:a) 內存儲器實現被劃分成相等尺寸的塊,它是進行存儲分配的單元b) 用戶作業的相對地址空間按照塊的尺寸

24、劃分成頁, 這是在系統內部進行的,用戶感覺不到c) 相對地址空間中的頁可以進入內存中的任何一個空閑塊, 并且分頁式存儲管理實行的是動態重定位, 因此它打破了一個作業必須占據連續的存儲空間的限制, 作業在不連續的存儲區里, 也能夠得到正確的運行e. 缺點:a) 平均每一個作業要浪費半頁大小的存儲塊,會產生內部碎片b) 作業雖然可以不占據連續的存儲區, 但是每次仍然要求一次全部進入內存。因此,如果作業很大, 其存儲需求大于內存,仍然存在小內存不能運行大作業的問題5) 分段式存儲管理:a. 目的:方便用戶使用編程,存儲共享,存儲保護,動態增長,動態鏈接b. 要求用戶將自己的整個作業程序以多個相互獨立

25、的稱為“段” 的地址空間提交給系統,每個段都是一個從“ 0”開始的一維地址空間,長度不一,操作系統按照段長為作業分配內存空間c.段表:段號、段長、該段在內存的基址(起始地址)段號,段內位移a) 物理地址 = 段的起始地址 + 段內地址b) 邏輯地址 = 段號 + 段內地址參考 .資料.d. 分段與分頁的區別:a) 頁是信息的物理單位,段是信息的邏輯單位i. 分頁提高內存的利用率, 僅僅是系統管理上的需要, 用戶不可見。段是信息的邏輯單位,它通常包括的是一組意義相對完整的信息,分段段的目的主要在于能更好地滿足用戶的需要b) 頁的尺寸由系統決定,段的尺寸因段而異i. 段的長度取決于用戶編寫的程序,

26、 通常由編譯程序在對源程序進行編譯時根據信息的性質來劃分c) 頁的地址空間是一維的,段的地址空間是二維的i. 分頁:用戶必須通過鏈接編輯程序, 把各程序段鏈接成一個相對于 0 編址的線性空間,程序中是通過地址編號來確定空間中的位置的。因此用戶向系統提供的是一個一維的邏輯地址空間。ii.分段:用戶不把各程序段鏈接成一個相對于 0 進行編制的一維線性空間,各程序段之間是通過 段號,段內位移 進行訪問的。因此,用戶向系統提供的是一個二維的邏輯地址空間6) 段頁式存儲管理:(三次訪問內存)a. 基本原理: 分段和分頁原理的結合, 即先將用戶程序分成若干個段, 再把每個段分成若干個頁,并為每一個段賦予一

27、個段名。a) 作業地址空間結構:主程序段,子程序段,數據段b) 地址結構:段號,段內頁號,頁內地址b. 系統設置了位示圖、段表和頁表,記錄主存的使用情況和作業分配情況a) 邏輯地址 = 段號 + 頁號 + 頁內位置b) 塊號 *塊長 +頁內地址c. 虛擬存儲器: 是具有請求調入功能和置換功能, 能從邏輯上對內存容量加以擴充的一種存儲器系統,其邏輯容量由內存容量和外存容量之和所決定,其運行速度接近于內存速度。a) 特征:多次性、對換性、虛擬性、離散性d. 請求分頁式存儲管理(需要硬件支持)a) 是基于分頁式存儲管理的一種虛擬存儲器“請求分頁式” 是指當程序運行中需要某一頁時, 再把它從輔助存儲參

28、考 .資料.器里調入內存使用,解決了小內存與大作業的矛盾,但會產生內部碎片b) 缺頁中斷是指在指令執行期間, 若發現所要訪問的指令或數據不在內存時,便立即產生和處理缺頁中斷信號, 以便能及時將所缺之頁面調入內存e. 缺頁中斷與一般中斷的區別缺頁中斷率 =缺頁次數 / 頁面總數 a)缺頁中斷是在執行一條指令中間時產生的中斷,并立即去處理, 一般中斷則是一條指令執行完畢后,當發現有中斷請求時,才去響應和處理b) 缺頁中斷處理完成后, 仍返回到原指令去執行, 因為那條指令并未執行;而一般中斷則是到下一條指令去執行, 因為上一條指令已經執行完畢了f. 影響缺頁中斷次數的因素:a) 分配給作業的內存塊數

29、b) 頁面尺寸c) 程序的實現7) 頁面淘汰(置換)算法:頁面淘汰是由缺頁中斷引起的,但缺頁中斷不見得一定引起頁面淘汰a. 先進先出頁面淘汰(置換)算法(FIFO)淘汰最先進入內存的頁面(3 個內存塊都為空,3 次缺頁中斷)b.最近最久未用頁面淘汰(置換)算法(LRU)總是把最長時間未被訪問過的頁面淘汰出去(需要寄存器和棧)c.最近最少用頁面淘汰(置換)算法(LFU)總是把當前使用的最少的頁面淘汰出去為每個內存中的頁面設置一個計數器(移位寄存器)加 1d. 最優(最佳)頁面淘汰(置換)算法(OPT)把以后不再使用的或最長時間內不會用到的頁面淘汰出去(理論上, 不會實現)注:對于 FIFO 頁面

30、淘汰算法,有時增加分配給作業的可用內存塊數,它的缺頁次數反而上升,通常稱為異常現象參考 .資料.第四章設備管理1“設備”泛指計算機系統中的各種外部設備,外設(即主機以外的其他所有設備)在眾多的I/O 設備中, 并不是所有的設備都是可以共享的,可以借助于磁盤,把只能獨享的設備變為共享,這就是所謂的“虛擬設備”SPOOLing技術 2設備是指計算機中用以在機器之間進行傳送和接收信息,完成用戶輸入/ 輸出( I/O )操作的那些部件。比如磁盤、磁帶、打印機、顯示器、鼠標、鍵盤3計算機 I/O 系統的組織結構:( 1)底層是具體的設備和硬件接口( 2)中間是系統軟件(與設備相關軟件、與設備無關軟件)(

31、 3)用戶程序4I/O 設備一般是由執行I/O 操作的機械部分和執行控制I/O 的電子部件組成( 1)執行 I/O 操作的機械部分就是一般的I/O 設備( 2)執行控制 I/O 的電子部件稱為設備控制器或適配器 為了能夠使 CPU 設備控制器中的各個寄存器進行通信, 通常采用“單獨的 I/O 空間”和“內存映射 I/O ”兩種方法 設備控制器是 CPU 與外圍設備之間的接口, 是一個可編址設備, 每一個地址對應一個設備功能:接收和識別命令數據交換標識和報告設備的狀態地址識別數據緩沖區差錯控制組成:設備控制器與處理機(CPU )的接口設備控制器與設備的接口I/O 邏輯:用于實現對設備的控制5設備

32、驅動程序:參考 .資料.6設備處理方式:( 1)為每一類設備設置一個進程,專門用于執行這類設備的I/O 操作( 2)在整個系統中設置一個I/O 進程,專門用于執行系統中所有各類設備的I/O 操作( 3)不設置專門的設備處理進程,而只為各類設置相應的設備驅動程序,供用戶或系統進程調用7設備驅動程序的處理過程( 1)將抽象要求轉換為具體要求( 2)對服務請求進行校驗,即檢查I/O 請求的合法性( 3)檢查設備的狀態( 4)傳送必要的參數( 5)啟動 I/O 設備( 6)工作方式的設置I/O 接口程序:是操作系統中與設備無關的軟件,它從上層接收用戶對設備提出的I/O 請求,然后負責吧I/O 請求轉變

33、成所需要的I/O 命令,調用具體的設備驅動程序去執行系統都是用主設備號和次設備號組成“邏輯設備名”操作系統提供的設備無關性的優點:方便用戶提高設備的利用率8計算機設備的分類( 1)基于設備的從屬關系a. 系統設備(鍵盤、顯示器、打印機、磁盤驅動)b. 用戶設備( 2)基于設備的分配特性a. 獨享設備(打印機)b. 共享設備c. 虛擬設備( SPOOLing 技術)( 3)基于設備的工作特性a. 輸入 / 輸出設備(字符設備)參考 .資料.b.存儲設備(塊設備)磁盤、磁帶( 4)按信息交換的單位a. 塊設備:用于存儲信息,屬于結構設備。磁盤、磁帶(以塊為單位傳送信息)b. 字符設備:以單個字符為

34、單位來傳送信息。鍵盤9設備管理的目標a. 提高外部設備的利用率b. 為用戶提供便利、統一的使用界面10設備管理的功能a. 提供一組 I/O 命令b. 進行設備的分配和回收c. 對緩沖區進行管理d. 實現真正的 I/O 操作11輸入輸出管理步驟( 1)用戶在程序中使用系統提供的輸入/ 輸出命令發出 I/O 請求( 2)輸入輸出管理程序接受這個請求( 3)“設備驅動程序”來具體完成所要求的的I/O 操作( 4)實現設備中斷處理程序來處理這個請求設備的輸入輸出管理程序由3 塊內容組成: 接受用戶的I/O 請求,組織管理輸入輸出進行,輸入輸出的善后處理設備控制:1)設備控制塊DCB 中存放的是一臺具體

35、設備的有關信息,找到一個設備的DCB ,就得到了該設備的特性,各種參數,使用情況等,所以DCB 是設備管理中最重要的一條數據結構2) 獨享設備中具有排他性,只能采取“靜態分配”的策略a. 靜態分配: 用戶作業開始之前, 由系統一次分配給該作業所需的設備, 控制器和通道,不會發生死鎖b. 動態分配:在進程執行過程中進行的設備分配,可能造成死鎖對獨享設備采用的分配算法:先來先服務優先級高者先服務參考 .資料.3) 共享磁盤的調度磁盤是一種典型的共享存儲設備, 允許多個作業進程同時使用, 而不是讓一個作業在整個運行期間獨占。 “同時使用” 是指當一個作業進程暫時不用時, 其他作業進程就可以使用。每一

36、個時刻只有一個作業用4) 調度算法a. “先來先服務”調度算法(并不理想)(移臂調度,減少查找時間)以 I/O 請求到達的先后次序作為磁盤調度的順序b. “最短查找時間”調度算法把距離磁頭當前位置最近的I/O 請求作為下一次調度的對象c. “電梯”調度算法( SCAN )總是沿著此案移動臂的移動方向選擇距離磁頭當前位置最近的I/O 請求,作為下一次調度的對象d.“單向掃描”調度算法(循環掃描CSCAN )總是從0 號柱面開始往里移動移動臂,遇到有I/O 請求就進行處理,直到到達最后一個請求柱面,然后移動臂立即帶動磁頭不做任何服務地快速返回到0號柱面,開始下一次掃描對 I/O 設備的控制方式(數

37、據傳輸方式)1) 程序循環測試方式(程序查詢式)是指用戶進程使用 start 指令啟動設備后,不斷地執行test 指令,去測試所啟動設備的狀態寄存器。只有在狀態寄存器出現了所需要的狀態后,才停止測試工作,完成輸入/ 輸出。數據寄存器:用來存放傳輸的數據狀態寄存器:用來記錄設備當前所處狀態2) 中斷方式所謂“中斷” 是一種使 CPU 暫時中止正在執行的程序而轉去處理特殊時間的操作。引起中斷的時間稱為中斷源。程序中產生的中斷,由 CPU 的某些錯誤結果(如,計算機溢出)產生的中斷稱為“內中斷”,由外部設備控制器引起的中斷稱為“外中斷”3) 直接存儲器存取方式( DMA 方式)參考 .資料.特點:能

38、使I/O 設備直接和內存儲器進行成批數據的快速傳輸。(單位:塊數據)DMA 控制器包括四個寄存器:數據寄存器,狀態寄存器,地址寄存器,字節計數器DMA 控制器的組成:主機與DMA 控制器的接口;DMA 控制器與塊設備的接口;I/O 控制邏輯4) 通道方式通道方式能夠使 CPU 徹底從 I/O 中解放出來。 CPU 進行善后處理和啟動。通道是一個獨立于CPU 的,專門用來管理輸入/ 輸出操作的處理機。通道是通過執行通道程序并與設備控制器共同實現對I/O 設備的控制的。它規定了設備應該執行的各種操作的順序。由一系列通道指令所構成,CPU 對 I/O請求只去做啟動和善后處理工作,輸入/ 輸出的管理以

39、及數據傳輸等事宜,全部由通道獨立完成。緩沖:1) 原因:a. 緩和 CPU 與 I/O 設備間速度不匹配的矛盾b. 減少對 CPU 的中斷頻率,放寬對 CPU 中斷響應時間的限制c. 解決數據粒度不匹配的問題d. 提高 CPU 和 I/O 設備之間的并行性2) 緩沖的實現a. 采用專門的硬件寄存器,比如設備控制器里的數據寄存器,“硬件緩沖”b.在內存儲器中開辟出n 個單元,作為專用的I/O 緩沖區,以便存放輸入/ 輸出的數據,這種緩沖區就是“軟件緩沖”c. 根據緩沖區的個數:單緩沖區、雙緩沖區、多緩沖區、緩沖池3) 虛擬設備a. 通過多道程序技術可將一臺物理CPU 虛擬為多臺邏輯 CPU ,需

40、要硬件的支持。作為后援的硬盤(大容量),具有設備與CPU 并行工作的能力4)SPOOLing技術參考 .資料.a.在主機的直接控制下,實現以前的脫機輸入/ 輸出功能,此時的外圍操作與CPU 對數據的處理同時進行,我們把這種在聯機情況下實現的同時外圍操作的技術稱為SPOOLing技術,或假脫機技術b.SPOOLing技術是對脫機輸入/ 輸出系統的模擬。SPOOLing系統建立在通道技術和多道程序技術的基礎上,以高速隨機外存 (通常為磁盤) 為后援存儲器5)設備無關性:應用程序中所用的設備,不局限于使用某個具體的物理設備。為每個設備所配置的設備驅動程序是與硬件緊密相關的軟件。為了實現設備獨立性,必

41、須再在設備驅動程序上設置一層軟件,稱為與設備無關的I/O 軟件或設備獨立性軟件6)操作系統中實現虛擬設備的軟件功能模塊由3 部分組成a. 預輸入程序b. 緩輸出程序c. 井管理程序7) SPOOLing 系統由四部分組成a. 輸入井和輸出井在磁盤上開辟出來的兩個存儲區域,輸入數據,輸出數據b. 輸入緩沖區和輸出緩沖區在內存中開辟的兩個緩沖區c. 輸入進程和輸出進程模擬外圍控制機d. 井管理程序特點:提高了 I/O 的速度將獨占設備改造為共享設備實現了虛擬設備的功能參考 .資料.第五章文件管理1) 目標:提高外存儲空間的利用率主要任務: 對用戶文件和系統文件進行管理,方便用戶使用, 并保證文件的

42、安全性文件存儲設備是以塊為單位進行管理的2)所謂“文件” 是指具有完整邏輯意義的一組相關信息的集合,它是在磁盤上保存信息,而且能方便以后讀取的方法, 文件用符號名加以標識, 這個符號名就被稱為 “文件名”3)文件是指由創建者所定義的, 具有文件名的一組相關元素的集合,可分為有結構文件和無結構文件兩種。 在有結構的文件中, 文件由若干個相關記錄組成而無結構文件則被看成是一個字符流。 文件在文件系統中是一個最大的數據單位,它描述了對象集文件屬性:文件類型、文件長度、文件的物理位置、文件的建立時間(最后一次的修改時間)4) 文件名: 在不同的系統之間, 對文件名的規定是不同的。 一個文件名是在創建該

43、文件時由用戶給出的,操作系統將向用戶提供組成文件名的命名規則5) 很多操作系統采用句點 .隔開成兩部分的文件名形式,句點之前的部分稱為文件名,句點后面的部分稱為文件的“擴展名”。又稱后綴名,用于指示文件的類型.bak備份文件.basABSIC 源程序.bin 可執行的二進制文件.cC 源程序.dat 數據文件.doc文檔文件.hlp幫助文件.obj 目標文件.pasPascal 文件.txt一般文本文件.tmp臨時文件1) 文件被存在大容量的輔助存儲器 (外存) 中,當用戶需要使用時,就通過文件名把相應的文件讀到內存2)“文件系統” 是指操作系統中與文件管理有關的那部分軟件,被管理的文件, 以

44、及管理文件所需要的數據結構(目錄、索引表)的總體3) 對文件的分類a. 按文件的性質和用途:系統文件、用戶文件、庫文件b. 按文件中數據的形式:源文件、目標文件、可執行文件c. 按存取控制屬性分類:只執行文件、只讀文件、讀寫文件參考 .資料.d. 按文件的保護性質:只讀文件、讀寫文件、可執行文件、不保護文件e. 按文件的保護期限:臨時文件、檔案文件、永久文件f. 按文件的存取方式:順序存取文件、隨機存取文件g. 按設備的類型:磁盤文件、磁帶文件、打印文件h. 按文件的物理結構:連續文件、鏈接文件、索引文件i. 按文件的內容(組織形式和處理方式):普通文件、目錄文件、特殊文件j. 按文件的邏輯結

45、構:流式文件、記錄式文件4) 文件的邏輯結構a. 從用戶使用的角度出發組織的文件, 被稱為是文件的邏輯結構, 一類是有結構的文件,這是指由一個以上的記錄構成的文件,故又稱為記錄式文件b. 從文件的組織方式來分,可以分為順序文件,索引文件,索引順序文件c. UNIX 操作系統總是以流失作為文件的邏輯結構5) 文件的物理結構a. 文件按不同的組織方式在輔存上存放, 就會得到不同的物理結構, 文件的物理結構有時也稱為文件的“存儲結構”b. 文件在輔存(外存)上可以有 3 種不同的存放方式:連續存放、鏈接塊存放以及索引表存放c. 對應地文件就有 3 種物理結構,分別叫做順序結構,鏈接結構和索引結構,也

46、叫作連續文件,串聯文件,索引文件6) 存放方式a. 連續存放連續文件不足之處:必須預先知道文件的最大長度會造成磁盤碎片b. 鏈接塊存放串聯文件不會因為磁盤碎片而浪費存儲空間,但使用的指針要占去一些字節, 每個磁盤塊存儲數據的字節數不再是2 的冪,從而降低了系統的運行效率參考 .資料.c. 索引表存放索引文件7) 文件的存取a. 順序存取b. 隨機存取8) 磁盤空間的管理a. 磁盤是以塊為單位進行分配的b. 磁盤與內存之間是以磁盤塊為信息傳輸的單位c. 選定了塊的大小, 還要對它們進行管理, 即要記住哪些已經分配, 哪些仍然空閑。d. 常采用的磁盤存儲空間管理方案有:位示圖,空閑塊表,空閑塊鏈9

47、) 文件的操作:創建文件、刪除文件、打開文件、關閉文件、讀文件、寫文件10) 系統是通過文件的目錄來管理文件的文件目錄也是一種數據結構,用于標識系統中的文件及其物理地址11) 為每一個文件開辟一個存儲區,在它的里面記錄著該文件的有關信息。我們把該存儲區稱為“文件控制塊”( FCB ) 也是一個目錄項隨系統的不同,一個文件的 FCB 中所包含的內容及大小也不盡相同包含內容:文件名稱文件在輔存中存放的物理位置文件的邏輯結構文件的物理結構文件的存取控制信息文件管理信息12) 目錄的層次結構如果把所有文件的 FCB 都登記在一個文件目錄中,這樣由文件名查文件目錄項,直接就能夠找到所需要的文件,那么就成這種文件目錄為一級目錄結構a) 優點:i. 簡單,能實現目錄管理中最基本的功能按名存取b) 缺點:參考 .資料.i. 查找速度慢,不允許重名,不便于實現文件共享二級目錄結構:由“主目錄”與“用戶目錄”二級構成,在

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論