四大特徵
併發
共享
虛擬
異步
併發和共享是兩個最基本的特徵,二者互為存在條件
併發
併發:指兩個或多個事件在同一時間間隔內發生。這些事件宏觀上是同時發生的,但微觀上是交替發生的。
操作系統的併發性指計算機系統中同時存在着多個運行着的程序。
共享
共享即資源共享,是指系統中的資源可供內存中多個併發執行的進程共同使用。
有兩種資源共享方式
- 互斥共享方式
系統中的某些資源,雖然可以提供給多個進程使用,但一個時間端內只允許一個進程訪問該資源。
例如:使用QQ和微信視頻通話,同意時間段內攝像頭只能分配給其中一個進程。 - 同時共享方式
系統中的某些資源,允許一個時間段內有多個進程“同時”對它們進行訪問
所謂的“同時”往往是宏觀上的,而在微觀上,這些進程可能是交替地對該資源進行訪問的(即分時共享)
例如:同時使用QQ和微信發送文件(並非同一個文件),宏觀上看兩個進程在同時訪問硬盤資源。
併發和共享的關係
如果失去併發性,則系統中只有一個程序正在運行,則共享性失去存在的意義;如果失去共享性,則兩個進程不能同時訪問系統資源,進而也就沒有併發可言。
虛擬
虛擬是指把一個物理上的實體變為若干個邏輯上的對應物。物理實體(前者)是實際存在的,而邏輯上對應物(後者)是用户感受到的。
- 空分複用技術
- 時分複用技術
如果失去了併發性,則一個時間段內系統中只需運行一道程序,那麼就失去了實現虛擬性的意義了。因此,沒有併發性,就談不上虛擬性。
異步
異步是指,在多道程序環境下,允許多個程序併發執行,但由於資源有限,進程的執行不是一貫到底的,而是走走停停,以不可預知的速度向前推進,這就是進程的異步性。
如果失去了併發性,則系統只能串行地處理各個進程,每個進程的執行會一貫到底。所以只有擁有併發性,才有可能導致異步性。