12程序同步的概念

2021-10-14 09:27:06 字數 666 閱讀 3398

程序同步的基本概念:多道程式下,程序是併發的,為了協調程序之間的相互制約關係,引入了程序同步的概念。

1、 臨界資源:一次僅允許乙個程序使用的資源稱為臨界資源。如印表機,一些變數、資料

臨界資源的訪問,必須互斥進行,每個程序中,訪問臨界資源的那段**稱為臨界區

為保證臨界資源的正確使用,可以把臨界資源的訪問過程分為四個部分

1.1進入區:為了進入臨界區使用臨界資源,在進入區要檢查可否進入臨界區,如果可以進入臨界區,則應設定正在訪問臨界區的標誌,以阻止其他程序同時進入臨界區。

1.2臨界區:程序中訪問臨界資源的那段**,又稱臨界段

1.3退出區:將正在訪問臨界區的標誌清除

1.4剩餘區:**中的其他部分

2、同步:直接制約關係。指為完成某種任務而建立的兩個或多個程序,這些程序因為需要在某些位置上協調它們的工作次序而等待、傳遞資訊所產生的制約關係。

3、 互斥:間接制約關係。當乙個程序進入臨界區使用臨界資源時,另乙個程序必須等待,當占用臨界資源的程序退出臨界區後,另乙個程序才允許去訪問此臨界資源

程序同步(一) 程序同步相關概念

在os中引入程序後,雖然提高了資源的利用率和系統吞吐量,但是由於程序的非同步性將會給系統造成混亂,尤其是他們在爭搶臨界資源時。當多個程序去爭用共享變數 鍊錶時,可能導致資料處理出錯。程序同步的任務就是對多個相關程序在執行次序上進行協調,使得併發執行的程序之間能有效地共享資源和相互合作,從而使程式的執...

程序同步及非同步的概念

所謂同步,就是在發出乙個功能呼叫時,在沒有得到結果之前,該呼叫就不返回。也就是必須一件一件事做,等前一件做完了才能做下一件事.就像早上起床後,先洗涮,然後才能吃飯,不能在洗涮沒有完成時,就開始吃飯.按照這個定義,其實絕大多數函式都是同步呼叫 例如sin,isdigit等 但是一般而言,我們在說同步 ...

Linux程序同步

linux程序同步 概述 程序間通訊 ipc 方法主要有以下幾種 管道 fifo 共享記憶體 訊息佇列 訊號量 1.管道中還有命名管道和非命名管道 即匿名管道 之分,非命名管道 即匿名管道 只能用於父子程序通訊,命名管道可用於非父子程序,命名管道就是fifo,管道是先進先出的通訊方式 2.訊息佇列是...