Komunikasi antarproses

Komunikasi antarproses (disingkat KAP) () adalah mekanisme pertukaran data antara satu proses dengan proses lainnya, baik itu proses yang berada di dalam komputer yang sama, atau komputer jarak jauh yang terhubung melalui jaringan. IPC adalah mekanisme komunikasi, bukan protokol yang menjamin respons. Contoh KAP adalah Soket dalam sistem operasi keluarga UNIX, message dalam sistem operasi RISC OS, porta dalam sistem operasi Mach, Named Pipe dalam OS/2, Dynamic Data Exchange (DDE) dalam sistem operasi Windows, SPX dalam sistem operasi Novell, IAC dalam sistem operasi Apple Macintosh (khususnya AppleEvents) dan beberapa komponen perangkat lunak seperti CORBA atau Component Object Model (COM).

Meskipun IPC secara otomatis dilakukan oleh program, sebuah fungsi yang sama juga dapat dilakukan secara interaktif ketika pengguna melakukan operasi copy-cut-paste dari satu proses ke proses lainnya dengan menggunakan clipboard.

 Pendekatan 

 Metode Penjelasan Singkat Sistem Operasi/Lingkungan Berkas Sebuah berkas yang disimpan pada disk, atau disintesis oleh peladen berkas sesuai permintaan. Dapat diakses oleh beberapa proses. Hampir semua sistem operasi Sinyal Sebuah pesan sistem yang dikirim dari suatu proses ke proses lain. Dapat digunakan sebagai metode sinkronisasi. Biasanya tidak digunakan untuk transfer data. Hampir semua sistem operasi Socket Aliran data yang dikirim melalui antarmuka jaringan, untuk proses yang berbeda pada komputer yang sama maupun pada komputer berbeda pada jaringan. Biasanya ber-orientasi byte. Hampir semua sistem operasi UNIX domain socket Mirip dengan Socket internet, tetapi seluruh komunikasi terjadi dalam kernel dan menggunakan sistem file sebagai alamat. Semua sistem operasi yang mendukung standar POSIX Pipe Sebuah saluran data satu arah. Data yang ditulis pada ujung tulis (write end) dari pipa dibufer oleh sistem operasi sampai data pada ujung baca (read end) dibaca. Semua sistem operasi yang mendukung standar POSIX Named pipe Sebuah pipe yang di-implementasi melalui sebuah file pada sistem file daripada melalui input dan output standard. Beberapa proses dapat membaca dan menulis file sebagai sebuah bufer untuk komunikasi antar proses. Semua sistem operasi yang mendukung standar POSIX Shared memory Beberapa proses diberi akses pada blok memori yang sama, tempat sebuah bufer terletak bersama untuk proses-proses berkomunikasi satu sama lain. Semua sistem operasi yang mendukung standar POSIX Message passing Memungkinkan beberapa program untuk berkomunikasi menggunakan message queue dan/atau saluran yang biasanya diatur oleh OS atau runtime: Digunakan dalam paradigma Message Passing Interface (MPI), Java RMI, CORBA, atau lainnya Memory map Sebuah berkas yang dipetakan pada RAM dan dapat dimodifikasi dengan mengubah alamat-alamat memory secara langsung daripada mengeluarkan (output) ke aliran. Semua sistem operasi yang mendukung standar POSIX; Mungkin dapat menyebabkan kondisi kompetisi (race condition) jika sebuah berkas sementara (temporary file) digunakan.  Message queue Aliran data mirip dengan socket, namun biasanya menjaga batas pesan (dalam maksud ukuran pesan dipatenkan sebelum pesan dikirim ke penampungan pesan dan proses yang menulis/membaca pesan layaknya berkomunikasi menggunakan suatu unit pesan). Kebanyakan sistem operasi Mailbox Beberapa sistem operasi Mailslot Windows NT, IBM OS/2

 Implementasi 
Ada beberapa antarmuka pemrograman aplikasi yang memungkinkan untuk digunakan untuk IPC. Beberapa platform yang tidak tergantung antarmuka tersebut termasuk berikut ini:

 Anonymous pipe dan Named pipe
 Common Object Request Broker Architecture (CORBA)
 Freedesktop.org D-Bus
 Distributed Computing Environment (DCE)
 Message Bus (MBUS) (dispesifikasikan di RFC 3259)
 Lightweight Communications and Marshalling (LCM)
 ONC RPC
 Unix domain socket
 XML XML-RPC atau SOAP
 Thrift
 TIPC
 ZeroC Internet Communications Engine (ICE)

 Pranala luar 
 Situs resmi D-Bus

Kategori:Teknologi sistem operasi
Kategori:Komputasi terdistribusi