在操作系统课程里学习过进程间通信的方式有“管道”,“信号量”,“消息”,“共享内存”,“套接字”等。
通过最近对消息,信号量,共享内存的学习,可以看出创建、删除、查询这些IPC的模式。
首先需要通信的进程间用相同的key生成一IPC_ID。API有msgget, shmget, semget。
然后查询和使用这些IPC资源都通过IPC_ID。API有msgctl, shmctl, semctl, semop, shmat, shmdt, msgsnd, msgrcv等。
使用完IPC资源后删除IPC_ID,通过API msgctl, shmctl, semctl。
这些API是比较底层和旧的,使用msg, semaphore, shared memory有比较新的API。例如......
阅读全文