Linux -- 共享内存

张开发
2026/4/26 1:28:39 15 分钟阅读

分享文章

Linux -- 共享内存
共享内存⭐最快的 IPC 方式1. 核心特点直接将物理内存映射到多个进程的虚拟地址空间无需数据拷贝速度最快需配合信号量实现同步互斥生命周期随内核不随进程消失2. 头文件#include sys/shm.h3. 核心 API⭐shmget创建 / 获取共享内存int shmid shmget(key_t key, size_t size, int shmflg);key唯一键值如 1234size共享内存大小flagIPC_CREAT | 0600存在则获取不存在则创建shmat挂载映射到进程地址空间char *p shmat(shmid, NULL, 0);shmdt卸载断开映射shmdt(p);shmctl控制删除共享内存shmctl(shmid, IPC_RMID, NULL);4. 查看 / 删除命令ipcs查看共享内存、消息队列、信号量ipcrm -m shmid删除共享内存5. 基本流程创建 → 映射 → 读写 → 断开映射 → 删除

更多文章