行程間通訊

进程间通信IPCInter-Process Communication),指至少两个进程线程间传送数据或信号的一些技术或方法。

「」的各地常用別名
中国大陸
港臺

进程是计算机系统分配资源的最小单位(严格说来是线程)。每个进程都有自己的一部分独立的系统资源,彼此是隔离的。为了能使不同的进程互相访问资源并进行协调工作,才有了进程间通信。通常,使用进程间通信的两个应用可以被分为客户端和服务器(见主从式架构),客户端进程请求数据,服务端响应客户端的数据请求。有一些应用本身既是服务器又是客户端,这在分布式计算中,时常可以见到。这些进程可以运行在同一计算机上或网络连接的不同计算机上。

IPC对微内核和nano内核的设计过程非常重要。 微内核减少了内核提供的功能数量。 然后通过IPC与服务器通信获得这些功能,与普通的宏内核相比,IPC的数量大幅增加[1]

使用IPC的理由

  • 資訊共享:Web服务器,通过网页浏览器使用进程间通信来共享web文件(网页等)和多媒体
  • 加速:维基百科使用通过进程间通信进行交流的多服务器来满足用户的请求
  • 模組化
  • 私有權分離

主要的IPC方法

方法提供方(操作系统或其他环境)
檔案多數作業系統
信号多數作業系統
Berkeley套接字多數作業系統
消息队列多數作業系統
管道所有的 POSIX 系統, Windows.
命名管道所有的 POSIX 系统, Windows.
信号量所有的 POSIX 系统, Windows.
共享内存所有的 POSIX 系统, Windows.
訊息傳遞用於MPI规范,Java RMICORBAMSMQMailSlot以及其他.
内存映射文件所有的 POSIX 系统, Windows.

参考文献

  1. . Wikipedia. 2018-04-02 (英语).
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.