LINUX下利用特殊文件系统shm 实现内存的共享
来源:互联网 发布:snh48黑历史 知乎 编辑:程序博客网 时间:2024/05/18 19:46
#include<sys/ipc.h>
#include<sys/shm.h>
#include<stdlib.h>
#include<string.h>
int main()
{
int shmid = shmget((key_t)111, 4096, IPC_CREAT); //创建共享内存,返回共享内存标识符
if (shmid == -1)
{
perror("shmget");
}
char *ptr = (char *)shmat(shmid, NULL, 0); //映射共享内存,方便进程对共享区域进行操作
if ((int)ptr == -1)
{
perror("shmat");
}
char str[100] = {0};
scanf("%s", str);
memcpy(ptr, str,100); //将输入的字符写入共享内存
return 0;
}
--------------------------------------------------------------------------------------------------------------------分割线---------------------------------------------------------------------------------------------------------------------
#include<stdio.h>
#include<sys/ipc.h>
#include<sys/shm.h>
#include<sys/types.h>
#include<unistd.h>
#include<string.h>
int main()
{
int shmmid = shmget((key_t)111, 4096, IPC_PRIVATE); //与前一个程序的key(标识共享内存的键值)相同,找到同一个共享内存
if (shmmid == -1)
{
perror("shmid");
}
char *ptr1 = (char *)shmat(shmmid, NULL, 0);
if ((int)ptr1 == -1)
{
perror("shmat");
}
char s[100];
memcpy(s , ptr1, 100); //拷贝内存中的字符
printf("%s\n", s);
return 0;
}
- LINUX下利用特殊文件系统shm 实现内存的共享
- linux下共享内存(shm)使用示例
- linux 下共享内存shm详解
- linux SysV IPC shm共享内存实现
- linux shm共享内存
- linux shm共享内存
- Linux 下的tmpfs文件系统(/dev/shm)
- Linux 下的tmpfs文件系统(/dev/shm)
- Linux 下的tmpfs文件系统(/dev/shm)
- 共享内存的特殊文件系统
- 两种共享内存的实现区别,shm和mmap
- linux共享内存(shm)的测试代码
- linux c之shm共享内存的使用例子
- linux shm 进程之间内存共享
- IPC-shm 共享内存
- shm创建共享内存
- 共享内存 shm
- 共享内存 shm
- JavaScript数组
- 图像显著性区域提取[1]——研究现状
- 28. Implement strStr()
- 列出当前系统中各种类型数据占用的字节数
- android的webView加载网页
- LINUX下利用特殊文件系统shm 实现内存的共享
- Activity的用法
- Coursera加密与加密货币导论1-3、1-4数字签名
- 免安装版的mysql5.7的安装和配置(mysql-5.7.18-winx64.zip)
- DOM节点属性
- [CF480D]Parcels
- 智能指针探索(一)——成员变量的释放
- firefox历年版本的官方镜像地址 和 所有的geckodriver.exe驱动大全
- 23种设计模式