日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux进程全解12——lIPC机制之管道,SystemV IPC介绍

發布時間:2023/12/20 linux 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux进程全解12——lIPC机制之管道,SystemV IPC介绍 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

以下內容源于朱有鵬《物聯網大講堂》的課程學習整理,如有侵權,請告知刪除。


一、管道

1、管道(無名管道)

(1)管道通信的原理:內核維護的一塊內存,有讀端和寫端(管道是單向通信的);

(2)管道通信的方法:父進程創建管道后fork子進程,子進程繼承父進程的管道fd。

(3)管道通信的限制:只能在父子進程間通信、半雙工。

(4)管道通信的函數:pipe、write、read、close。

2、有名管道(fifo)

(1)有名管道的原理:實質也是內核維護的一塊內存,表現形式為一個有名字的文件。

(2)有名管道的使用方法:固定一個文件名,2個進程分別使用mkfifo創建fifo文件,然后分別open打開獲取到fd,然后一個讀一個寫。

(3)管道通信限制:半雙工(注意不限父子進程,任意2個進程都可)。

(4)管道通信的函數:mkfifo、open、write、read、close


二、SystemV IPC介紹

1、SystemV IPC的基本特點

(1)系統通過一些專用API來提供SystemV IPC功能;

(2)包含:信號量、消息隊列、共享內存;

(3)其實質也是內核提供的公共內存

2、消息隊列

(1)本質上是一個隊列,隊列可以理解為(內核維護的一個)FIFO;

(2)工作時A和B2個進程進行通信,A向隊列中放入消息,B從隊列中讀出消息。

3、信號量

(1)實質就是個計數器(其實就是一個可以用來計數的變量,可以理解為int a);

(2)通過計數值來提供互斥和同步。

4、共享內存

(1)大片內存直接映射;

(2)類似于LCD顯示時的顯存用法

5、剩余的2類IPC

(1)信號

(2)Unix域套接字:socket


總結

以上是生活随笔為你收集整理的Linux进程全解12——lIPC机制之管道,SystemV IPC介绍的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。