标签:#进程间通信

共 38 篇文章

透明进程间通信

透明进程间通信(,缩写为TIPC)是一种用于进程间通信的网络通信协议,原本是为集群间通信特别设计的。它允许设计人员能够创建可以和其它应用快速可靠地通信应用,无须考虑在其它需要通信的应用在集群环境中的位置。 特点 TIPC的一些特点: 网络中服务的位置透明 自动发现机制。 可靠传输。 标准套接字接口支持。 无链接传输,面向链接传输以及多播消息机制。 网络事件订阅。 BSD/GPL双重许可证代码。 实现 TIPC项目是TIPC协议的开源实现…

Future与promise

在计算机科学中,future、promise、delay和deferred,是在某些并发编程语言中,指称用于同步的一种构造。由于某些计算尚未结束,故而需要一个对象来代理这个未知的结果。这种构造起源于函数式编程和相关范型如逻辑编程,其目的是将值与其运算过程解耦,从而允许更灵活地进行计算,特别是通过将其并行化来进行。后来它在分布式计算中得到了应用,用来减少网络通信往返的延迟。再后来async/await语法机制使其变得更有用,籍此允许以直接…

AJAX

AJAX即“*'”(非同步的JavaScript與XML技術),指的是一套综合了多項技術的瀏覽器端網頁開發技術。Ajax的概念由傑西·詹姆士·賈瑞特所提出。 传统的Web应用允许用户端填写表单(form),当送出表单时就向網頁伺服器发送一个请求。伺服器接收并处理传来的表单,然后送回一个新的网页,但这个做法浪费了许多带宽,因为在前后两个页面中的大部分HTML码往往是相同的。由于每次应用的沟通都需要向伺服器发送请求,应用的回應时间依赖于伺服…

Apache Avro

Avro是一种远程过程调用和数据序列化框架,是在Apache的Hadoop项目之内开发的。它使用JSON来定义数据类型和通讯协议,使用压缩二进制格式来序列化数据。它主要用于Hadoop,它可以为持久化数据提供一种序列化格式,并为Hadoop节点间及从客户端程序到Hadoop服务的通讯提供一种电报格式。 它类似于Thrift,但当改变时,它不要求运行代码生成程序,除非是对静态类型的语言。 已有API的语言 虽然理论上任何语言都可以使用Av…

ICE (中间件)

Internet Communications Engine,或Ice,是ZeroC开发的一个面向对象的中间件平台。它提供了面向对象的远程过程调用、网格计算和发布/订阅功能,并有基于GPL的双许可协议和一个私有许可协议。它支持Linux、Solaris、Windows和Mac OS X等最主要的操作系统,和C++、Java、.NET语言(如C#或Visual Basic)、Objective-C、Python、PHP和Ruby等语言。I…

ØMQ

ØMQ (也拼写作ZeroMQ,0MQ或ZMQ)是一个为可伸缩的分布式或并发应用程序设计的高性能异步消息库。它提供一个消息队列, 但是与面向消息的中间件不同,ZeroMQ的运行不需要专门的消息代理()。该库设计成常见的套接字风格的API。 ZeroMQ是由iMatix公司和大量贡献者组成的社群共同开发的。ZeroQ通过许多第三方软件支持大部分流行的编程语言,从Java和Python到Erlang和Haskell。 技术 类库提供一些套接…

行程間通訊

进程间通信(Inter-Process Communication,简称IPC)是一种技术或方法,用于在至少两个进程或线程之间传输数据或信号。每个进程都有自己独立的系统资源,彼此隔离。为了实现不同进程之间的资源访问和协调工作,需要使用进程间通信。 通常,使用进程间通信的两个应用可以分为客户端和服务器(主从式架构)。客户端进程请求数据,服务器进程响应客户端的数据请求。有些应用既是服务器又是客户端,这种情况在分布式计算中很常见。这些进程可以…

訊息傳遞 (軟體)

在计算机科学中,消息传递()是一种在计算机上调用行为(即运行程序)的技术。调用程序向一个进程(可能是参与者或对象)发送消息,依赖该进程及其基础设施来选择和运行相应的代码。消息传递不同于传统的直接通过名称调用进程、子程序或函数的编程方式。它是并发计算、并行计算、面向对象程序设计和进程间通信中的关键技术。消息传递在当今计算机软件中无处不在,既用于同一程序中对象之间的协作,也用于运行在不同计算机上的系统和对象之间的交互(例如互联网)。 概述 …

網路資訊服務

網路資訊服務簡稱 NIS(Network Information Service),時又譯為網路資料服務協定,亦即一般簡稱之「黃頁」YP(Yellow Pages),最早由昇陽公司開發出來,為一套用來管理電腦網路中所有與電腦系統管理相關之設定檔,如使用者帳號、密碼、主機名稱或群組等的主從式目錄服務協定。 由於 NIS 推出時的舊有名字 "Yellow page"「黃頁」已為英國電信集團註冊為該公司商業電話名錄的商標,故昇陽將之改名為 N…

组件对象模型

组件对象模型(,縮寫')是微軟的一套软件组件的二进制接口标准。这使得跨编程语言的进程间通信、动态对象创建成为可能。COM是多项微软技术与框架的基础,包括OLE、、ActiveX、COM+、DCOM、Windows shell、DirectX、Windows Runtime。COM與實作語言種類無關,如此使用它實作的物件可用在不同於開發它的環境,甚至跨越機器邊界。對製作良好的物件,COM使物件得以重複使用,而無須知道其內部實作,因為它強制…

流 (信息技术)

流(Stream)是计算机科学中对“可操作的字节序列”的抽象,文件、IO设备、进程中通信管道或TCP/IP套接字都提供流。 定义 根据流的来源和载体不同,可以分为文件流、内存流、网络流、字符流等。 对流可以进行三种操作,即写入(Write)、读取(Read)和查找(Seek),但不是所有的流都支持这三种操作,只能读取的流叫做只读流。 流可以具有缓冲区(Buffer),以对读写数据进行缓冲,例如,向低速存储设备的写入操作通常需要缓冲流,以…

匿名管道

匿名管道是计算机进程间的一种单工先进先出通信机制。全双工通信通常需要两个匿名管道。 典型场景为父进程创建匿名管道,然后创建一批子进程继承了这个匿名管道。由于这是未命名的管道,只能在本地计算机中使用,而不可用于网络间的通信。匿名管道并不支持异步读、写操作。 Unix 管道 (Unix)是类Unix系统上使用极其广泛的进程间传统通信机制。使用pipe 系统调用创建新的管道并返回一对文件描述符指向管道的读终端与写终端。 Windows操作系统…

邮槽

邮槽 (MailSlot)是Windows操作系统提供的一种单向进程间通信机制,可用于单机或者网络上的多机分布式环境。 对于相对简短的低频率信息发送,使用邮槽通常比命名管道或Unix域套接字更简单。如低频率的状态改变消息、作为对等点发现协议(peer-discovery protocol)的一部分。 邮槽机制允许短报文广播给域上的计算机中所有监听的进程。 特性 邮槽是一种服务器-客户接口。服务器创建邮槽,客户可以向命名的邮槽写入内容。只…

電腦檔案

,简称文件,是存储在某种长期储存设备或臨時儲存裝置中的一段数据流,並且歸屬於計算機文件系統管理之下。所谓“长期储存设备”一般指磁盘、光盘、磁带等。而“短期存儲裝置”一般指電腦記憶體。需要注意的是,儲存於長期存儲裝置的文件不一定是長期儲存的,有些也可能是程序或系統運行中產生的臨時數據,並於程序或系統退出後刪除。 历史 ]] 計算機“檔案”一词最早在1952年用于计算机数据方面,指的是在打孔卡所储存的信息。 计算机文件的定义 具有某种特定格…

