Distributed Operating System

41
Distributed Operating System Munawar, PhD

Transcript of Distributed Operating System

Page 1: Distributed Operating System

Distributed

Operating System

Munawar, PhD

Page 2: Distributed Operating System

Latar Belakang

Perkembangan pesat teknologi informasi

menyebabkan bertambahnya permintaan suatu

sistem, baik berupa perangkat keras maupun

perangkat lunak yang dapat digunakan dengan baik

dan cepat.

Page 3: Distributed Operating System
Page 4: Distributed Operating System
Page 5: Distributed Operating System

Permintaan yang terus bertambah ini tidak sebanding

dengan kemampuan perangkat keras yang ada. Salah

satu cara untuk mengatasi hal itu dibuat

pengembangan di sisi perangkat lunak dengan

membuat suatu sistem virtual dimana beberapa

perangkat keras atau komputer dihubungkan dalam

jaringan dan diatur oleh sebuah sistem operasi yang

mengatur seluruh proses yang ada pada setiap

komputer tersebut sehingga memungkinkan proses

berjalan dengan cepat.

Page 6: Distributed Operating System

How google search engine works

Page 7: Distributed Operating System

Sistem operasi yang mengatur proses ini sering disebut

sebagai sistem operasi terdistribusi (distributed

operating system) .

Sistem operasi terdistribusi ini sekarang menjadi trend,

terutama untuk riset yang kadang membutuhkan CPU

yang sangat cepat untuk melakukan perhitungan yang

sangat kompleks.

Page 8: Distributed Operating System

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.

Pengguna tidak perlu memikirkan keberadaan

perangkat keras yang ada, seperti prosesor. Contoh

dari sistem seperti ini adalah Amoeba.

Page 9: Distributed Operating System
Page 10: Distributed Operating System

Sistem operasi terdistribusi berbeda dengan sistem

operasi jaringan. SO jaringan memiliki ciri-ciri sebagai

berikut:

a. Tiap komputer memiliki sistem operasi sendiri

b. Tiap PC memiliki sistem file sendiri, dimana data disimpan

c. SO tiap komputer dapat berbeda-beda atau heterogen

d. Pengguna harus memikirkan keberadaan komputer lain

yang terhubung, dan harus mengakses, biasanya

menggunakan remote login (telnet)

e. File system dapat digunakan dengan dukungan NFS

Page 11: Distributed Operating System

Arsitektur Distibuted OS

Page 12: Distributed Operating System

SO adalah

Sistem operasi (OS) adalah sekumpulan software yang

mengatur sumber daya di hardware komputer dan

memberikan layanan bagi program komputer.

Sistem Operasi merupakan komponen penting dari

sistem perangkat lunak dalam sebuah komputer. Program

aplikasi biasanya membutuhkan sistem operasi untuk

bisa berfungsi.

Untuk fungsi hardware seperti I/O dan alokasi

memory, sistem operasi berfungsi sebagai perantara

antara program dengan komputer hardware. Meskipun

demikian aplikasi dijalankan secara langsung oleh

hardware dan biasanya akan melakukan system call ke

fungsi di OS atau di-interupsi oleh OS tersebut.

Page 13: Distributed Operating System

SO Modern

Sistem operasi dapat ditemukan di hampir semua alat

yang mempunyai fungsi komputer mulai

dari handphone, video game hingga super komputer dan

web server.

Contoh sistem operasi modern

Android, BSD, iOS, Linux, Mac OS

X, Microsoft Windows, and IBM z/OS.

Semuanya, kecuali Windows dan z/OS, mempunyai akar

yang sama yaitu Unix

Page 14: Distributed Operating System

Tipe Sistem Operasi

(1) Real-time

Sistem operasi real-time adalah sebuah sistem

operasi multitasking yang ditujukan untuk menjalankan aplikasi real-

time.

Sistem Operasi real-time biasanya menspesialisasikan pada

algoritma scheduling (penjadwalan) sehingga mereka dapat

mencapai perilaku yang deterministik.

Tujuan utama sebuah sistem operasi real-time adalah respons yang

cepat dan dapat diprediksi untuk berbagai kejadian.

Sistem operasi ini dirancang berdasarkan event-driven atau time-

sharing atau kedua-nya.

Sebuah sistem event-driven melakukan switching antar task

berdasarkan prioritas atau kejadian (event) dari luar,

sementara sistem operasi time-sharing melakukan switching antar

