Komunikasi antar proses: Perbedaan antara revisi

1.740 bita ditambahkan ,  4 tahun yang lalu
tidak ada ringkasan suntingan
k (Riyantojayadi memindahkan halaman Interprocess Communication ke Komunikasi antar proses: Penggunaan bahasa indonesia)
Tidak ada ringkasan suntingan
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==
Beberapa jenis IPC yang disediakan oleh sistem operasi dapat disatukan dalam tabel berikut
 
{| class="wikitable"
|-
! Metode
! Penjelasan Singkat
! Sistem Operasi/Lingkungan
|-
| [[Berkas|File]]
| Sebuah berkas yang disimpan pada disk, atau disintesis oleh file server sesuai permintaan. Dapat diakses oleh beberapa proses.
| Semua sistem operasi mendukung metode ini
| SemuaHampir semua sistem operasi
|-
| [[Signal]]
| Sebuah pesan sistem yang dikirim dari suatu proses ke proses lain. Dapat digunakan sebagai metode sinkronisasi. Biasanya tidak digunakan untuk transfer data.
| Semua sistem operasi
| 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 mendukungyang metodemendukung inistandar 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 proces diberi akses pada blok memory yang sama, yang dimana membuat sebuah bufer bersama untuk proses-proses berkomunisaki satu sama lain.
| Semua sistem operasi yang mendukung standar [[POSIX]]
|-
| [[Message passing]]
| Memungkinkan beberapa program untuk berkomunikasi menggunakan ''message queue'' dan/atau saluran yang tidak diatur sistem operasi.
| Digunakan dalam paradigma [[Message Passing Interface|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]]
|-
54

suntingan