System V IPC
以下三种类型的IPC合称为System V IPC:
& System V 消息队列
&System V 信号量
&System V共享内存区
这个称谓作为这三种IPC机制的统称是因为它们源自System V Unix。
三种类型的System V IPC使用key_t值作为它们的名字。头文件<sys/types.h>把key_t这个数据类型定义为一个整数,它通常是一个至少32位的整数。这些整数值通常是由ftok函数赋予的。
函数ftok把一个已存在的路径名和一个整数标识符转换为一个key_t值,称为IPC键。
该函数把从pathname导出的信息与id的低序8位组合成为一个整数IPC键。
1、创建与打开IPC通道
创建或者打开一个IPC对象的三个getXXX函数的第一个参数key是整型为key_t的IPC键,返回值identifier是一个整数标识符。该标识符不同于ftok函数的id参数。对于key值,应用程序有两种选择。
1)调用ftok,给它传递pathname和id。
2)指定key为IPC_PRIVATE,这将保证会创建一个新的、唯一的IPC对象。