操作系统之进程管理:8、进程互斥的软件实现方法(单标志、双标志、Peterson)
生活随笔
收集整理的這篇文章主要介紹了
操作系统之进程管理:8、进程互斥的软件实现方法(单标志、双标志、Peterson)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
8、進程互斥的軟件實現(xiàn)方法
- 思維導(dǎo)圖
- 引言
- 1、單標志法
- 2、雙標志法
- 雙標志先
- 雙標志后檢查法
- 3、Peterson算法
思維導(dǎo)圖
引言
上圖中,進程AB同時訪問打印機資源,這樣就可能將AB的打印內(nèi)容混在一起了,所以我們需要通過進程互斥來對資源進行訪問控制
1、單標志法
我們用一個例子來說明:
小渣問老渣,你現(xiàn)在想用馬桶嗎?老渣說我現(xiàn)在不想用。小渣說:那我用了,下次讓你先用。到了下次,小渣說你先用馬桶,我是有原則的人,老渣卻說,我不想用。這樣小渣就要一直等。這樣馬桶就空下來了。違反了空閑讓進的原則。只能輪詢使用。
2、雙標志法
雙標志先
來看這樣一個問題:
小渣問老渣你想用馬桶嗎?小渣一直在等老渣的回復(fù)。老渣突然問小渣你想用馬桶嗎?此時小渣說我想用,老渣也說我想用,然后倆個人一起走向了一個馬桶。所以這種情況違反了忙則等待的原則。
雙標志后檢查法
來看這樣一個問題:
當小渣想用馬桶時,老渣同樣也想要用馬桶;然后小渣問老渣你想用嗎?想用那你可以先用我等著。然后老渣又問小渣:你想用嗎?你想用你先用我等著。就這樣,倆個人都在等著,誰也不用。對于機器而言,倆個進程都不敢訪問臨界區(qū)(因為對方想用),這樣就會進入無限的等待。這樣雖然解決了忙則等待的問題,但違反了空閑讓進和有限等待的原則。進而產(chǎn)生饑餓現(xiàn)象。
3、Peterson算法
來看例子:
小渣對老渣說:我想用馬桶但是我可以讓你先用。
老渣對小渣說:我想用馬桶但是我也可以讓你先用。
小渣說:那我不客氣了。
總結(jié)
以上是生活随笔為你收集整理的操作系统之进程管理:8、进程互斥的软件实现方法(单标志、双标志、Peterson)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: (王道408考研操作系统)第五章输入/输
- 下一篇: (软件工程复习核心重点)第五章详细设计-