task berbasis pada interupsi clock.

Page 15: Distributed Operating System

Tipe Sistem Operasi

(2) Multi-user

Sistem operasi multi-user memungkinkan banyak pengguna

untuk mengakses sistem komputer pada saat yang sama.

Sistem time-sharing dan server di Internet dapat dikategorikan

sebagai sistem multi-user karena mereka memungkinkan

banyak pengguna untuk mengakses komputer dengan cara

berbagai waktu (sharing time).

Sistem operasi single user hanya satu pengguna tapi dapat

menjalankan multiple program pada saat yang sama.

Page 16: Distributed Operating System

Tipe Sistem Operasi

(3) Multi-tasking vs. single-tasking

Sebuah sistem operasi multi-tasking memungkinkan lebih dari

satu program untuk berjalan pada satu saat, dilihat dari skala

waktu manusia.

Sebuah sistem single-tasking hanya dapat menjalankan satu

program. Ada dua tipe Multi-tasking, yaitu: (1) pre-emptive dan

(2) co-operative. Pada pre-emptive multitasking, SO akan

membagi CPU time dan mendedikasikan satu slot untuk setiap

program.

Di SO Unix-like, seperti, Solaris dan Linux, biasanya

mendukung pre-emptive multitasking, seperti juga AmigaOS.

Cooperative multitasking dapat dicapai dengan cara saling

mengandalkan satu sama lain untuk memberikan waktu / slot

time ke proses yang lain dengan aturan yang baku.

Page 17: Distributed Operating System

Tipe Sistem Operasi

(4) Sistem Terdistribusi

Sebuah sistem operasi terdistribusi mengatur sebuah

kelompok dari komputer yang independen dan membuat

mereka tampak seperti satu buah komputer.

Dengan perkembangan jaringan komputer

memungkinkan sambungan dan komunikasi satu sama

lain untuk membangun distributed computing.

Komputasi terdistribusi dilakukan oleh lebih dari satu

mesin. Jika komputer dalam satu group bekerjasama,

maka mereka akan membangun sebuah distributed

system / sistem terdistribusi.

Page 18: Distributed Operating System

Tipe Sistem Operasi

(5) Sistem Embedded

Sistem operasi embedded dirancang untuk digunakan di

sistem komputer embedded.

Sistem operasi embedded dioperasikan di mesin kecil

seperti PDA (Personal Digital Assistant), atau Smartphone.

Sistem operasi ini dapat beroperasi dengan sumber daya

yang sangat terbatas. Sistem operasi ini dirancang agar

sangat kecil dan sangat effisien.

Contoh dari sistem operasi embedded ini adalah OpenWRT.

Page 19: Distributed Operating System

SO Terdistribusi

Sistem operasi terdistribusi adalah salah satu implementasi

dari sistem terdistribusi, dimana sekumpulan komputer dan

prosesor yang heterogen terhubung dalam satu jaringan.

Koleksi-koleksi dari objek-objek ini secara tertutup bekerja

secara bersama-sama untuk melakukan suatu tugas atau

pekerjaan tertentu.

Tujuan utamanya adalah untuk memberikan hasil secara

lebih, terutama dalam:

o file system

o name space

oWaktu pengolahan

oKeamanan

oAkses ke seluruh resources, seperti prosesor, memori,

penyimpanan sekunder, dan perangkat keras

Page 20: Distributed Operating System

SO Terdistribusi

Sistem operasi terdistribusi bertindak sebagai sebuah infrastruktur/rangka dasar untuk network-transparent resource management.

Infrastruktur mengatur low-level resources (seperti Processor, memory, network interface dan peripheral device yang lain) untuk menyediakan sebuah platform untuk pembentukan/penyusunan higher-level resources (seperti Spreadsheet, electronic mail messages, windows).

Page 21: Distributed Operating System

Manfaat SO Terdistribusi

Shared Resource.

Walaupun perangkat sekarang sudah memiliki kemampuan yang

cepat dalam proses- proses komputasi, atau misal dalam

mengakses data, tetapi pengguna masih saja menginginkan

sistem berjalan dengan lebih cepat. Apabila hardware terbatas,

kecepatan yang diinginkan user dapat di atasi dengan

menggabung perangkat yang ada dengan sistem DOS.

Manfaat Komputasi

Salah 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. Sistem operasi terdistribusi ini

bekerja baik dalam memecah komputasi ini dan baik pula dalam