通道 (编程)

在计算中,通道(channel)是通过消息传递进行进程间通信和同步的编程模型。作为一个流,消息可以经由通道发送,另一个进程或线程能够接收它已经引用的经由通道发送的消息。通道的不同实现,可以没有缓冲区也可以有缓冲区,消息传递相应的可以是同步的也可以是异步的。 通道是并发的进程演算方式的基础,并起源于通信顺序进程(CSP),它是并发的形式模型,在CSP的无缓冲区通道中,发送者不能传送消息,直到接收者准备好接受它,称为同步消息传递,这种行为也…

Thrift

Thrift是一种接口描述语言和二进制通讯协议,它被用来定义和创建跨语言的服务。它被当作一个远程过程调用(RPC)框架来使用,是由Facebook为“大规模跨语言服务开发”而开发的。它通过一个代码生成引擎联合了一个软件栈,来创建不同程度的、无缝的跨平台高效服务,可以使用C#、C++(基于POSIX兼容系统)、Cappuccino、Cocoa、Delphi、Erlang、Go、Haskell、Java、Node.js、OCaml、Perl…

分散式運算環境

分散式運算環境(,縮寫為DCE),一個軟體系統,於1990年代初期,由開放軟體基金會負責發展。它提供了一個軟體架構,可用於開發主從式架構應用軟體。它包括了一套遠端程序呼叫機制,被稱為DCE/RPC,名稱服務,時間服務,授權服務,以及一個分散式檔案系統,稱為DEC/DFS。它是國際開放標準組織發布的標準之一。 外部連結 [http://www.opengroup.org/dce/ DCE官方網頁] [http://www.opengrou…

管道 (软件)

管道(pipeline),本源是使用消息传递的进程间通信机制,它构成自链接起来的处理元素(进程、线程、协程和函数等),它们被安置为每个元素的输出都是下一个元素的输入;这个名字类比于物理上的管道运输。在连贯的元素之间,通常会提供一定数量的缓冲区。在管道中流动的信息,经常是记录、字节或位的流(stream),而管道的元素可以叫做。将元素连接成管道类似于。在软件工程中,称之为管道与过滤器设计模式。 概述 管道的概念是在Unix的发源地贝尔实验…

客户间通信协定手册

在计算技术中,客户间通信协定手册(Inter-Client Communication Conventions Manual:缩写为ICCCM或I39L即“I, 39个字母, L”)是X窗口系统的标准协议。它规定有一个共同的X服务器的客户间的通信。它主要用于在窗口管理器和X服务器的其他客户之间的通信。 历史 它由MIT X联盟的在1988年设计,其版本1.0发行于1989年7月而版本2.0发行于1994年早期。 背景 X刻意的规定窗口交…