Komunikasi Antar Proses Interprocess Communication (IPC)

dokumen-dokumen yang mirip
Bab 3: Proses-Proses. Konsep Proses

Bab 3: Proses-Proses. Konsep Proses

KOMUNIKASI PENGANTAR DATA TERDISTRIBUSI. Materi: 1. Komunikasi Data 2. Protocol 3. Remote Procedure Call 4. Object Remote

SISTEM OPERASI (MANAJEMEN PROSES)

KONSEP INTERAKSI. Adrianus W. K X Aziz Yudi Prasetyo Gregorio Cybill

Text Berisi kode programnya

Sistem Operasi. Proses dan Penjadwalannya. Aditya Wikan Mahastama Antonius Rachmat C

Sistem operasi menjalankan banyak dan beragam program :

Sistem operasi menjalankan banyak dan beragam program :

Gambar 2.1 Prinsip RPC pada Client-Server

4 Proses. Proses. Konsep Proses. Proses. Prosesor mengeksekusi program-program komputer Prosesor adalah sebuah chip dalam sistem

KOMUNIKASI. Universitas Informatika dan Bisnis Indonesia. 2.1 Komunikasi Data

Komunikasi. Sistem Terdistribusi Reza Aditya Firdaus

SISTEM OPERASI PROSES-PROSES. Pembahasan

Distributed Object CORBA and RMI

Sistem terdistribusi 3. Interprocess Communication

Fase pertama: single user, single tasking

Sistem Operasi 3. Process

REVIEW DAN REVISI BUKU

PEMROGRAMAN SISTEM TERSEBAR

2.1. Sistem Komunikasi

BAB V Remote Procedure Call (RPC)

Sistem Operasi Komputer

Pemrograman Jaringan 11 RMI

Sistem Terdistribusi 2. Model arsitektur Terdistribusi

Bab 2. Komunikasi. 1. Physical Layer

Connectionless service UDP (User Datagram Protocol)

SISTEM TERDISTRIBUSI. Agenda : - Pengantar Sistem Terdistribusi - Karakteristik Sistem Terdistribusi - Model Sistem Terdistribusi. Yuli Purwati, M.

Soal terdiri dari 50 Pilihan Ganda Setiap soal pilihan ganda hanya satu jawaban yang benar

Interprocess communication atau komunikasi antar proses adalah inti dari sistem terdistribusi dan komunikasi antar proses-proses pada system-sistem

1. PENGENALAN SISTEM TERDISTRIBUSI

Proses Burst Time Prioritas P P1 7 1 P2 9 3 P P4 19 2

Concurrency 1: y Mutual Exclusion dan Sinkronisasi (Perte rt muan ke muan -10) 10 Oktober 2014

Objek Terdistribusi dan Remote Invocation. I Made Andhika, S.Kom

TUGAS JARINGAN KOMPUTER

Sistem Terdistribusi TIK-604

PROSES, OBJEK DAN LAYANAN TERDISTRIBUSI

Operasi pada Proses. Zaid Romegar Mair, ST., M.Cs

Bab 2. Komunikasi Protokol

DISTRIBUTED OBJECT CORBA & RMI. Sistem terdistribusi week 13

PROSES. Sistem Terdistribusi

Operating System. I/O System. Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan. Dosen : Caca E. Supriana, S.Si

1. Hardware terdistribusi. 2. Program terdistribusi. Nama : Gede Doddi Raditya Diputra NIM : Kelas : 5.C

CONTOH PENDSTRIBUSIAN HARDWARE

Heru Lestiawan, M.Kom

Sistem terdistribusi Processes, Threads and Virtualization pertemuan 3. Albertus Dwi Yoga Widiantoro, M.Kom.

Sistem Terdistribusi

Sharing Printer dengan Samba. Oleh. Md. Chrisna donny andrian. V c

Middleware Sebagai Jembatan Platform yang berbeda. Budi Susanto

BAB I PENDAHULUAN 1.1 Latar Belakang

Soal terdiri dari 50 Pilihan Ganda Setiap soal pilihan ganda hanya satu jawaban yang benar

SISTEM OPERASI TERDISTRIBUSI

Protokol. Pemrograman Client/Server dengan Java Socket. Protokol TCP/IP. Tipe pemrograman jaringan. Java Socket

Model arsitektur Terdistribusi

TUGAS Mata Kuliah : Sistem Terdistribusi

Sistem terdistribusi 3

Thread. pada satu waktu. menjalankan banyak tugas/thread. yang sama

FILE SERVICE DAN NAME SERVICE

Pemrograman Jaringan 12 CORBA

Model Sistem Terdistribusi

Distributed System. Seven Distributed File Systems. Genap 2011/2012

REVIEW KARAKTERISTIK DAN MODEL SISTEM TERDISTRIBUSI

Sistem Terdistribusi TIK-604

Bab 3.Proses dan Penjadualan

Consistency and Replication

Laporan Tugas Scheduling Pengantar Sistem Operasi

Bab 3. Proses Proses POKOK BAHASAN: TUJUAN BELAJAR: 3.1 KONSEP PROSES

