作業系統概論六

2021-06-16 18:16:37 字數 3168 閱讀 8236

1、目前使用的計算機基本上是馮·諾依曼(von neumann

)式的結構,其基本特點是處理器按指令位址的指示順序執行指令,這樣的處理器稱為順序處理器。

2、程序的順序性是指程序在順序處理器上的執行是嚴格按序的,即按照程式規定的操作順序,只有在前乙個操作結束後才能開始後繼操作。

3、當乙個程序獨佔處理器順序執行時,它具有兩個特性:(1

)封閉性;(

2)可再現性。

4、程序的併發性:在乙個程序的工作沒有全部完成之前,另乙個程序就可以開始工作,我們說這些程序是可同時執行的,或稱它們具有併發性,並且把可同時執行的程序稱為併發程序。程序的併發執行會破壞「封閉性」和「可再現性」。

5、併發程序的執行速度受自身原因以及程序排程策略的影響。

6、併發程序交替使用共享資源會出現與時間有關的錯誤。

7、我們把併發程序中與共享變數有關的程式段稱為臨界區。

8、相關臨界區是指併發程序中涉及到相同變數的那些臨界區。

(1)一次最多乙個程序能夠進入臨界區。當有程序在臨界區執行時,其他想進入臨界區執行的程序必須等待;

(2)不能讓乙個程序無限制地在臨界區執行,即任何乙個進入臨界區的程序必須在有限的時間內退出臨界區;

(3)不能強迫乙個程序無限制地等待進入它的臨界區,即有程序退出臨界區時應讓乙個等待進入臨界區的程序進入它的臨界區執行。

10、pv操作由

p操作和

v操作組成。它們是兩個不可中斷的過程,這種不可中斷的過程稱為原語。因此,

p操作和

v操作也可稱為

p操作原語和

v操作原語,簡稱

pv操作。

11、pv操作是對訊號量進行操作,它們的定義如下:

(1)p操作p(

s):將訊號量s減去

1,若結果小於

0,則把呼叫p(

s)的程序置成等待訊號量

s的狀態。

(2)v操作v(

s):將訊號量s加

1,若結果不大於

0,則釋放乙個等待訊號量

s的程序。

12、程序的互斥是指當有若干個程序都要使用某一共享資源時,任何時刻最多隻允許乙個程序去使用該資源,其他要使用它的程序必須等待,直到該資源的占用者釋放了該資源。

13、pv操作是一種可實現程序互斥地進入相關臨界區的工具,但只有合理地使用該工具,才能既保持程序的併發性,又避免交叉使用共享資源造成的錯誤。在解決具體問題時,應驗證是否符合對相關臨界區的管理要求。粗心的使用

pv操作可能會違反對臨界區的管理要求。

14、程序的同步是指在併發程序之間存在的一種制約關係,乙個程序的執行依賴另乙個程序的訊息,當乙個程序沒有得到另乙個程序的訊息時應等待,直到訊息到達才被喚醒。

15、程序的互斥實際上是程序同步的一種特殊情況。實現程序互斥時用p

操作測試是否可以使用共享資源,這相當於測試「資源已可使用」的訊息是否到達;用

v操作歸還共享資源,這相當於傳送了「共享資源已空閒」的訊息。所以,經常把程序的互斥與程序的同步統稱為程序的同步,把用來解決程序互斥與程序同步的機制(如

pv操作)統稱為同步機制。

16、程序的互斥與程序的同步是有差別的,程序的互斥是程序之間競爭共享資源使用權;而程序同步的情況就不同了,涉及共享資源的併發程序之間有一種必然的依賴關係。所以,用pv

操作管理共同資源時,一定要正確區分互斥與同步。最關鍵的是確切地定義訊號量,以及合理的呼叫各訊號量上的

p操作和

v操作。

17、我們把通過專門的通訊機制實現程序間交換大量資訊的通訊方式稱為程序通訊。目前常用的高階通訊方式有信箱通訊、訊息緩衝通訊、管道通訊等。

18、乙個程序採用信箱方式進行通訊時,應先組織好一封信,信件的內容應包括:傳送者名(程序名),資訊(或資訊存放的位址和長度),等/

不等回信,回信存放位址。

