作業系統原理 筆記 併發 共享及不確定性

2021-10-05 21:53:42 字數 488 閱讀 6957

目前廣泛使用著的計算機仍然是以順序計算為基礎的儲存程式式計算機。為了充分利用計算機系統的資源,一般採用多個同時性使用者分用的策略。以順序計算為基礎的計算機系統要完成並行處理的功能,必將導致順序計算與平行計算模型的矛盾,必須解決資源共享和多工併發執行的問題。以多道程式設計為基礎的作業系統具備的主要特徵就是併發與共享。另外,由於作業系統要隨時處理各種事件,所以它也具備不確定性。

併發由併發而產生的一些問題是:如何從乙個活動切換到另乙個活動;怎樣保護乙個活動使其免受另外一些活動的影響;以及如何實現互相依賴的活動之間的同步。

共享程式的併發執行,必然要求對資源的共享,而只有提供資源共享的可能才能使程式真正地併發執行。

不確定性

為了解決程式併發執行和資源共享引起的矛盾,作業系統必須解決如下幾個問題:

提出解決資源分配的策略

協調併發活動的關係

保證資料的一致性

實現資料的訪問控制

筆記 《作業系統精髓與設計原理》 4 併發

併發原理 訊號量管程 訊息生產者 消費者 讀者 寫者 死鎖的條件 互斥 乙個資源一次只能給乙個程序使用。其他程序不能訪問已分配給其他程序的資源。占有且等待 乙個程序等待其他程序時,繼續占有已經分配的資源。不可搶占 不能強行搶占程序已占有的資源。迴圈等待。1 3條件是死鎖存在的必要條件。加上條件4才是...

作業系統原理及應用

處理機管理 作業系統 死鎖的避免 安全狀態 允許程序動態申請資源,系統提供某種方法在分配資源前計算是否會死鎖,如果會就程序等待。系統中的所有程序按照某種次序分配資源,並且依次執行。如果存在這樣乙個安全的序列,則系統是安全的。死鎖的檢測一種是在有資源請求的時候進行檢測,但是次數過於頻繁,另一種是週期性...

linux作業系統原理及應用閱讀筆記

1.作業系統是覆蓋在裸機上的第一層軟體,1 它直接控制管理各種硬體資源 2 為開發者提供系統功能呼叫介面 2.作業系統的功能 1 提供作業控制級介面 聯機使用者介面,鍵盤字元命令,圖形操作介面 離線使用者介面 批處理 應用程式介面 庫函式 3.離線批處理 衛星機將作業輸出到磁帶,主機再從磁帶把內容讀...