三通用IPC原理(队列) newque().PPT

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
三通用IPC原理(队列) newque()

进程间通讯IPC机制 进程间通讯(IPC)机制(一) 进程间通讯(IPC)机制 进程间通讯(IPC)机制 一.System V IPC机制介绍 三种机制都是通过队列来完成信息的传递及同步。 系统初始化时,完成三个(消息队列、信号量、共享内存)队列总控结构的初始化,当进程选择一种通讯方式和其他进程通讯时,先在相应的总控结构中的队列数组中查找创建相应的通讯队列。通讯完毕时,释放队列 三种通讯机制在通用的IPC机制基础上根据各自的情况来通讯。 进程间通讯(IPC)机制 二.通用IPC数据结构 二.通用IPC数据结构(续) 二.通用IPC数据结构(续) 二.通用IPC数据结构(续) 二.通用IPC数据结构(续) 进程间通讯(IPC)机制 三.通用IPC原理(队列) 1.初始化 2.创建队列 3.队列访问控制 4.删除队列 三.通用IPC原理(队列) 三.通用IPC原理(队列) 1.初始化 2.创建队列 3.队列访问控制 4.删除队列 2.创建队列(函数调用总揽) sys_###get (key_k key, int msgflg) 2.创建队列 2.创建队列 2.创建队列 2.创建队列 队列创建实例图 队列创建实例图(续) 三.通用IPC原理(队列) 1.初始化 2.创建队列 3.队列访问控制 4.删除队列 3.队列访问控制 信号量 锁机制 IPC permissions 3.队列访问控制——IPC permissions 三.通用IPC原理(队列) 1.初始化 2.创建队列 3.队列访问控制 4.删除队列 进程间通讯(IPC)机制 Thank You Very Much! 知识点提醒(1): * * (王科峰) (注:基于2.4.0核心源代码) ——通用IPC机制 一.System V IPC机制介绍 二.通用IPC数据结构 三.通用IPC原理 四.消息队列 一.System V IPC机制介绍 二.通用IPC数据结构 三.通用IPC原理 四.消息队列 消息 队列 共享 内存 信号 量 通用IPC机制 继承 继承 继承 进程间通讯的目的是进行信息的传递及同步,2.4版本 在2.2版本基础上进一步抽取三种通讯机制共性形成 了一个较完整的IPC框架。 一.System V IPC机制介绍 二.通用IPC数据结构 三.通用IPC原理 四.消息队列 * entries semaphore atomic_t count int sleepers wait long __magic struct wait_queue *next struct task_struct *task wait_queue spinlock_t ipc_ids sem int size int in_use int max_id short seq ary seq_max ipc_id * p * p * p * p kern_ipc_perm 一个队列 总控结构 队列库 消息队列 msg_ids 信号量 sem_ids 共享内存 shm_ids 消息队列 msg_queue 信号量 sem_array 共享内存 shmid_kernel semaphore atomic_t count int sleepers wait long __magic struct wait_queue *next struct task_struct *task wait_queue * entries spinlock_t msg_ids sem int size int in_use int max_id short seq ary seq_max ipc_id * p * p * p * p time_t q_stime time_t q_rtime long q_qbytes long q_qnum time_t q_ctime long q_cbytes pid_t q_lspid pid_t q_lrpid q_receivers q_messages q_senders q_perm msg_queue kern_ipc_perm 消息队列 semaphore atomic_t count int sleepers wait long __magic struct wait_queue *next struct task_struct *task wait_queue * entries spinlock_t shm_ids sem int size int in_use int max_id short seq ary seq_max ipc_id * p * p * p * p shmid

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档