【学习笔记】第二章——进程的控制、通信
生活随笔
收集整理的這篇文章主要介紹了
【学习笔记】第二章——进程的控制、通信
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
文章目錄
- 一. 進程控制
- 如何實現(xiàn)進程控制
- 創(chuàng)建
- 終止
- 阻塞 & 喚醒
- 切換
- 總結(jié)
- 二. 進程間的通信
- 定義
- 1)共享存儲
- 2)管道通信
- 3)信息傳遞
- 總結(jié)
一. 進程控制
- def: 實現(xiàn)進程狀態(tài)轉(zhuǎn)換
如何實現(xiàn)進程控制
- 主要就是 PCB、阻塞\就緒隊列以及系統(tǒng)資源之間的改變
- 某兩個狀態(tài)之間,轉(zhuǎn)換的過程需要清楚
- 用原語實現(xiàn)進程控制:
- 關(guān)中斷指令 && 開中斷指令(核心態(tài)下的特權(quán)指令)
- 三要素:PCB、隊列、資源
創(chuàng)建
終止
阻塞 & 喚醒
切換
總結(jié)
二. 進程間的通信
定義
- 由于進程間相互獨立,因此一進程不能直接訪問其他進程。
- 但是進程間信息交換又是必須的,因此需要其他方法實現(xiàn)。
1)共享存儲
- 另外開出一個共享的存儲空間。
- 進程對于共享空間的訪問必須互斥
- 相對于基于數(shù)據(jù)結(jié)構(gòu)的共享,這種方法速度更快
2)管道通信
- 半雙工通信;需要通過兩個管道來實現(xiàn)全雙工通信。
- 進程需要互斥地訪問管道
- 寫滿才能讀,讀空才能寫。
- 寫滿則write()阻塞,讀空則read()阻塞
- 隨讀隨扔(感覺類似Java里容器類的 remove())
3)信息傳遞
- 原語:發(fā)送信息 & 接受信息
- 發(fā)送的信息要經(jīng)過格式化,類似計算機網(wǎng)絡(luò)中的各種報文
- 傳遞方式:
- 直接:掛進程的消息緩沖隊列上
- 間接:發(fā)到中間實體中,類似電子郵箱
總結(jié)
總結(jié)
以上是生活随笔為你收集整理的【学习笔记】第二章——进程的控制、通信的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【LeetCode笔记】560. 和为K
- 下一篇: java使用枚举做审核_JAVA—枚举