第十三天:
1. 使用管道实现进程间通信
1.1 基础概念
概念:本质上是一种特殊的文件
分类:有名管道和无名管道
有名管道:可以进行任意俩进程之间的通信
无名管道:只能进行父子进程之间的通信
1.2 使用有名管道实现进程间的通信
创建有名管道:mkfifo命令/函数
1.3 使用无名管道实现进程间通信
pipe函数
2. 使用共享内存实现进程间通信
2.1 基本概念
共享内存:本质是一块由内核维护的内存空间
特点:最快的IPC通信方式
2.2 通信模型
1)获取key值——ftok函数
2)创建/获取共享内存——shmget
3)挂接共享内存——shmat函数
4)使用共享内存
5)脱接共享内存——shmdt函数
6)删除共享内存——shmctl函数
2.3 常用的操作函数
1)ftok函数
2)shmget函数
3)shmat函数
4)shmdt函数
5)shmctl函数
2.4 常用的基本命令
ipcs -m :
ipcrm -m ID :
3. 使用消息队列实现进程间的通信
3.1 基本概念
3.2 通信模型
3.3 相关函数解析1)获取key值——ftok函数
2)创建/获取消息队列——msgget函数
3)发送消息/接收消息——msgsnd/msgrcv函数
4)删除消息队列——msgctl函数
1)ftok函数
2)msgget函数
3)msgsnd/msgrcv函数
4)msgctl函数
3.4 常用的基本命令
ipcs -q :
ipcrm -q ID :