Bab 4

27
Mata kuliah SISTEM TERDISTRIBUSI PROSES, OBJEK DAN LAYANAN TERDISTRIBUSI

description

 

Transcript of Bab 4

Page 1: Bab 4

Mata kuliahSISTEM TERDISTRIBUSI

PROSES, OBJEK DAN LAYANAN TERDISTRIBUSI

Page 2: Bab 4

Pengantar

• Apa kegiatan yang dilakukan oleh CPU,,?• Sistem batch mengeksekusi jobs seba-gaimana

suatu sistem time-share menggunakan program pengguna (user programs) atau tasks.

• Bahkan suatu sistem pengguna tunggal mampu menjalankan beberapa program pada saat yang sama.

• Dalam banyak hal, seluruh aktivitas ini adalah serupa, maka kita menyebut seluruh program itu proses-proses.

Page 3: Bab 4

Defenisi Proses

• Secara tidak langsung, proses merupakan program yang sedang

dieksekusi.

• Menurut Silberschatz, suatu proses adalah lebih dari sebuah kode

program, yang terkadang disebut text section. Proses juga

mencakup program counter, yaitu sebuah stack untuk menyimpan

alamat dari instruksi yang akan dieksekusi selanjutnya dan

register.

• Tanenbaum juga berpendapat bahwa proses adalah sebuah

program yang dieksekusi yang mencakup program counter

register, dan variabel di dalamnya. Kami tekankan bahwa

program itu sendiri bukanlah sebuah proses.

Page 4: Bab 4

Count’d

Dengan kata lain, proses terdistribusi adalah

sebuah proses yang dijalankan pada lebih dari satu

processor untuk menyelesaikan pekerjaan.

Proses distribusi dirancang agar sebuah program

dapat dijalankan pada berbagai tempat dalam suatu

jaringan computer, baik LAN maupun WAN.

Page 5: Bab 4

Status Proses

Tanenbaum: Running: pada saat menggunakan CPU pada

suatu waktu. Ready: proses diberhentikan sementara karena

menunggu proses lain untuk dieksekusi. Blocked: tidak dijalankan sampai event dari luar,

yang berhubungan dengan proses tersebut terjadi.

Page 6: Bab 4

Count’d

Sedangkan menurut Silberschatz, terdapat lima macam jenisstatus yang mungkin dimiliki oleh suatu proses:

New: status yang dimiliki pada saat proses baru saja dibuat. Running: status yang dimiliki pada saat instruksi-instruksi dari sebuah

proses dieksekusi. Waiting: status yang dimiliki pada saat proses menunggu suatu event

(contohnya: proses I/O). Ready: status yang dimiliki pada saat proses siap untuk dieksekusi

oleh prosesor. Terminated: status yang dimiliki pada saat proses telah selesai

dieksekusi.

Page 7: Bab 4

Count’d

Gambar~3.1: Status proses

Page 8: Bab 4

Proses Control Block

Tiap proses digambarkan dalam sistem operasi oleh sebuah process control block (PCB) - juga disebut sebuah control block. PCB berisikan banyak bagian dari informasi yang berhubungan dengan sebuah proses yang spesifik, termasuk hal-hal di bawah ini:

Status proses: status mungkin, new, ready, running, waiting, halted, dan juga banyak lagi.

Program counter: suatu stack yang berisi alamat dari instruksi selanjutnya untuk dieksekusi untuk proses ini.

CPU register: Register bervariasi dalam jumlah dan jenis, tergantung pada rancangan komputer. Register tersebut termasuk accumulator, register indeks, stack pointer, general-purposes register, ditambah code information pada kondisi apa pun.

Page 9: Bab 4

Count’d

Informasi managemen memori: Informasi ini dapat termasuk suatu

informasi sebagai nilai dari dasar dan batas register, tabel page/halaman,

atau tabel segmen tergantung pada sistem memori yang digunakan oleh

sistem operasi.

Informasi pencatatan: Informasi ini termasuk jumlah dari CPU dan waktu

riil yang digunakan, batas waktu, jumlah akun jumlah job atau proses,

dan banyak lagi.

Informasi status I/O: Informasi termasuk daftar dari perangkat I/O yang

di gunakan pada proses ini, suatu daftar berkas-berkas yang sedang

diakses dan banyak lagi.

