15.匿名管道

1. 匿名管道的概念
本質:
  內核緩衝區
  是僞文件,不佔用磁盤空間,磁盤上不存在
特點:
  (1) 由讀端寫端兩部分組成,對應兩個文件描述符
  (2) 數據寫端流入,讀端流出
  (3) 操作管道的進程被銷燬之後,管道自動被釋放(內核自動操作),不需要手動釋放

  (4) 管道默認是阻塞的,讀和寫均默認阻塞。


2. 匿名管道的原理
(1) 內部的實現方式:隊列,而且是環形隊列
  特點:先進先出(一端入隊,另一端出隊,即只能從一端寫入,另一端讀出)

(2) 緩衝區大小:默認4k字節,大小會根據實際情況做適當調整


3. 匿名管道的侷限性
(1) 由於用隊列實現,故數據只能讀取一次,不能重讀讀取
(2) 半雙工,數據傳輸的方向是單向的
  單工:遙控器
  半雙工:對講機
  雙工:電話
(3) 只適用於有血緣關係的進程(父子進程,兄弟進程,爺孫進程,叔侄進程...)
發佈了119 篇原創文章 · 獲贊 12 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章