19、若干個程序都可向同一程序傳送信件。接收信件的程序可以設立乙個信箱。信箱的大小決定了信箱中可以容納的信件數,每個信箱由「信箱說明」和「信箱體」兩部分組成。

20、信箱通訊需要用到兩個通訊原語:傳送原語(send

)和接收原語(

receive)。

21、使用信箱通訊時,為避免信件的丟失和錯誤地索取信件,通訊時應遵循如下規則:

(1)若傳送信件時信箱已滿,則應把傳送信件的程序置成「等信箱」狀態,直到信箱有空時才被釋放;

(2)若取信件時信箱中無信,則應把接收信件的程序置成「等信件」狀態,直到信箱中有信件時才被釋放。

22、若系統中存在一組程序(兩個或多個程序),它們中的每乙個程序都占用了某種資源而又都在等待該組程序中另乙個程序所占用的資源,這種等待永遠不能結束,則說系統出現了死鎖,或說這組程序進入了死鎖狀態。

23、形成死鎖的起因是系統提供的資源數比程序要求的資源數少,或者是若干個程序要求的資源總數大於系統能提供的資源數。這時,程序間就會出現競爭資源的現象,對程序競爭的資源如果管理或分配不當,就會引起死鎖。死鎖的出現與資源分配策略和併發執行的速度有關。pv

操作可實現程序的同步和共享資源的互斥使用,但不能排除死鎖。

24、系統產生死鎖的四個必要條件:(1

)互斥地使用資源;(

2)占有且等待資源;(

3)非搶奪式分配;(

4)迴圈等待資源。

25、防止死鎖的資源分配策略有:

(1)靜態分配資源:是指程序必須在開始執行前就申請自己所要的全部資源,僅當系統能滿足程序的全部資源申請要求且把資源分配給程序後,該程序才開始執行;

(2)按序分配資源:是指對系統中每乙個資源給乙個編號。規定任何乙個程序申請兩個以上資源時,總是先申請編號小的資源,再申請編號大的資源。

(3)剝奪式分配資源:是指當乙個程序申請資源得不到滿足時,可從另乙個程序那裡去剝奪。

26、如果作業系統能保證所有的程序在有限時間內得到需要的全部資源,則稱系統處於安全狀態,否則就說系統是不安全的。

27、死鎖的避免:古典的測試方法:銀行家演算法:該演算法規定,只有當系統現存的資源能夠滿足程序的最大需求量時,才把資源分配給該程序。

28、銀行家演算法是在保證至少有乙個程序能得到所需的全部資源的前提下進行資源分配的,避免了程序共享資源時可能發生的死鎖,但這種演算法必須不斷測試各個程序占用和申請資源的情況,需花費較多的時間。

29、死鎖的檢測:設定兩張**來記錄程序使用和等待資源的情況。「死鎖檢測」程式定時地檢測這兩張表。如果發現有迴圈等待資源的程序,則就有死鎖出現了。檢測到死鎖後,可採用搶奪某些程序占用的資源,或強迫程序結束,重新啟動作業系統等辦法來解除死鎖。

作業系統概論

作業系統 operation system,縮寫為os 是管理計算機系統資源 控制程式執行 改善人機介面和應用軟體提供支援的一種系統軟體。定義 把乙個程式在乙個資料集上的一次執行稱為乙個程序 process 程序是動態的。在現代作業系統中,把使用者的乙個計算問題或乙個應用問題作為乙個程序,把該程序中...

作業系統概論

作業系統的三個基本型別是 批處理作業系統 分時作業系統和實時作業系統。批處理作業系統的主要缺點是 缺少互動性允許多個使用者以互動方式使用計算機的作業系統稱為 允許多個使用者將多個作業提交給計算機集中處理的作業系統稱為 計算機系統能及時處理過程 控制資料並做出響應的作業系統稱為 分時作業系統 批處理作...

作業系統概論

計算機系統是能夠按照人的要求接收和儲存資訊,能對資訊進行處理並提供所需結果,其結果 輸出資訊 取決於所接受的資訊 輸入資訊 及相應的處理方法。1.學習過程 原先在學習計算機四級的開始中,邊學習過一部分相關的作業系統的知識,這次也算是一步簡單的複習吧。在本次學習過程中,了解了先前沒有看過的細節的知識部...