PCB hanya berfungsi sebagai tempat penyimpanan informasi yang dapat

bervariasi dari proses yang satu dengan yang lain.

Page 10: Bab 4

Thread

Thread merupakan unit dasar dari penggunaan CPU, yang terdiri dari Thread_ID, program counter, register set, dan stack.

Sebuah thread berbagi code section, data section, dan sumber daya sistem operasi dengan Thread lain yang dimiliki oleh proses yang sama. Thread juga sering disebut lightweight process.

Sebuah proses tradisional atau heavyweight process mempunyai thread tunggal yang berfungsi sebagai pengendali. Perbedaan antara proses dengan thread tunggal dengan proses dengan thread yang banyak adalah proses dengan thread yang banyak dapat mengerjakan lebih dari satu tugas pada satu satuan waktu.

Page 11: Bab 4

Keuntungan Trhead

• Responsi• Berbagi sumber daya• Ekonomi

Page 12: Bab 4

Multithreading Model

1. Many to one Model

Many-to-One model memetakan banyak user-level thread

ke satu kernel thread. Pengaturan thread dilakukan di user space,

oleh karena itu ia efesien tetapi ia mempunyai kelemahan yang

sama dengan user thread. Selain itu karena hanya satu thread

yang dapat mengakses thread pada suatu waktu maka multiple

thread tidak dapat berjalan secara pararel pada multiprocessor.

Userlevel thread yang dimplementasi pada sistem operasi yang

tidak mendukung kernel thread menggunakan Many-to-One

model.

Page 13: Bab 4

Count’d

Page 14: Bab 4

2. One to one Model

One-to-One model memetakan setiap user

thread ke kernel thread. Ia menyediakan lebih banyak

concurrency dibandingkan Many-to-One model.

Keuntungannya sama dengan keuntungan kernel

thread. Kelemahannya model ini adalah setiap

pembuatan user thread membutuhkan pembuatan

kernel thread.

Karena pembuatan thread dapat menurunkan

performa dari sebuah aplikasi maka implmentasi dari

model ini membatasi jumlah thread yang dibatasi

oleh sistem. Contoh sistem operasi yang mendukung

One-to-One model adalah Windows NT dan OS/2.

Page 15: Bab 4

Count’d

Page 16: Bab 4

3. Many to many Model

Many-to-many model multiplexes banyak user-

level thread ke kernel thread yang jumlahnya lebih kecil

atau sama banyaknya dengan user-level thread. Jumlah

kernel thread dapat spesi…k untuk sebagian aplikasi atau

sebagian mesin. Many-to-One model mengizinkan

developer ntuk membuat user thread sebanyak yang ia

mau tetapi concurrency tidak dapat diperoleh karena

hanya satu thread yang dapat dijadual oleh kernel pada

suatu waktu.

Page 17: Bab 4

Count’d

Page 18: Bab 4

Distributed object

Sistem objek terdistribusi dapat mengadopsi arsitektur client-server.

Dalam kasus ini, objek dikelola oleh server dan klien memanggil

method mereka dengan menggunakan remote metode invokasi. Di RMI,

permintaan klien untuk memohon sebuah metode objek dikirim dalam

pesan ke server. invokasi dilakukan dengan melaksanakan metode objek

di server dan hasilnya dikembalikan ke klien dalam pesan lain.

Distributed object dapat mengasumsikan model arsitektur lain. Sebagai

contoh, objek dapat direplikasi dalam rangka memperoleh manfaat

untuk toleransi kesalahan dan meningkatkan kinerja, dan objek dapat

bermigrasi dengan maksud untuk meningkatkan kinerja mereka.

Page 19: Bab 4

CORBA

• Interoperabilitas adalah kemampuan saling bekerjasama antar sistem komputer. Sebenarnya interoperabilitas bukanlah barang baru, karena protokol komunikasi datapun (TCP/IP misalnya) pada dasarnya diciptakan untuk mewujudkan interoperabilitas.

• Interoperabilitas perangkat lunak menuntut homogenitas pada suatu level tertentu. Untuk itu diperlukan semacam 'standarisasi'. Berawal dari keperluan ini lahirlah CORBA (Common Object Request Broker Architecture). CORBA adalah hasil 'kesepakatan' antara sejumlah vendor dan pengembang perangkat lunak terkenal seperti IBM, Hewlett-Packard, dan DEC, yang tergabung dalam sebuah konsorsium bernama OMG (Object Management Group).

