gpt4 book ai didi

c - 用于附加共享内存段的 shmat

转载 作者:IT王子 更新时间:2023-10-29 00:36:14 27 4
gpt4 key购买 nike

当我浏览 shmat 的手册页时。它被描述为 API 的原始功能是将与 shmid 关联的内存段附加到调用进程的地址空间

我的问题如下。

  • attach 这个词对我来说很普通。我发现很难理解附加所指的底层事件是什么。?
  • 映射一段内存是什么意思?

最佳答案

将其用作 char *ptr=shmat(seg_id,NULL,0);它通过函数 shmget() 将创建的段 ID 附加到包含上述代码的进程。

seg_id 是新建段的段idNULL 表示操作系统将代表用户处理段的起始地址0read/write 的标志

每当一个进程附加到共享内存时,它就必须被分离,以便另一个进程可以通过附加到该段来访问它(如果存在资源锁定机制。)

分离:shmdt(ptr);

关于c - 用于附加共享内存段的 shmat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13248157/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com