23
SISTEM OPERASI TERDISTRIBUSI

Sistem operasi terdistribusi

Embed Size (px)

Citation preview

Page 1: Sistem operasi terdistribusi

SISTEM OPERASI TERDISTRIBUSI

Page 2: Sistem operasi terdistribusi

SISTEM OPERASI Sistem operasi (Operating System atau OS) adalah

perangkat lunak sistem yang bertugas untuk melakukan kontrol dan manajemen perangkat keras serta operasi-operasi dasar sistem, termasuk menjalankan software aplikasi seperti program-program pengolah kata dan browser web.

Sistem Operasi secara umum terdiri dari beberapa bagian:

1.Mekanisme Boot, yaitu meletakkan kernel ke dalam memory

2.Kernel, yaitu inti dari sebuah Sistem Operasi3.Command Interpreter atau shell, yang bertugas

membaca input dari pengguna4.Pustaka-pustaka, yaitu yang menyediakan kumpulan

fungsi dasar dan standar yang dapat dipanggil oleh aplikasi lain

5.Driver untuk berinteraksi dengan hardware eksternal, sekaligus untuk mengontrol mereka.

Page 3: Sistem operasi terdistribusi

SISTEM OPERASI TERDISTRIBUSI

Page 4: Sistem operasi terdistribusi

Sistem operasi terdistribusi adalah salah satu implementasi dari sistem terdistribusi, di mana sekumpulan komputer dan prosesor yang heterogen terhubung dalam satu jaringan. Tujuan utamanya adalah untuk memberikan hasil secara lebih, terutama dalam:

file system name space Waktu pengolahan Keamanan Akses ke seluruh resources, seperti prosesor, memori, penyimpanan sekunder, dan perangakat keras

Proses:- Dijalankan secara bersamaan (execute concurrently)- interaksi untuk bekerjasama dalam mencapai tujuan yang sama- mengkoordinasikan aktifitas dan pertukaran informasi yaitu pesan yang dikirim melalui jaringan komunikasi

Page 5: Sistem operasi terdistribusi

SISTEM OPERASI JARINGAN VERSUS SISTEM OPERASI TERDISTRIBUSI Suatu sistem operasi terdistribusi yang sejati

adalah yang berjalan pada beberapa buah mesin, yang tidak melakukan sharing memori, tetapi terlihat bagi user sebagai satu buah komputer single. Contoh dari sistem seperti ini adalah Amoeba.

Untuk dapat membedakannya, sistem operasi jaringan memiliki ciri-ciri sebagai berikut:

a. Tiap komputer memiliki sistem operasi sendirib.Tiap personal komputer memiliki sistem file

sendiri, di mana data-data disimpanc.Sistem operasi tiap komputer dapat berbeda-beda

atau heterogend.Pengguna harus memikirkan keberadaan

komputer lain yang terhubung, dan harus mengakses, biasanya menggunakan remote login (telnet)

e.File system dapat digunakan dengan dukungan NFS Sistem

Page 6: Sistem operasi terdistribusi

FUNGSI SISTEM OPERASI TERDISTRIBUSI

Page 7: Sistem operasi terdistribusi

Komputer (Resource Manager).Semua komponen yang memberikan fungsi (manfaat) atau

dengan pengertian lain adalah semua yang terdapat atau terhubung ke sistem komputer dapat untuk memindahkan, menyimpan, dan memproses data, serta untuk mengendalikan fungsi-fungsi tersebut.

Sumber daya pada sistem komputer, antara lain :1. Sumber daya fisik Seperti keyboard, bar-code reader, mouse, joystick, lightpen,

track-ball, touchscreen, pointing devices, floppy disk drive, hard-disk, tape drive, optical disk, CD ROM drive, CRT, LCD, printer, modem, ethernet card, PCMCIA, RAM, cache memory, register, kamera, sound card, radio, digitizer, scanner, plotter, dan sebagainya.

2. Sumber daya abstrakSeperti Semaphore untuk pengendalian sinkronisasi proses-

proses, PCB (Process Control Block) untuk mencatat dan mengendalikan proses, tabel segmen, tabel page, i-node, FAT, file dan sebagainya.

Page 8: Sistem operasi terdistribusi

Manfaat KomputasiSalah satu keunggulan sistem operasi terdistribusi ini

adalah bahwa komputasi berjalan dalam keadaan paralel. Proses komputasi ini dipecah dalam banyak titik, yang mungkin berupa komputer pribadi, prosesor tersendiri, dan kemungkinan perangkat prosesor-prosesor yang lain.

ReliabilitasFitur unik yang dimiliki oleh DOS ini adalah reliabilitas.

Berdasarkan design dan implementasi dari design sistem ini, maka hilangnya satu node tidak akan berdampak terhadap integritas sistem. Hal ini berbeda dengan PC, apabila ada salah satu hardware yang mengalami kerusakan, maka sistem akan berjalan tidak seimbang, bahkan sistem bisa tidak dapat berjalan atau mati.

KomunikasiSistem operasi terdistribusi biasanya berjalan dalam

