Sistem V & Posix
Tabel berikut mencantumkan perbedaan antara Sistem V IPC dan POSIX IPC.
SISTEM V | POSIX |
---|---|
AT&T memperkenalkan (1983) tiga bentuk baru fasilitas IPC yaitu antrian pesan, memori bersama, dan semaphores. | Standar Antarmuka Sistem Operasi Portabel yang ditentukan oleh IEEE untuk mendefinisikan antarmuka pemrograman aplikasi (API). POSIX mencakup ketiga bentuk IPC |
SYSTEM V IPC mencakup semua mekanisme IPC yaitu, pipa, pipa bernama, antrian pesan, sinyal, semaphore, dan memori bersama. Ini juga mencakup soket dan soket Domain Unix. | Hampir semua konsep dasarnya sama dengan System V. Hanya saja berbeda dengan antarmukanya |
Panggilan Antarmuka Memori Bersama shmget (), shmat (), shmdt (), shmctl () | Panggilan Antarmuka Memori Bersama shm_open (), mmap (), shm_unlink () |
Antarmuka Antrean Pesan Panggilan msgget (), msgsnd (), msgrcv (), msgctl () | Panggilan Antrean Pesan mq_open (), mq_send (), mq_receive (), mq_unlink () |
Panggilan Antarmuka Semaphore semget (), semop (), semctl () | Panggilan Antarmuka Semaphore Dinamakan Semaphore sem_open (), sem_close (), sem_unlink (), sem_post (), sem_wait (), sem_trywait (), sem_timedwait (), sem_getvalue () Unnamed or Memory based semaphore sem_init (), sem_post (), sem_wait (), sem_getvalue (), sem_destroy () |
Menggunakan kunci dan pengenal untuk mengidentifikasi objek IPC. | Menggunakan nama dan deskriptor file untuk mengidentifikasi objek IPC |
NA | Antrian Pesan POSIX dapat dipantau menggunakan API select (), poll () dan epoll |
Menawarkan panggilan msgctl () | Menyediakan fungsi (mq_getattr () dan mq_setattr ()) baik untuk mengakses atau menyetel atribut 11. IPC - Sistem V & POSIX |
NA | Aman multi-utas. Meliputi fungsi sinkronisasi utas seperti kunci mutex, variabel bersyarat, kunci baca-tulis, dll. |
NA | Menawarkan beberapa fitur pemberitahuan untuk antrian pesan (seperti mq_notify ()) |
Memerlukan panggilan sistem seperti shmctl (), perintah (ipcs, ipcrm) untuk melakukan operasi status / kontrol. | Objek memori bersama dapat diperiksa dan dimanipulasi menggunakan panggilan sistem seperti fstat (), fchmod () |
Ukuran segmen memori bersama System V ditetapkan pada saat pembuatan (melalui shmget ()) | Kita bisa menggunakan ftruncate () untuk menyesuaikan ukuran objek yang mendasari, dan kemudian membuat ulang pemetaan menggunakan munmap () dan mmap () (atau mremap khusus Linux ()) |