• CORBA adalah sebuah arsitektur software yang berbasis pada teknologi berorientasi obyek atau Object Oriented (OO) dengan paradigma client-server. Dalam terminologi OO, sebuah obyek berkomunikasi dengan obyek lain dengan cara pengiriman pesan (message passing).

Page 20: Bab 4

COUNT’D

• Keunikan dari CORBA adalah kemampuannya dalam

menangani heterogenitas antara client dan server (dalam

terminologi CORBA, obyek server dinamakan

implementasi obyek (object implementation). Keduanya

dapat saja diimplementasikan dalam hardware, sistem

operasi, bahasa pemrograman, dan di lokasi yang

berbeda, tetapi tetap bisa saling berkomunikasi. Kuncinya

ada pada sebuah lapisan software yang disebut dengan

ORB(Object Request Broker).

Page 21: Bab 4

COM DAN DCOM

• COM (Component Object Model) adalah spesifikasi mencakup

implementasi yang dikembangkan Microsoft Corporation, yang

menyediakan framework untuk integrasi komponen. Framework

ini mendukung interoperability dan reusability objek-objek

terdistribusi yang memungkinkan developer membangun sistem

dengan melakukan assembly berbagai komponen dari berbagai

vendor. Komponen-komponen tersebut akan berkomunikasi

melalui COM.

Page 22: Bab 4

COUNT’D

• COM dikembangkan menjadi DCOM (Distrubuted COM) untuk mendukung interaksi antar komponen yang terdistribusi (berlokasi di mesin yang berbeda). Dengan DCOM, komponen yang beroperasi di berbagai platform yang berbeda akan dapat berinteraksi.

• COM dan DCOM merepresentasikan teknologi low-level untuk interaksi komponen, sedangkan OLE, ActiveX, dan MTS merepresentasikan higher-level application services yang dibangun di atas COM dan DCOM. Batasan antar berbagai teknologi Microsoft kadang-kadang kurang jelas. Orang seringkali menggunakan terminologi “OLE technologies” yang mencakup COM, atau “Active Platform” sebagai web solution yang lengkap.

Page 23: Bab 4

Layanan Terdistribusi

• Dalam perkembangannya, objek terdistribusi masih

dirasa kurang.

• Untuk itu dikembangkan layanan terdistribusi dimana

bukan lagi objek yang didistribusikan, tetapi sudah

berupa sebuah layanan.

• Teknologi yang menggunakan konsep ini adalah web

service yang menggunakan protocol standard an terbuka

sehingga mudah untuk diadaptasi oleh berbagai pihak

dan dapat beroprasi pada berbagai aplikasi dan platform.

Page 24: Bab 4

Web Service (WS)

• WS, akronin dari Web Service, adalah system

software yang didesain untuk mendukung interaksi

antar computer dalam jaringan.

• WS memiliki antar muka dalam format yang dapat

dibaca oleh computer seperti WSDL (Web Service

Description Language).

• System lain berinteraksi dengan Web Service melalui

massage yang dikirim dengan protocol HTTP.

Page 25: Bab 4

Keuntungan Web Service

a. Web Service memungkinkan aplikasi yang berjalan dalam berbagai platform untuk dapat saling berintraksi.

b. Web Service menggunakan standard an protocol yang terbuka.

c. Dengan menggunakan protocol HTTP, Web Service dapat melalui berbagai macam firewall tampa harus banyak mengubah konfigurasi firewall tersebut.

d. Web service memungkinkan penggabungan aplikasi dan layanan dari berbagai perusahaan untuk menyediakan layanan yang terintegrasi bagi pengguna.

e. Web service memungkinkan penggunaan kembali layanan dan komponen yang ada dalam infastrukturnya.

Page 26: Bab 4

Kelemahan dari Web Service

a. Karena relatife baru, fasilitas standar yang

dimiliki oleh Web Service masih ternatas bila

dibandingkan dengan teknologi yang lebih

matang CORBA.

b. Kinerja Web Service masih kalah dibandingkan

dengan teknologi terdistribusi lainnya karena

menggunakan format teks dalam melakukan

pertukaran data.

Page 27: Bab 4

END,,,,,,,

TERIMA KASIH