程序的互斥與同步

2021-10-05 11:49:59 字數 871 閱讀 4342

包含mutual exclusion and synchronization

互斥與同步

互斥:

決定程序之間誰先進行

是指某一資源同時只允許乙個訪問者對其進行訪問

同步

決定程序之間協調進行

在互斥的基礎上(大多數情況),通過其它機制實現訪問者對資源的有序訪問。

是具有一定機制的,更加複雜的互斥

deadlock and starvation

死鎖與飢餓

併發需解決的問題

併發的難題

作業系統需關心的是:

程序間的相互作用

臨界區(critical sections)

訪問臨界資源的**段成為臨界區

一段時間內只能由乙個程序使用

臨界資源

臨界區對應的資源

必須互斥使用的資源

互斥原理

tips

寫與寫,寫與讀必須互斥

讀與讀不需要

避免髒資料

互斥的要求

空閒讓進

忙則等待

有限等待

讓權等待

(不能既佔著乙個臨界資源又等待另乙個即腳踏兩隻船)

互斥的方法

程序互斥與同步

1.解釋併發與並行,並說明兩者關係。併發的實質是乙個物理cpu 也可以多個物理cpu 在若干道程式之間多路復用,併發性是對有限物理資源強制行使多使用者共享以提高效率。並行性指兩個或兩個以上事件或活動在同一時刻發生。在多道程式環境下,並行性使多個程式同一時刻可在不同cpu上同時執行。併發與並行是兩個既...

程序互斥與同步

1 併發與並行是兩個既相似而又不相同的概念 併發性,又稱共行性,是指能處理多個同時性活動的能力 並行是指同時發生的兩個併發事件,具有併發的含義,而併發則不一定並行,也亦是說併發事件之間不一定要同一時刻發生。兩者區別 乙個是交替執行,乙個是同時執行.2 程序之間存在同步和互斥兩種關係 同步是因合作程序...

程序互斥與同步

1.解釋併發與並行,並說明兩者關係。並行 是指兩個或者多個事件在同一時刻發生 併發 是指兩個或多個事件在同一時間間隔發生。並行是併發的特例,併發是並行的擴充套件。2.程序間有哪幾種關係?分別要採取什麼策略?程序間有競爭 協作兩種關係 競爭採用的程序互斥的策略 協作採用的程序同步的策略 3.為什麼說程...