mengambil kembali hasil komputasi dari titik-titik cluster untuk

ditampilkan hasilnya

Page 22: Distributed Operating System

Manfaat SO Terdistribusi

Reliabilitas

Fitur 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.

Komunikasi

Sistem operasi terdistribusi berjalan dalam jaringan dan

biasanya melayani koneksi jaringan. Sistem ini umumnya

digunakan user untuk proses networking. User dapat saling

bertukar data, atau saling berkomunikasi antar titik baik

secara LAN maupun WAN.

Page 23: Distributed Operating System

DOS versus NOS

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:

Tiap komputer memiliki sistem operasi sendiri

Tiap personal komputer memiliki sistem file sendiri, di mana data-data

disimpan

Sistem operasi tiap komputer dapat berbeda-beda atau heterogen

Pengguna harus memikirkan keberadaan komputer lain yang terhubung,

dan harus mengakses, biasanya menggunakan remote login (telnet)

File system dapat digunakan dengan dukungan NFS Sistem

Contoh dari sistem ini adalah UNIX dan LINUX Server.

Page 24: Distributed Operating System

Skema NOS

Page 25: Distributed Operating System

Komunikasi kelompok

Dalam sistem tersebar, komunikasi dapat melibatkan

banyak proses sekaligus, tidak hanya dua. Misalnya

sekelompok file server memberi layanan file dan

menyediakan kemampuan fault tolerance.

Pada sistem fault tolerance, client mengirim pesan ke

semua server untuk menjamin dilayani oleh satu server

Page 26: Distributed Operating System

Contoh aplikasi SO Terdistribusi

Page 27: Distributed Operating System

Contoh SO Terdistribusi

Amoeba (Vrije Universiteit). Amoeba adalah sistem

berbasis mikro-kernel yang tangguh yang menjadikan

banyak workstation personal menjadi satu sistem

terdistribusi secara transparan.

Page 28: Distributed Operating System

Amoeba

Page 29: Distributed Operating System

Amoeba is a powerful microkernel-based system that

turns a collection of workstations or single-board

computers into a transparent distributed system.

It has been in use in academia, industry, and

government for about 5 years.

It runs on the SPARC (Sun4c and Sun4m), the 386/486,

68030, and Sun 3/50 and Sun 3/60.

Page 30: Distributed Operating System

At the Vrije Universiteit, Amoeba

runs on a collection of 80 single-

board SPARC computers

connected by an Ethernet, forming

a powerful processor pool.

It is used for research in distributed

and parallel operating systems,

runtime systems, languages, and

applications.

Page 31: Distributed Operating System

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 32: Distributed Operating System

Komponen Amoeba

Workstation atau komputer personal mengeksekusi proses yang memerlukan interaksi dari user seperti text editor atau manager berbasis window. Server khusus memiliki fungsi untuk melakukan tugas yang spesifik. Server ini mengambil alih proses yang memerlukan I/O yang khusus dari larikan disk.

Gateway berfungsi untuk mengambil alih tugas untuk terhubung ke jaringan WAN.

Procesor pool mengambil alih semua proses yang lain. Tiap unit ini biasanya terdiri dari prosesor, memori lokal, dan koneksi jaringan. Tiap prosesor mengerjakan satu buah proses sampai prosesor yang tidak digunakan habis.

Page 33: Distributed Operating System

Komponen Amoeba

Untuk selanjutnya proses yang lain berada dalam antrian

menunggu proses yang lain selesai. 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.

Page 34: Distributed Operating System

Arsitektur Software

Sistem operasi terdistribusi sejati memiliki arsitektur

software yang unik. Arsitektur software ini dikarakterkan

dalam objek di dalam hubungan antara klien dan server.

Proses-proses yang terjadi di klien menggunakan remote

procedure yang memanggil dan mengirimkan request ke

server untuk memproses data atau objek yang dibawa.

Tiap objek yang dibawa memiliki karakteristik yang

disebut sebagai kapabilitas.

Page 35: Distributed Operating System

Kapabilitas ini besarnya adalah 128 bits. 48 bits pertama

menunjukkan servis mana yang memiliki objek tersebut. 24

bits berikutnya adalah nomor dari objek. 8 bits berikutnya

menampilkan operasi yang diijinkan terhadap objek yang

bersangkutan. Dan 48 bits terakhir merupakan “check field”

yang merupakan field yang telah terenkripsi agar tidak

