操作系统之进程管理:7、进程同步、进程互斥
生活随笔
收集整理的這篇文章主要介紹了
操作系统之进程管理:7、进程同步、进程互斥
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
7、進程同步、進程互斥
- 思維導圖
- 1、進程同步
- 異步性:
- 什么是進程同步?
- 2、進程互斥
- 什么是進程互斥?
- 臨界資源的互斥訪問步驟?
- 進程的原則
思維導圖
1、進程同步
異步性:
進程的執行各自獨立、不可預知,所以:
假如現在有四條指令(如圖),由于進程執行的異步性,所以可能會產生倆種方案(如圖);現在我們想要的結果是(如圖),那么,就需要一定的機制來確保他選擇第一個方案而不選擇第二個方案;為解決這個問題,此時就需要用到進程同步機制。
什么是進程同步?
如上圖,在我們用管道進行數據讀寫時,需要先在管道中寫入數據,然后才能讀出數據,這樣倆個相互合作的進程共同完成數據的讀寫操作,但是他們需要有一定的順序,例如,只有你寫入管道數據后你才可以讀出數據;而進程同步就是為了解決讀和寫的工作次序問題而產生的。
2、進程互斥
什么是進程互斥?
現在這樣一個情況;就是你在訪問打印機資源時,當前一個人正在使用打印機時,你就必須得等到他打印完成之后你才可以接著打印;這樣的情況說明,你和前一個打印的人不可以同時使用打印機這個資源;那將倆個人當作倆個進程時,說明倆個進程不可以同時訪問打印機資源,我們稱這種現象為進程互斥。打印機資源稱為臨界資源。只有進入臨界區的進程才有資格訪問臨界資源。
臨界資源的互斥訪問步驟?
問題:當進程暫時無法進入臨界區時,該進程是否要一直占用CPU呢?這就需要了解一下進程互斥的原則了
進程的原則
那我們又要如何實現這種進程互斥呢?
見下篇:
8、進程互斥的軟件實現方法
9、進程互斥的硬件實現方法
總結
以上是生活随笔為你收集整理的操作系统之进程管理:7、进程同步、进程互斥的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 操作系统之I/O管理:2、SPOOLin
- 下一篇: /var/lib/mlocate/mlo