操作系統並行/併發以及共享的區別

併發

併發指的是兩個或者多個事件在同一時間間隔中發生,例如一個單核CPU需要執行兩個作業,爲了保證每個事件都可以被CPU調度執行,必須要引入併發的概念
在這裏插入圖片描述

並行

並行指的是兩個或者多個時間在同一時刻發生,例如一臺擁有N核CPU的需要同時完成N個作業的處理,此時可以將每一道作業交付給一個CPU進行處理,這樣極大的縮短了程序被執行的時間,此時就引入了並行的概念
在這裏插入圖片描述
這裏需要注意的是,當需要處理的作業數大於CPU的總核心數時並行與併發同時存在這樣做極大的縮短了處理所需要的時間

共享

在操作系統中,對資源的共享稱爲資源的複用,指的是系統中的資源可以供內存中多道併發的執行的進程共同使用,由於系統中的總資源遠遠少於多道程序需要的總和,此時就會形成對共享資源的爭奪,爲了妥善管理系統資源,需要引入資源共享的方式妥善管理進程

  • 互斥資源共享
    系統中的某些資源在一段時間內,只可以允許一個進程使用,這些資源被稱作臨界資源,例如,進程A需要訪問某個特定的資源,如果此時資源空閒,那麼系統將該資源的使用權交給進程A,只有等進程A訪問完成釋放資源之後,其他資源才被允許使用該資源。
  • 同時訪問方式
    如果系統中的一類資源被允許同時多個進程訪問,進程之間並不會對資源產生爭奪,宏觀意義上的同時指的是同時刻訪問該資源,微觀意義上該資源被進行交替的訪問
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章