进程间通信中的父子进程通过共享内存实现案例
发布时间
阅读量:
阅读量
1. shmget:共享内存创建函数,用于在内核空间中建立缓存区域
2. shmat:将内核中已创建的缓存映射至用户空间的指定地址
3. shmdt:当内核空间的缓存使用完毕后,用于解除用户空间与内核缓存之间的地址映射关系
4. shmctl:在内核空间的缓存使用结束后,用于释放所占用的共享内存资源
5. ftok:该函数用于生成唯一的key值,该key值作为shmget函数的第一个参数使用。
key值被应用于无亲缘关系进程间的通信,而IPC_PRIVATE则适用于具有亲缘关系的进程间通信。
本节案例描述了一个单向通信过程,其中父进程负责数据写入操作,子进程执行数据读取任务。
root@100ask:/home/book/C_coding/0113# cat shmctl.c
#include "sys/types.h"
#include "sys/shm.h"
#include "signal.h"
#include "unistd.h"
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
void myfun(int signum)
全部评论 (0)
还没有任何评论哟~
