第2章进程的描述与控制(下)解读.ppt

* 二、信箱通信(间接通信) 进程之间传送消息时需要借助于一个中间媒体,即信箱来进行,因此称之为间接通信方式。 1.信箱的数据结构 间接通信所利用的信箱是一种数据结构,它由信箱头和信箱体两部分组成。 其中:信箱头是对信箱的描述,信箱头包括如下信息: 信箱标识符 信箱大小 已存放的信件数 等信箱队列的首指针 等信件队列的首指针 信箱体由若干格子组成,每一个格子可以存放一个信件。 信箱格子的大小和数量在信箱创建时确定。 * 2.发送原语和接收原语 (1)发送原语的形式为:send(B,M) 其中:B为信箱的标识符,M为信件的存放地址。 发送原语的执行过程:根据参数B找到指定的信箱,若信箱未满,则将信件M送入信箱由指针所指示的位置,信件数加1,并释放等信件的进程;否则,发送进程被阻塞,并将其插入等信箱队列。 (2)接收原语的形式为:receive(B,M) 其中:B为信箱的标识符,M为信件的存放地址。 接收原语的执行过程:根据参数B找到指定的信箱,若信箱有信件,则取出第一封信送到M所指定的区域,信件数减1,并将信箱中剩余的信件顺次前移,若有等信箱的进程,则将其唤醒;若信箱中无信件,则接收进程被阻塞,并将其插入等信件队列。 * 信箱可以由操作系统创建,也可以由用户创建,创建者是信箱的拥有者。因

文档评论(0)

1亿VIP精品文档

相关文档