jaringan dan biasanya melayani koneksi jaringan. Sistem ini biasanya digunakan user untuk proses networking. Uses dapat saling bertukar data, atau saling berkomunikasi antara titik baik secara LAN maupun WAN.

Page 9: Sistem operasi terdistribusi

KOMPONEN INTI SO

Komponen sistem operasi terdiri dari manajemen proses, manajemen memori utama, manajemen berkas, manajemen sistem I/O, manajemen penyimpanan sekunder, sistem proteksi, jaringan dan Command-Interpreter System.

Page 10: Sistem operasi terdistribusi

SISTEM OPERASI AMOEBA

Page 11: Sistem operasi terdistribusi

HARDWARE SISTEM OPERASI TERDISTRIBUSI

Sistem Amoeba ini tumbuh dari bawah hingga akhirnya tumbuh menjadi sistem operasi terdistribusi.

Inilah keunggulan sistem operasi terdistribusi dalam hal reliabilitas. Apabila ada satu unit pemroses yang mati, maka proses yang dialokasikan harus di restart, tetapi integritas sistem tidak akan terganggu, apabila proses deteksi berjalan dengan baik. Desain sistem ini memungkinkan untuk 10 sampai 100 prosesor. Spesifikasi perangkat keras yang harus disediakan pada tiap cluster minimalnya adalah :

File server: 16 MB RAM, 300MB HD, Ethernet card. Workstation: 8 MB RAM, monitor, keyboard, mouse Pool processor: 4 MB RAM, 3.5” floppy drive

Page 12: Sistem operasi terdistribusi

MACAM- MACAM SISTEM OPERASI TERDISTRIBUSI

Beberapa contoh dari sistem operasi terdistribusi ini diantaranya :

Amoeba (Vrije Universiteit). Amoeba adalah sistem berbasis mikro-kernel yang tangguh yang menjadikan banyak workstation personal menjadi satu sistem terdistribusi secara transparan.

Angel (City University of London). Angel didesain sebagai sistem operasi terdistribusi yang pararel, walaupun sekarang ditargetkan untuk PC dengan jaringan berkecepatan tinggi. Model komputasi ini memiliki manfaal ganda, yaitu memiliki biaya awal yang cukup murah dan juga biaya incremental yang rendah.

Page 13: Sistem operasi terdistribusi

Chorus (Sun Microsystems). CHORUS merupakan keluarga dari sistem operasi berbasis mikro-kernel untuk mengatasi kebutuhan komputasi terdistribusi tingkat tinggi di dalam bidang telekomunikasi, internetworking, sistem tambahan, realtime, sistem UNIX, supercomputing, dan kegunaan yang tinggi.

GLUnix (University of California, Berkeley). Sampai saat ini, workstation dengan modem tidak memberikan hasil yang baik untuk membuat eksekusi suatu sistem operasi terdistribusi dalam lingkungan yang shared dengan aplikasi yang berurutan. Hasil dari penelitian ini adalah untuk menempatkan resource untuk performa yang lebih baik baik untuk aplikasi pararel maupun yang seri/berurutan.

Page 14: Sistem operasi terdistribusi

PROSES DAN TREAD SISTEM OPERASI

Proses : program yang sedang dijalankan Thread adalah sebuah alur kontrol dari sebuah

proses. Kontrol thread tunggal ini hanya memungkinkan proses untuk menjalankan satu tugas pada satu waktu.

Perbedaan antara thread tunggal dan multithreading adalah multithread dapat mengerjakan lebih dari satu tugas pada satu satuan waktu.

Page 15: Sistem operasi terdistribusi

Contohnya sebuah web browser mempunyai thread untuk menampilkan gambar atau tulisan sedangkan thread yang lain berfungsi sebagai penerima data dari network.

Kadang kala ada situasi dimana sebuah aplikasi diperlukan untuk menjalankan beberapa tugas yang serupa.

Solusinya adalah dengan membuat web server menjadi multi-threading. Dengan ini maka sebuah web server akan membuat thread yang akan mendengar permintaan klien, ketika permintaan lain diajukan maka web server akan menciptakan thread lain yang akan melayani permintaan tersebut.

Page 16: Sistem operasi terdistribusi
Page 17: Sistem operasi terdistribusi

KEUNTUNGAN MULTITHREADING Keuntungan dari program yang multithreading dapat

dipisah menjadi empat kategori: 1. Responsi: Membuat aplikasi yang interaktif menjadi

multithreading dapat membuat sebuah program terus berjalan meski pun sebagian dari program tersebut diblok atau melakukan operasi yang panjang, karena itu dapat meningkatkan respons kepada pengguna. Sebagai contohnya dalam web browser yang multithreading, sebuah thread dapat melayani permintaan pengguna sementara thread lain berusaha menampilkan image.

2. Berbagi sumber daya: thread berbagi memori dan sumber daya dengan thread lain yang dimiliki oleh proses yang sama. Keuntungan dari berbagi kode adalah mengizinkan sebuah aplikasi untuk mempunyai beberapa thread yang berbeda dalam lokasi memori yang sama.

Page 18: Sistem operasi terdistribusi

