IPC 在 Android、MAC、Windows 操作系统中是如何实现的?
进程间通信是一种在两个或多个进程之间交换数据以对该数据执行某些操作的技术。这些进程可能存在于同一台计算机上或位于远程位置。
进程间通信的原因如下-
进程间信息共享
加快某些进程的计算
增加应用程序的模块化
现在,让我们了解在以下操作系统中实现的进程间通信类型。
安卓
AndroidOS使用以下方法在两个或多个进程之间共享数据。
粘合剂
它是android操作系统中进程间传递数据的一种方式。进程之间的通信可以看作是它们之间执行某种任务的某种类型的合作。
Binder是一个服务类,它允许其他活动和服务与其绑定。要为服务提供绑定,您必须实现onBind()回调方法。
绑定器的主要优点是它们不仅允许向服务发送数据,而且还可以调用它们的方法。
苹果系统
这是MacOS中的一种IPC机制。
在进程间通信的分布式通知中,通知中心管理数据的发送和接收。所有客户端应用程序都需要将它们作为观察者注册到中心经理,以观察其他人发布的某些特定通知。当该特定对象在通知管理器上发布一些通知时,它将该通知发送给所有观察者。
这种类型的通信的主要缺点是将数据发布到通知中心到通知到达其他观察者进程所需的时间之间的延迟率可能很高。
视窗
与其他操作系统一样,windows也使用多种类型的进程间通信。
管道
管道是用于在同一台计算机或不同计算机上的两个进程之间共享数据的众多机制之一。
Windows操作系统中用于共享数据的管道有两种类型,如下所示-
匿名管道-匿名管道用于在相关进程之间共享数据。这里在两个进程之间共享一个子进程,以共享进程之间的信息。管道是单向的。因此,要在两个进程之间进行双向信息交换,我们需要创建两个匿名管道。
命名管道-命名管道用于在彼此不相关的进程之间交换数据,即它们驻留在两台不同的计算机上。
索拉里斯
这是Solaris使用的一种进程间通信机制-
太阳门
SolarisDoors是Solaris操作系统使用的高级进程间通信技术。这些是轻量级的、快速的,用于在进程之间共享信息。
Solaris门的工作原理
它包含一个门服务器,等待来自门客户端的请求。
客户端以较小的有效负载调用门服务器。
门服务器将请求和响应处理回调用线程,即门客户端。