操作系统之进程管理:7、进程同步、进程互斥
7、進(jìn)程同步、進(jìn)程互斥
- 思維導(dǎo)圖
- 1、進(jìn)程同步
- 異步性:
- 什么是進(jìn)程同步?
- 2、進(jìn)程互斥
- 什么是進(jìn)程互斥?
- 臨界資源的互斥訪問(wèn)步驟?
- 進(jìn)程的原則
思維導(dǎo)圖
1、進(jìn)程同步
異步性:
進(jìn)程的執(zhí)行各自獨(dú)立、不可預(yù)知,所以:
假如現(xiàn)在有四條指令(如圖),由于進(jìn)程執(zhí)行的異步性,所以可能會(huì)產(chǎn)生倆種方案(如圖);現(xiàn)在我們想要的結(jié)果是(如圖),那么,就需要一定的機(jī)制來(lái)確保他選擇第一個(gè)方案而不選擇第二個(gè)方案;為解決這個(gè)問(wèn)題,此時(shí)就需要用到進(jìn)程同步機(jī)制。
什么是進(jìn)程同步?
如上圖,在我們用管道進(jìn)行數(shù)據(jù)讀寫時(shí),需要先在管道中寫入數(shù)據(jù),然后才能讀出數(shù)據(jù),這樣倆個(gè)相互合作的進(jìn)程共同完成數(shù)據(jù)的讀寫操作,但是他們需要有一定的順序,例如,只有你寫入管道數(shù)據(jù)后你才可以讀出數(shù)據(jù);而進(jìn)程同步就是為了解決讀和寫的工作次序問(wèn)題而產(chǎn)生的。
2、進(jìn)程互斥
什么是進(jìn)程互斥?
現(xiàn)在這樣一個(gè)情況;就是你在訪問(wèn)打印機(jī)資源時(shí),當(dāng)前一個(gè)人正在使用打印機(jī)時(shí),你就必須得等到他打印完成之后你才可以接著打印;這樣的情況說(shuō)明,你和前一個(gè)打印的人不可以同時(shí)使用打印機(jī)這個(gè)資源;那將倆個(gè)人當(dāng)作倆個(gè)進(jìn)程時(shí),說(shuō)明倆個(gè)進(jìn)程不可以同時(shí)訪問(wèn)打印機(jī)資源,我們稱這種現(xiàn)象為進(jìn)程互斥。打印機(jī)資源稱為臨界資源。只有進(jìn)入臨界區(qū)的進(jìn)程才有資格訪問(wèn)臨界資源。
臨界資源的互斥訪問(wèn)步驟?
問(wèn)題:當(dāng)進(jìn)程暫時(shí)無(wú)法進(jìn)入臨界區(qū)時(shí),該進(jìn)程是否要一直占用CPU呢?這就需要了解一下進(jìn)程互斥的原則了
進(jìn)程的原則
那我們又要如何實(shí)現(xiàn)這種進(jìn)程互斥呢?
見(jiàn)下篇:
8、進(jìn)程互斥的軟件實(shí)現(xiàn)方法
9、進(jìn)程互斥的硬件實(shí)現(xiàn)方法
總結(jié)
以上是生活随笔為你收集整理的操作系统之进程管理:7、进程同步、进程互斥的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 操作系统之I/O管理:2、SPOOLin
- 下一篇: (数据库系统概论|王珊)第一章绪论-第三