阻塞原语:阻塞原语是阻塞性报文通信原语也称为同步原语。阻塞原语不立即将控制权返回给调用该
原语的进程,也就是说 send 一直被阻塞直到发送的信息被接收方收到并得到接收方的应答。同样地,
receive 一直被阻塞,直到要接受的信息到达并被接收。
非阻塞原语:非阻塞原语不提供任何形式的同步,非阻塞原语也称为异步原语。执行发送和接收时,
控制权立即返回给进程并继续执行语句。然后,收到响应而产生一个中断,通知进程可以完成原语。
(5) 客户存根与服务器存根
客户存根(client stub):客户代理。在客户上的进程需要访问服务器上的资源时,可以发出一条带
有参数的 RPC 命令给客户存根,以委托它充当调用进程的代理。客户存根接收到 RPC 的命令后,便去执行本
次的远程过程调用;客户存根与一个客户应用相联,它对于该客户就像一个服务器一样,它截取客户的远程调
用命令后,利用通信网络向服务器发送服务请求,在返回时,它获取返回信息,并将结果返回给客户。
服务器存根(sever stub):服务器代理。服务器存根与一个服务器相联,它对于服务器来说就像一
个客户一样,在调用时,它接收到远程调用的请求后,产生一个本地调用来执行相应的远程过程,在返回时,
它获取远程过程的返回结果,并形成返回消息发送给客户。
(6)同步检查点和异步检查点。
异步检查点:在异步检查点方式中,各进程独立地完成检查点,这种方
式对应用程序增加的开销较小,但会导致检查点文件数目不确定,恢复时容易出现多米诺效应等问题。
同步检查点:在同步检查点方式中,通过发送统一的控制信息。能够保证所做的检查点满足全局一致性。
所谓全局一致性检查点是指,在检查点集中,如果一个进程的检查点已经记录了一条消息的接收事件,那么这
条消息的发送方的进程的检查点也记录了这条消息的发送事件。
评论