BAB 1 PENDAHULUAN 1.1 Pendahuluan

Tahun Akademik 2014/2015 Semester II. DIG1I3 - Instalasi dan Penggunaan Sistem Operasi. System Calls dan Thread

Distribusi Fungsi. Dengan pembagian fungsi untuk tiap komponen dalam sistem client server, berikut manfaat yang ada :

Teknik Informatika S1

BAB II LANDASAN TEORI

Komunikasi Antar Proses

TRANSPORT LAYER. Fikri Fadlillah, ST

Sistem Operasi Pertemuan 4 Thread, SMP & Microkernel. H u s n i Lab. Sistem Komputer & Jaringan Teknik Informatika Univ.

Sistem Terdistribusi Proses. S1 Sistem Komputer Musayyanah, S.ST, MT

BAB 1 Service Oriented Architecture 1.1 Evolusi SOA

RENCANA PEMBELAJARAN SEMESTER (RPS)

Operating System: An Overview. Ch. 3: Process Management. Ch. 3: Process Management

I. PENDAHULUAN. jaringan dan aplikasi yang dibuat khusus untuk jaringan. Akibatnya, interaksi

Sistem Jaringan Terdistribusi

Mengenal Java RMI. Wiranti Sri Utami. Abstrak. Pendahuluan.

Operating System. File System. Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan. Dosen : Caca E. Supriana, S.Si

Operating System. Thread. Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan. Dosen : Caca E. Supriana, S.Si

Firewall & WEB SERVICE

SATUAN ACARA PERKULIAHAN UNIVERSITAS GUNADARMA

Sistem Terdistribusi. Silabus

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. mengangkat kasus dan penggunaan teknologi yang berbeda-beda, pada table 2.1

4. SISTEM OPERASI TERDISTRIBUSI

Pemrograman Jaringan

b. Transmisi Paralel Adalah transmisi data dimana dalam satu satuan waktu beberapa bit (umumnya 8 bit) dapat disalurkan secara bersama

12 Input / Output. Sistem I/O. Hardware I/O. Struktur PC Bus

Network Programming 2010 Jaringan & Aplikasinya. Husni Husni.trunojoyo.ac.id

Lapisan Transport. Menjamin komunikasi yang handal antara dua buah komputer yang terhubung Terdiri atas :

Pertemuan 2. Struktur Sistem Operasi

Operating System: An O verview. Ch. 3: Process Management

BAB II LANDASAN TEORI

Sistem Terdistribusi 5. Invocation

Sistem Operasi Pertemuan 5 Concurrency: Mutual Exclusion & Synchronization

TUGAS ELEARNING PENGEMBANGAN WEB SERVICE

Transkripsi:

Distributed System Genap 2011/2012 Number three Komunikasi Antar Proses Interprocess Communication (IPC) Dahlia Widhyaestoeti, S.Kom dahlia.widhyaestoeti@gmail.com dahlia74march.wordpress.com

Komunikasi Antar Proses Interprocess Communication (IPC) Menyediakan mekanisme yang memungkinkan proses-proses berkomunikasi dan mensinkronisasi aksi-aksinya Message System komunikasi tanpa memerlukan penggunaan shared variabel milik proses user

Operasi-operasi IPC Operasi-operasi yang disediakan Send(message) Receive(message) Message dapat berukuran tetap atau variabel Ukuran tetap; implementasi fisik lebih simple, tapi lebih sulit bagi user dalam pemrograman Ukuran variabel; pemrograman lebih mudah tapi implementasi fisik lebih sulit

Communication Link Bila P dan Q hendak berkomunikasi mereka perlu menetapkan suatu communication link di antara mereka lalu melakukan tukar-menukar message melalui send/receive IPC dalam implementasinya memerlukan communication link Secara fisik, contohnya shared memory, hardware bus Secara logic, contohnya logical properties

Implementation Questions How are links established? Can a link be associated with more than two processes? How many links can there be between every pair of communicating processes? What is the capacity of a link? Is the size of a message that the link can accommodate fixed or variable? Is a link unidirectional or bi-directional?

Implementasi Menjawab pertanyaan-pertanyaan : Cara penetapan link Bisa berasosiasi dengan > 2 proses Jumlah link yang ditetapkan antara 2 proses Kapasitas link Ukuran message : tetap atau variabel Arah link : satu arah (unidirectional) atau dua arah (bi-directional) Satu arah : proses hanya send (atau receive) dan hanya satu yang receive

Metodologi Direct vs. Indirect Communication Symmetric vs. Asymmetric Communication Automatic vs. Explicit Buffering Send by Copy vs. Send by Reference Fixed Sized vs. Variabel Sized Message

Direct Communication Proses-proses harus menyebutkan pasangannya secara eksplisit send(q, message) Q adalah receiver receive(p, message) P adalah sender P Q

Sifat-sifat Communication Link Direct Comm. Link ditetapkan secara otomatis Link diasosiasikan dengan pasangan proses yang sedang berkomunikasi tsb Antara sepasang proses hanya bisa ada 1 link Link bisa satu arah tapi biasanya dua arah