3. Ekonomi: dalam pembuatan sebuah proses banyak dibutuhkan pengalokasian memori dan sumber daya. Alternatifnya adalah dengan penggunaan thread, karena thread berbagi memori dan sumber daya proses yang memilikinya maka akan lebih ekonomis untuk membuat dan context switch thread. Pada Solaris, pembuatan proses lebih lama 30 kali dibandingkan pembuatan thread, dan context switch proses 5 kali lebih lama dibandingkan context switch thread.

4. Utilisasi arsitektur multiprocessor: Keuntungan dari multithreading dapat sangat meningkat pada arsitektur multiprocessor, dimana setiap thread dapat berjalan secara pararel di atas processor yang berbeda. Pada arsitektur processor tunggal, CPU menjalankan setiap thread secara bergantian tetapi hal ini berlangsung sangat cepat sehingga menciptakan ilusi pararel, tetapi pada kenyataannya hanya satu thread yang dijalankan CPU pada satu-satuan waktu (satu-satuan waktu pada CPU biasa disebut time slice atau quantum).

Page 19: Sistem operasi terdistribusi

MULTITHREADING MODELS

a. Thread pengguna: Thread yang pengaturannya dilakukan oleh pustaka thread pada tingkatan pengguna. Karena pustaka yang menyediakan fasilitas untuk pembuatan dan penjadwalan thread, thread pengguna cepat dibuat dan dikendalikan.

b. Thread Kernel: . Thread yang didukung langsung oleh kernel. Pembuatan, penjadwalan dan manajemen thread dilakukan oleh kernel pada kernel space. Karena dilakukan oleh sistem operasi, proses pembuatannya akan lebih lambat jika dibandingkan dengan thread pengguna.

Page 20: Sistem operasi terdistribusi

MODEL-MODEL MULTITHREADING

a. Model Many-to-One. Model ini memetakan beberapa thread tingkatan pengguna ke sebuah thread. tingkatan kernel. Pengaturan thread dilakukan dalam ruang pengguna sehingga efisien. Hanya satu thread pengguna yang dapat mengakses thread kernel pada satu saat. Jadi Multiple thread tidak dapat berjalan secara paralel pada multiprosesor. Contoh: Solaris Green Threads dan GNU Portable Threads.

b. Model One-to-One. Model ini memetakan setiap thread tingkatan pengguna ke setiap thread. Ia menyediakan lebih banyak concurrency dibandingkan model Many-to-One. Keuntungannya sama dengan keuntungan thread kernel. Kelemahan model ini ialah setiap pembuatan thread pengguna memerlukan tambahan thread kernel. Karena itu, jika mengimplementasikan sistem ini maka akan menurunkan kinerja dari sebuah aplikasi sehingga biasanya jumlah thread dibatasi dalam sistem. Contoh: Windows NT/XP/2000 , Linux, Solaris 9.

c. Model Many-to-Many. Model ini memultipleks banyak thread tingkatan pengguna ke thread kernel yang jumlahnya sedikit atau sama dengan tingkatan pengguna. Model ini mengizinkan developer membuat thread sebanyak yang ia mau tetapi concurrency tidak dapat diperoleh karena hanya satu thread yang dapat dijadwalkan oleh kernel pada suatu waktu. Keuntungan dari sistem ini ialah kernel thread yang bersangkutan dapat berjalan secara paralel pada multiprosessor.

Page 21: Sistem operasi terdistribusi
Page 22: Sistem operasi terdistribusi

PEMBATALAN THREAD (THREAD CANCELLATION)

Thread Cancellation ialah pembatalan thread sebelum tugasnya selesai. Umpamanya, jika dalam program Java hendak mematikan Java Virtual Machine (JVM). Sebelum JVM dimatikan, maka seluruh thread yang berjalan harus dibatalkan terlebih dahulu. Contoh lain adalah di masalah search. Apabila sebuah thread mencari sesuatu dalam database dan menemukan serta mengembalikan hasilnya, thread sisanya akan dibatalkan. Thread yang akan diberhentikan biasa disebut target thread.

Pemberhentian target Thread dapat dilakukan dengan 2 cara:

a. Asynchronous cancellation. Suatu thread seketika itu juga membatalkan target thread.

b. Deferred cancellation. Suatu thread secara periodik memeriksa apakah ia harus batal, cara ini memperbolehkan target thread untuk membatalkan dirinya secara terurut.

Page 23: Sistem operasi terdistribusi

PENJADWALAN THREAD

Begitu dibuat, thread baru dapat dijalankan dengan berbagai macam penjadwalan. Kebijakan penjadwalanlah yang menentukan setiap proses, di mana proses tersebut akan ditaruh dalam daftar proses sesuai proritasnya dan bagaimana ia bergerak dalam daftar proses tersebut.

Untuk menjadwalkan thread, sistem dengan model mulithreading many to many atau many to one menggunakan:

a. Process Contention Scope (PCS). Pustaka thread menjadwalkan thread pengguna untuk berjalan pada LWP (lightweight process) yang tersedia.

b. System Contention Scope (SCS). SCS berfungsi untuk memilih satu dari banyak thread , kemudian menjadwalkannya ke satu thread tertentu(CPU / Kernel).