dapat dimodifikasi oleh proses yang lain.

Operasi diselesaikan oleh RPC (remote procedure calls)

yang dibuat oleh klien di dalam proses yang kecil dan

ringan. Proses dengan tipe seperti ini memiliki bidang

alamat sendiri, dan bisa saja memiliki satu atau lebih

hubungan. Hubungan ini ketika berjalan memiliki program

counter dan stack sendiri, tetapi dapat saling berbagi kode

dan data antara hubungan lain di dalam proses.

Page 36: Distributed Operating System

Manajemen Berkas

Dalam sistem operasi terdistribusi ini sistem berkas

dipetakan dengan baik dengan berorientasi pada objek

yang ada dan kapabilitasnya. Hal ini akan menjadi

berkesan abstrak, terutama untuk kelas pengguna. Ada

tingkatan yang lebih ekstra dalam pemetaan berkas yang

ada, mulai dari simbol, pengurutan nama path, dan

kapabilitasnya. Melalui sistem ini objek lokal tidak ada

bedanya dengan objek publik.

Dalam sistem ini ada semacan tingkatan akses yang

sebenarnya mirip UNIX. Setiap user dan group memiliki

hak akses yang berbeda-beda pada setiap berkas atau

folder yang ada pada sistem operasi terdistribusi.

Page 37: Distributed Operating System

Manajemen Berkas

Dalam implementasi sistem Amoeba, hak akses yang

dimiliki pengguna terbatas pada hak baca file,

tulis/membuat file, dan hapus file. Dengan hal ini, maka

keamanan server dapat terjaga.

Pelayanan terhadap direktori yang ada dibuat sangat

ketat dalam hal keamanan. Bahkan dibuat semacan

kode acak yang akan menyandikan file tersebut

sehingga tidak mudah dibaca oleh siapapun. Kode

penyandinya akan digunakan lagi oleh sistem untuk

mengembalikan file seperti semula kepada user. Kode ini

hanya akan diberikan kepada pemilik file tersebut. Jadi

ketika user mengakses file/berkas yang bersangkutan,

maka kode penyandi akan dibuat oleh sistem, agar

pemilik file dapat membacanya.

Page 38: Distributed Operating System

Manajemen Proses

Dalam sistem operasi terdistribusi yang sejati, tiap

proses berada pada alamat segmen-segmen virtual.

Proses-proses ini dapat memiliki lebih dari satu

hubungan. Kaitan-kaitan ini dialokasikan ke prosesor-

prosesor sampai semua prosesor habis digunakan.

Hasil dari manajemen proses seperti ini menghasilkan

utilisasi yang lebih baik, dimana tidak perlu switch

apabila harus ada proses yang berat, karena satu proses

dialokasikan ke satu prosesor.

Page 39: Distributed Operating System

Proses memiliki dua macam keadaan, yaitu proses

sedang berjalan atau sedang stunned. Stunned terjadi

bila proses masih ada, tetapi tidak melakukan

eksekusi apapun, atau sedang dalam proses debug.

Pada keadaan ini kernel memberitahu komunikator

(kernel yang lain) adanya proses yang dalam keadaan

stunned. Kernel yang lain tersebut berusaha

berkomunikasi dengan proses itu sampai proses di-kill

atau proses tersebut berjalan kembali. Debugging dan

migrasi pada proses ini selesai setelah adanya

stunning.

Page 40: Distributed Operating System

Kelemahan SO Terdistribusi

Perawatan tiap cluster yang sangat sulit, selain itu juga boros

daya, karena harus menghidupkan banyak CPU,

membutuhkan jaringan berkecepatan tinggi.

Kelemahan-kelemahan tersebut sebenarnya tidak seberapa

jika dibandingkan dengan hasilnya. Misalnya saja search

engine paling ramai seperti Google™, yang menggunakan

teknologi ini, karena hardware yang paling canggih saat ini

masih belum mencukupi untuk menangani jutaan request ke

server Google tiap detiknya, sehingga mereka harus membuat

sistem pararel yang mampu melayani keperluan tersebut.

Selain itu dalam dunia research, juga diperlukan sistem ini,

terutama untuk melakukan perhitungan-perhitungan yang

tentu saja sangat rumit dan membutuhkan pemroses yang

hebat dan cepat supaya dapat segera dicari hasilnya.

Page 41: Distributed Operating System

Distributed OS – Munawar, PhD