Kekurangan Direct Comm. Modularitas terbatas Pengubahan nama proses perlu pengubahan di seluruh call Perlu pemeriksaan jika terdapat nama yang sama

Indirect Communication Message-message dikirim dan diterima melalui suatu mailbox (juga disebut port) Masing-masing mailbox memiliki id yang unik Proses-proses hanya dapat berkomunikasi jika mereka menshare mailbox P A Q send(a, message) Kirim message ke dalam mailbox A receive(a, message) Terima message dari dalam mailbox A

Sifat-sifat Communication Link Indirect Comm. Link ditetapkan saat dua proses menshare suatu mailbox Link dapat diasosiasikan dengan sejumlah proses Setiap pasang proses bisa men-share beberapa link Link bisa satu arah atau dua arah

Operasi-operasi Indirect Comm. Proses memulai komunikasi dengan mencreate mailbox Komunikasi berlangsung dengan pemanggilan perintah send & receive message melalui mailbox tersebut Saat proses hendak exit maka proses men-destroy mailbox

Masalah pada Mailbox Sharing Mailbox sharing P 1, P 2, and P 3 share mailbox A. P 1, sends; P 2 dan P 3 receive. Siapa yang mendapatkan message? Solusi Batasi link diasosiasikan hanya untuk max 2 proses Hanya mengijinkan satu proses setiap saat yang meng-eksekusi operasi receive Sistem memilih siapa receiver-nya Sender menyebutkan siapa receivernya P 1 A P 2 P 3

Sinkronisasi Message passing dapat dibedakan menjadi : blocking non-blocking Blocking adalah synchronous Non-blocking adalah asynchronous Primitif send and receive dapat blocking or non-blocking.

Buffering untuk Link 3 kemungkinan cara implementasi Zero capacity tidak ada buffer Sender harus menunggu sampai muncul receiver dan sebaliknya (sinkronisasi - rendezvous) Bounded capacity bisa berisi max n message Sender harus menunggu jika penuh Unbounded capacity tak terbatas Sender tidak pernah menunggu

Komunikasi Client-Server Sockets Remote Procedure Calls Remote Method Invocation (Java)

Socket Socket didefinisikan sebagai suatu endpoint for communication. Sebuah programming interface ke OS yang memungkinkan proses untuk saling berkomunikasi ke proses lainya Eksekusi TCP/UDP berlangsung di level kernel, socket bertindak sebagai jembatan ke user space. Merupakan gabungan IP address dan port Socket 161.25.19.8:1625 menunjukkan bahwa port 1625 pada host 161.25.19.8 Komunikasi terdiri dari pasangan socket.

Komunikasi antar Socket Contoh standard port : TELNET menggunakan port 23 FTP menggunakan port 21 HTTP server menggunakan port 80

Ilustrasi Socket

Komunikasi Socket

Detail Komunikasi Socket

Remote Procedure Calls (RPC) (1) Remote Procedure Call (RPC) membuat abstraksi pemanggilan prosedur antara proses dalam sistem jaringan (network) Stubs client-side proxy untuk procedure aktual pada server Client-side stub mengalokasikan server dan mengirimkan marshalls parameter Server-side stub menerima message, membuka parameter marshall, dan menjalankan procedure pada server

Mekanisme RPC

Remote Procedure Calls (RPC) (2) Dalam sistem single-processor : message send = pemanggilan fungsi reply = function return sender mengaktifkan receiver dengan message sebagai argument, dan sender wait untuk mendapatkan reply dari function return Skema RPC ini dilakukan juga pada proses-proses yang running di komputer berlainan

Mekanisme IPC Sebelum mekanisme IPC digunakan, data harus di-packaging ke dalam format transimisi. Langkah ini dinamakan marshalling Proxy bertanggung jawab untuk marshalling data, kemudian mengirimkan data dan meminta instans dari komponen (remote) Stub menerima request, unmarshall data, dan memanggil method yang diminta. Kemudian proses mengembalikan nilai yang diinginkan Contoh : COM (Component Object Model) - Microsoft, CORBA (Common Object Request Broker Architecture - OMG)

Contoh RPC

Kelebihan RPC Relatif mudah digunakan : Pemanggilan remote procedure tidak jauh berbeda dibandingkan pemanggilan local procedure. Sehingga pemrogram dpt berkonsentrasi pd software logic, tidak perlu memikirkan low level details seperti socket, marshalling & unmarshalling. Relatively portable : S/W developed using RPC is easier to be ported compared to sockets. Robust : Sejak th 1980-an RPC telah banyak digunakan dalam pengembangan mission-critical application yg memerlukan scalability, fault tolerance, & reliability.

Kekurangan RPC Tidak fleksibel terhadap perubahan : Static relationship between client & server at run-time. Berdasarkan prosedural /structured programming yang sudah ketinggalan jaman dibandingkan OOP.

Number three Komunikasi Antar Proses Interprocess Communication (IPC) Sumber Ida Nurhaida, ST., MT. DISTRIBUTED SYSTEMS Second Edition, Andrew S.Tanenbaum, Maarten Van Steen