06 sistem terdistribusi

92
1 Sistem Operasi Terdistribusi Politeknik Elektronika Negeri Surabaya Institut Tekonolgi Sepuluh Nopember Surabaya

Upload: doni-haryanto

Post on 03-Feb-2016

242 views

Category:

Documents


1 download

DESCRIPTION

sister

TRANSCRIPT

Page 1: 06 Sistem Terdistribusi

1

Sistem Operasi Terdistribusi

Politeknik Elektronika Negeri Surabaya

Institut Tekonolgi Sepuluh Nopember

Surabaya

Page 2: 06 Sistem Terdistribusi

2

Pengantar

Sebuah sistem operasi (OS) adalah sekumpulan software yang mengatur sumber daya di hardware komputer dan memberikan layanan bagi program komputer. 

Sistem Operasi adalah komponen penting dari sistem perangkat lunak dalam sebuah komputer. Program aplikasi biasanya membutuhkan sistem operasi untuk bisa berfungsi.

Untuk fungsi hardware seperti input dan output 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 sistem call ke fungsi di OS atau di interupsi oleh OS tersebut.

Page 3: 06 Sistem Terdistribusi

3

SO Modern

Sistem operasi dapat di temukan di hampir semua alat yang mempunyai fungsi komputer mulai dari handphone, video game hingga super komputer dan web server.

Contoh sistem operasi modern termasuk 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 4: 06 Sistem Terdistribusi

4

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 di prediksi 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 5: 06 Sistem Terdistribusi

5

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 6: 06 Sistem Terdistribusi

6

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. Di pre-emptive multitasking, sistem operasi akan membagi CPU time dan mendedikasikan satu slot untuk setiap program.

Di sistem operasi 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 7: 06 Sistem Terdistribusi

7

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 8: 06 Sistem Terdistribusi

8

Tipe Sistem Operasi

(5) Sistem Embedded

Sistem operasi embedded di rancang untuk digunakan di sistem komputer embedded. 

Sistem operasi embedded di operasikan di mesin kecil seperti PDA (Personal Digital Assistant). 

Sistem operasi ini dapat beroperasi dengan sumber daya yang sangat terbatas. Sistem operasi ini di rancang agar sangat kecil dan sangat effisien.

Contoh dari sistem operasi embedded ini adalah OpenWRT.

Page 9: 06 Sistem Terdistribusi

9

Fungsi SO

Pengelola Seluruh Sumber Daya Pada Sistem Komputer (Resource Manager).

Yang dimaksud dengan sumber daya pada sistem komputer adalah semua komponen yang memberikan fungsi (manfaat) atau dengan pengertian lain adalah semua yang terdapat atau terhubung ke sistem komputer yang dapat untuk memindahkan, menyimpan, dan memproses data, serta untuk mengendalikan fungsi-fungsi tersebut

Page 10: 06 Sistem Terdistribusi

10

Sumberdaya komputer

Sumber daya fisik Contoh dari sumber daya fisik diantaranya keyboard, bar-code reader, mouse,

joystick, light- pen, 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

Sumber daya abstrak, terdiri dari :

Data, misalnya :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.

Program yang berupa kumpulan instruksi yang dapat dijalankan oleh sistem komputer, yang dapat berupa utilitas dan program aplikasi pengolahan data tertentu.

Page 11: 06 Sistem Terdistribusi

11

Fungsi SO

Penyedia layanan (extended/virtual machine), berfungsi untuk :

Memberi abstaksi mesin tingkat tinggi yang lebih sederhana dan menyembunyikan kerumitan perangkat keras. Sistem operasi menyediakan system call (API=Application Programming Interface) yang berfungsi menghindarkan kompleksitas pemograman dengan memberi sekumpulan instruksi yang mudah digunakan.

Basis untuk program lain. Program aplikasi dijalankan di atas sistem operasi yang bertujuan untuk memanfaatkan dan mengendalikan sumber daya sistem komputer secara benar, efisien, dan mudah dengan meminta layanan sistem operasi.

Page 12: 06 Sistem Terdistribusi

12

Komponen Sistem Operasi

Page 13: 06 Sistem Terdistribusi

13

Komponen SO

Komponen sistem operasi terdiri dari

manajemen proses,

manajemen memori utama,

manajemen berkas,

manajemen sistem I/O,

manajemen penyimpanan sekunder,

sistem proteksi, jaringan,

Command-Interpreter System.

Page 14: 06 Sistem Terdistribusi

14

Manajemen Proses

Proses adalah keadaan ketika sebuah program sedang di eksekusi. Sebuah proses membutuhkan beberapa sumber daya untuk menyelesaikan tugasnya. sumber daya tersebut dapat berupa CPU time, memori, berkas-berkas, dan perangkat-perangkat I/O.

Sistem operasi bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan manajemen proses seperti:

• Pembuatan dan penghapusan proses pengguna dan sistem proses.

• Menunda atau melanjutkan proses.

• Menyediakan mekanisme untuk proses sinkronisasi.

• Menyediakan mekanisme untuk proses komunikasi.

• Menyediakan mekanisme untuk penanganan deadlock

Page 15: 06 Sistem Terdistribusi

15

Manajemen Memori Utama

Memori utama atau lebih dikenal sebagai memori adalah sebuah array yang besar dari word atau byte, yang ukurannya mencapai ratusan, ribuan, atau bahkan jutaan. Setiap word atau byte mempunyai alamat tersendiri. Memori Utama berfungsi sebagai tempat penyimpanan yang akses datanya digunakan oleh CPU atau perangkat I/O. Memori utama termasuk tempat penyimpanan data yang sementara (volatile), artinya data dapat hilang begitu sistem dimatikan.

Sistem operasi bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan manajemen memori seperti:

• Menjaga track dari memori yang sedang digunakan dan siapa yang menggunakannya.

• Memilih program yang akan di-load ke memori.

• Mengalokasikan dan meng-dealokasikan ruang memori sesuai kebutuhan.

Page 16: 06 Sistem Terdistribusi

16

Manajemen Penyimpanan Sekunder

Data yang disimpan dalam memori utama bersifat sementara dan jumlahnya sangat kecil. Oleh karena itu, untuk meyimpan keseluruhan data dan program komputer dibutuhkan secondary- storage yang bersifat permanen dan mampu menampung banyak data. Contoh dari secondary- storage adalah harddisk, disket, dll.

Sistem operasi bertanggung-jawab atas aktivitas-aktivitas yang berkaitan dengan disk- management seperti: free-space management, alokasi penyimpanan, penjadualan disk.

Page 17: 06 Sistem Terdistribusi

17

Manajemen Sistem I/O

Sering disebut device manager. Menyediakan "device driver" yang umum sehingga operasi I/O dapat seragam (membuka, membaca, menulis, menutup). Contoh: pengguna menggunakan operasi yang sama untuk membaca berkas pada hard-disk, CD-ROM dan floppy disk.

Komponen Sistem Operasi untuk sistem I/O: • Buffer: menampung sementara data dari/ ke perangkat I/O.

• Spooling: melakukan penjadualan pemakaian I/O sistem supaya lebih efisien (antrian dsb.).

• Menyediakan driver untuk dapat melakukan operasi "rinci" untuk perangkat keras I/O tertentu.

Page 18: 06 Sistem Terdistribusi

18

Manajemen Berkas

Berkas adalah kumpulan informasi yang berhubungan sesuai dengan tujuan pembuat berkas tersebut. Berkas dapat mempunyai struktur yang bersifat hirarkis (direktori, volume, dll.).

Sistem operasi bertanggung-jawab: • Pembuatan dan penghapusan berkas.

• Pembuatan dan penghapusan direktori.

• Mendukung manipulasi berkas dan direktori.

• Memetakan berkas ke secondary storage.

• Mem-backup berkas ke media penyimpanan yang permanen (non-volatile)

Page 19: 06 Sistem Terdistribusi

19

Sistem Proteksi

Proteksi mengacu pada mekanisme untuk mengontrol akses yang dilakukan oleh program, prosesor, atau pengguna ke sistem sumber daya.

Mekanisme proteksi harus: • membedakan antara penggunaan yang sudah diberi izin dan

yang belum.

• Specify the controls to be imposed.

• Provide a means of enforcement.

Page 20: 06 Sistem Terdistribusi

20

Jaringan

Sistem terdistribusi adalah sekumpulan prosesor yang tidak berbagi memori atau clock. Tiap prosesor mempunyai memori sendiri. Prosesor-prosesor tersebut terhubung melalui jaringan komunikasi Sistem terdistribusi menyediakan akses pengguna ke bermacam sumber-daya sistem.

Keuntungannya adalah :• Increased data availability.

• Enhanced reliability.

• Computation speed-up.

• Increased data availability.

• Enhanced reliability

Page 21: 06 Sistem Terdistribusi

21

Command-Interpreter System

Sistem Operasi menunggu instruksi dari pengguna (command driven). Program yang membaca instruksi dan mengartikan control statements umumnya disebut control card interpreter, command line interpreter, dan UNIX shell.

Command Interpreter System sangat bervariasi dari satu sistem operasi ke sistem operasi yang lain dan disesuaikan dengan tujuan dan teknoloigi I/O devices yang ada.

Contohnya : CLI, WIndows, Pen-based (touch)

Page 22: 06 Sistem Terdistribusi

22

Sistem Terdistribusi

Politeknik Elektronika Negeri Surabaya

Institut Tekonolgi Sepuluh Nopember

Surabaya

Page 23: 06 Sistem Terdistribusi

23

Sistem Terdistribusi Sistem terdistribusi adalah sekumpulan prosesor yang

tidak saling berbagi memori atau clock dan terhubung melalui jaringan komunikasi yang bervariasi, yaitu melalui Local Area Network ataupun melalui Wide Area Network.

Prosesor dalam sistem terdistribusi bervariasi, dapat berupa small Microprocessor,  workstation, dan minicomputer

Page 24: 06 Sistem Terdistribusi

24

Why should you Study Distributed Systems?

Application Domain Associated Networked Application

Finance and commerce eCommerce e.g. Amazon and eBay, PayPal, online banking and trading

The information society Web information and search engines, ebooks, Wikipedia; social networking: Facebook and MySpace.

Creative industries and entertainment online gaming, music and film in the home, user-generated content, e.g. YouTube, Flickr

Healthcare health informatics, on online patient records, monitoring patients

Education e-learning, virtual learning environments; distance learning

Transport and logistics GPS in route finding systems, map services: Google Maps, Google Earth

Science The Grid as an enabling technology for collaboration between scientists

Environmental management sensor technology to monitor earthquakes, floods or tsunamis

Page 25: 06 Sistem Terdistribusi

25

Definition of a Distributed System

A distributed system is:

A collection of independent computers

that appear to its users as a single coherent system

(Tanenbaum book)

One in which components located at networked

computers communicate and coordinate their

actions only by passing messages (Coulouris

book)

Page 26: 06 Sistem Terdistribusi

26

Why Distributed Systems?

ScaleProcessing

Data

Diversity in Application Domains

Collaboration

Cost

Page 27: 06 Sistem Terdistribusi

27

Why Distributed Systems?

A. Big data continues to grow:

In mid-2010, the information universe carried 1.2 zettabytes and 2020 predictions expect nearly 44 times more at 35 zettabytes coming our way.

B. Applications are becoming data-intensive.

Page 28: 06 Sistem Terdistribusi

28

Why Distributed Systems?

C. Individual computers have limited resources compared to scale of current day problems & application domains:

1. Caches and Memory:

16KB- 64KB, 2-4 cycles

512KB- 8MB, 6-15 cycles

4MB- 32MB, 30-50 cycles

1GB- 4GB, 300+ cycles

Page 29: 06 Sistem Terdistribusi

29

Why Distributed Systems?

2. Hard Disk Drive:

Limited capacity

Limited number of channels

Limited bandwidth

Page 30: 06 Sistem Terdistribusi

30

Why Distributed Systems?

P

L1

L2

P

L1

L2 Cache

P

L1

P

L1

P

L1

Interconnect

3. Processor:

The number of transistors that can be integrated on a single die has continued to grow at Moore’s pace.

Chip Multiprocessors (CMPs) are now available

A single Processor Chip

A CMP

Page 31: 06 Sistem Terdistribusi

31

Why Distributed Systems?3. Processor (cont’d):

Up until a few years ago, CPU speed grew at the rate of 55% annually, while the memory speed grew at the rate of only 7% [H & P].

Memory

Memory

P

M

P

L1

L2

P

L1

L2 Cache

P

L1

P

L1

P

L1

Interconnect

Processor-Memory speed gap

Page 32: 06 Sistem Terdistribusi

32

Why Distributed Systems? Even if 100s or 1000s of cores are placed on a CMP, it is a challenge to

deliver input data to these cores fast enough for processing.

A Data Setof 4 TBs

4 100MB/S IO Channels

10000 seconds

(or 3 hours) to load data

Memory

P

L1

L2 Cache

P

L1

P

L1

P

L1

Interconnect

Page 33: 06 Sistem Terdistribusi

33

Why Distributed Systems?

Only 3 minutes to load data

A Data Set (data) of 4 TBs

Splits

Memory

P

L1

L2

Memory

P

L1

L2

100 Machines

Page 34: 06 Sistem Terdistribusi

34

Requirements But this requires:

A way to express the problem as parallel processes and execute them on different machines (Programming Models and Concurrency).

A way for processes on different machines to exchange information (Communication).

A way for processes to cooperate, synchronize with one another and agree on shared values (Synchronization).

A way to enhance reliability and improve performance (Consistency and Replication).

Page 35: 06 Sistem Terdistribusi

35

Requirements But this requires (Cont.):

A way to recover from partial failures (Fault Tolerance).

A way to secure communication and ensure that a process gets only those access rights it is entitled to (Security).

A way to extend interfaces so as to mimic the behavior of another system, reduce diversity of platforms, and provide a high degree of portability and flexibility (Virtualization)

Page 36: 06 Sistem Terdistribusi

36

Sistem Terdistribusi Berikut adalah ilustrasi struktur sistem terdistribusi:

Page 37: 06 Sistem Terdistribusi

37

Karakteristik Sistem Terdistribusi

Concurrency of components.  Pengaksesan suatu komponen/sumber daya (segala hal yang dapat digunakan bersama dalam jaringan komputer, meliputi H/W dan S/W) secara bersamaan. Contoh: Beberapa pemakai browser mengakses halaman web secara bersamaan

No global clock.  Hal ini menyebabkan kesulitan dalam mensinkronkan waktu seluruh komputer/perangkat yang terlibat. Dapat berpengaruh pada pengiriman pesan/data, seperti saat beberapa proses berebut ingin masuk ke critical session.

Independent failures of components.  Setiap komponen/perangkat dapat mengalami kegagalan namun komponen/perangkat lain tetap berjalan dengan baik.

Page 38: 06 Sistem Terdistribusi

38

Mengapa Sistem Terdistribusi

Resource Sharing.  Dalam sistem terdistribusi, situs-situs yang berbeda saling terhubung satu sama lain melalui jaringan sehingga situs yang satu dapat mengakses dan menggunakan sumber daya yang terdapat dalam situs lain. Misalnya, user di situs A dapat menggunakan laser printer yang dimiliki situs B dan sebaliknya user di situs B dapat mengakses file yang terdapat di situs A.

Computation Speedup.  Apabila sebuah komputasi dapat dipartisi menjadi beberapa subkomputasi yang berjalan bersamaan, maka sistem terdistribusi akan mendistribusikan subkomputasi tersebut ke situs-situs dalam sistem. Dengan demikian, hal ini meningkatkan kecepatan komputasi (computation speedup).

Page 39: 06 Sistem Terdistribusi

39

Mengapa Sistem Terdistribusi

Reliability.  Dalam sistem terdistribusi, apabila sebuah situs mengalami kegagalan, maka situs yang tersisa dapat melanjutkan operasi yang sedang berjalan. Hal ini menyebabkan reliabilitas sistem menjadi lebih baik.

Communication.  Ketika banyak situs saling terhubung melalui jaringan komunikasi, user dari situs-situs yang berbeda mempunyai kesempatan untuk dapat bertukar informasi.

Page 40: 06 Sistem Terdistribusi

40

Tantangan Sistem Terdistribusi

Keheterogenan perangkat/multiplisitas perangkat.  Suatu sistem terdistribusi dapat dibangun dari berbagai macam perangkat yang berbeda, baik sistem operasi, H/W maupun S/W.

Keterbukaan.  Setiap perangkat memiliki antarmuka (interface) yang di-publish ke komponen lain. Perlu integrasi berbagai komponen yang dibuat oleh programmer atau vendor yang berbeda

Keamanan.  Shared resources dan transmisi informasi/data perlu dilengkapi dengan enkripsi.

Page 41: 06 Sistem Terdistribusi

41

Tantangan Sistem Terdistribusi

Penangan kegagalan.  Setiap perangkat dapat mengalami kegagalan secara independen. Namun, perangkat lain harus tetap berjalan dengan baik.

Concurrency of components.  Pengaksesan suatu komponen/sumber daya secara bersamaan oleh banyak pengguna.

Transparansi.  Bagi pemakai, keberadaan berbagai perangkat (multiplisitas perangkat) dalam sistem terdistribusi tampak sebagai satu sistem saja

Page 42: 06 Sistem Terdistribusi

42

Fitur Sistem Terdistribusi

Data Migration.  Misalnya, user di situs A ingin mengakses data di situs B. Maka, transfer data dapat dilakukan melalui dua cara, yaitu dengan mentransfer keseluruhan data atau mentransfer sebagian data yang dibutuhkan untuk immediate task.

Computation Migration.  Terkadang, kita ingin mentransfer komputasi, bukan data. Pendekatan ini yang disebut dengan computation migration

Process Migration.  Ketika sebuah proses dieksekusi, proses tersebut tidak selalu dieksekusi di situs di mana ia pertama kali diinisiasi. Keseluruhan proses, atau sebagian daripadanya, dapat saja dieksekusi pada situs yang berbeda.

Page 43: 06 Sistem Terdistribusi

43

Fitur Sistem Terdistribusi

Mengapa Process Migration ?  Load balancing. Proses atau subproses-subproses didistribusikan ke jaringan untuk

memeratakan beban kerja. 

Computation speedup. Apabila sebuah proses dapat dibagi menjadi beberapa subproses yang berjalan bersamaan di situs yang berbeda-beda, maka total dari process turnaround time dapat dikurangi. 

Hardware preference. Proses mungkin mempunyai karakteristik tertentu yang menyebabkan proses tersebut lebih cocok dieksekusi di prosesor lain.Misalnya, proses inversi matriks, lebih cocok dilakukan di array processor daripada di microprocessor Software preference. Proses membutuhkan software yang tersedia di situs lain, di mana software tersebut tidak dapat dipindahkan atau lebih murah untuk melakukan migrasi proses daripada software Data access.

Sistem operasi terdistribusi menyediakan semua fitur di atas dengan kemudahan penggunaan dan akses dibandingkan dengan sistem operasi jaringan

Page 44: 06 Sistem Terdistribusi

44

Tipe Jaringan dalam Sistem Terdistribusi

Local Area Network (LAN). LAN muncul pada awal tahun 1970-an sebagai pengganti dari sistem komputer mainframe. LAN, didesain untuk area geografis yang kecil. Misalnya, LAN digunakan untuk jaringan dalam sebuah bangunan atau beberapa bangunan yang berdekatan. Umumnya, jarak antara situs satu dengan situs yang lain dalam LAN berdekatan. Oleh karena itu, kecepatan komunikasinya lebih tinggi dan peluang terjadi kesalahan (error rate) lebih rendah. Dalam LAN, dibutuhkan high quality cable supaya kecepatan yang lebih tinggi dan reliabilitas tercapai. Jenis kabel yang biasanya dipakai adalah twisted-pair dan fiber-optic.

Page 45: 06 Sistem Terdistribusi

45

Tipe Jaringan dalam Sistem Terdistribusi

Berikut adalah ilustrasi dari Local Area Network:

Page 46: 06 Sistem Terdistribusi

46

Tipe Jaringan dalam Sistem Terdistribusi

Wide Area Network.  WAN muncul pada akhir tahun 1960-an, digunakan sebagai proyek riset akademis agar tersedia layanan komunikasi yang efektif antara situs, memperbolehkan berbagi hardware dansoftware secara ekonomis antar pengguna. WAN yang pertama kali didesain dan dikembangkan adalah Arpanet yang pada akhirnya menjadi cikal bakal dari Internet. Situs-situs dalam WAN tersebar pada area geografis yang luas. Oleh karena itu, komunikasi berjalan relatif lambat dan reliabilitas tidak terjamin. Hubungan antara link yang satu dengan yang lain dalam jaringan diatur oleh communication processor.

Page 47: 06 Sistem Terdistribusi

47

Tipe Jaringan dalam Sistem Terdistribusi

Berikut adalah ilustrasi dari Wide Area Network

Page 48: 06 Sistem Terdistribusi

48

Topologi Sistem Terdistribusi

Page 49: 06 Sistem Terdistribusi

49

Tipe Jaringan dalam Sistem Terdistribusi

Situs-situs dalam sistem terdistribusi dapat terhubung melalui berbagai macam cara yang ditentukan berdasarkan kriteria-kriteria sebagai berikut:

Biaya instalasi.  Biaya menghubungkan situs-situs dalam sistem.

Biaya komunikasi.  Besar waktu dan uang untuk mengirimkan pesan dari satu situs ke situs lainnya.

Ketersediaan/availabilitas.  Sampai sejauh mana data dapat diakses walaupun terdapat kegagalan pada beberapa link atau situs.

Page 50: 06 Sistem Terdistribusi

50

Topologi Jaringan

Fully Connected Network

Tiap situs dalam Fully Connected Network terkoneksi secara langsung dengan situs lainnya. Link yang ada menjadi banyak dan menyebabkan biaya instalasi besar. Topologi jenis ini tidak praktis untuk diterapkan dalam sistem yang besar.

Page 51: 06 Sistem Terdistribusi

51

Topologi Jaringan

Partially Connected Network

Link yang ada hanya antara beberapa situs sehingga biaya instalasi menjadi lebih rendah. Namun, biaya komunikasi bisa menjadi lebih mahal. Misalkan, situs A ingin mengakses data di situs E, maka jalan yang ditempuh menuju situs E harus melalui situs B terlebih dahulu karena tidak ada link langsung dari situs A ke situs E. Semakin jauh jalan yang ditempuh, biaya komunikasi semakin mahal. Selain itu, availibilitas atau ketersediaan data kurang baik dibandingkan dengan Fully Connected Network. Misalkan, jika terjadi failure site atau kegagalan situs di C maka akses ke situs F menjadi tidak ada.

Page 52: 06 Sistem Terdistribusi

52

Topologi Jaringan Partially Connected Network terdiri dari:

Tree-structured network.  Biaya instalasi dan komunikasi pada topologi jenis ini biasanya rendah. Namun, jika terjadi failure link atau failure site maka pengaksesan data menjadi terhambat dan mengakibatkan availibilitas/ketersediaan menjadi rendah.

Star network.  Biaya komunikasi rendah karena setiap situs paling banyak mengakses dua link ke situs lain. Namun, bila terjadi failure site di situs pusat maka setiap situs tidak akan dapat mengakses situs lainnya sehingga availibilitas/ketersediaan pada topologi jenis star network rendah.

Ring network.  Biaya komunikasi tinggi karena jika ingin mengakses sebuah situs bisa jadi harus menempuh banyak link. Misalnya, dari situs A menuju situs D, link yang dilewati sebanyak tiga buah. Availibilitas/ketersediaan pada topologi ring network lebih terjamin dibandingkan pada star network maupun pada tree-structured network.

Page 53: 06 Sistem Terdistribusi

53

Topologi Jaringan

Page 54: 06 Sistem Terdistribusi

54

Kegagalan Sistem Terdistribusi

Perlu diketahui, bahwa dalam sistem terdistribusi terdapat berbagai macam kegagalan :

Kegagalan perangkat keras (hardware failure) seperti kegagalan link atau failure link,

kegagalan situs atau failure site, dan

kehilangan pesan atau loss of message.

Oleh karena itu, untuk menjamin kekuatan sistem atau disebut juga robustness maka sistem terdistribusi harus mampu melakukan pendeteksian kegagalan, mereparasi sistem, dan mengkonfigurasinya kembali.

Sebuah sistem terdistribusi harus menyediakan mekanisme sinkronisasi proses dan komunikasi, agar terhindar dari deadlock serta dapat mengatasi failure yang tidak muncul dalam sistem terpusat.

Page 55: 06 Sistem Terdistribusi

55

Sistem Berkas Terdistribusi

Page 56: 06 Sistem Terdistribusi

56

Sistem Berkas Terdistribusi

Sistem berkas terdistribusi adalah sebuah sistem dimana banyak pengguna dapat berbagi berkas dan sumber daya penyimpanan. Client, server, dan media penyimpanan dalam sistem terdistribusi tersebar pada perangkat-perangkat yang terdapat dalam sistem terdistribusi. Service dijalankan melalui jaringan. Konfigurasi dan implementasi dari sistem berkas terdistribusi bervariasi dari sistem yang satu ke sistem yang lain.

Idealnya, sistem berkas terdistribusi tampil di depan pengguna atau client sebagai sistem berkas yang konvensional dan terpusat. Di mana keberagaman atau multiplisitas perangkat dibuat tidak tampak sehingga client interface dalam sistem berkas terdistribusi tidak dibedakan antara local file dan remote file. Sistem berkas terdistribusi yang transparan juga akan memfasilitasi mobilitas pengguna dengan membawa lingkungan pengguna, yang dimaksudkan adalah home directory, ke mana saja pengguna itu login.

Page 57: 06 Sistem Terdistribusi

57

Sistem Berkas Terdistribusi

Dalam sistem berkas konvensional dan terpusat, waktu yang diperlukan untuk memenuhi permintaan adalah waktu akses disk dan sedikit waktu untuk CPU processing.

Sedangkan dalam sistem berkas terdistribusi, waktu yang diperlukan untuk memenuhi permintaan meningkat akibat remote access yang menambah waktu pengiriman permintaan ke server dan waktu penerimaan respon oleh client.

Selain itu, dalam transfer informasi, ada tambahan waktu untuk menjalankan software untuk protokol komunikasi.

Page 58: 06 Sistem Terdistribusi

58

Metode Remote File Access (RFA)

Dengan remote service.  Permintaan akses data dikirimkan ke server. Server melakukan akses ke data dan hasilnya di-forward kembali ke client.

Dengan caching.  Bila data yang dibutuhkan belum disimpan di cache maka salinan data akan dibawakan dari server ke client. Idenya adalah untuk menahan data yang baru saja diakses di cache sehingga akses yang berulang ke informasi yang sama dapat ditangani secara lokal. Dengan demikian, dapat mengurangi network traffic. Namun, masalah yang timbul adalah mengenai konsistensi cache, di mana seharusnya salinancache tetap konsisten dengan file-master-nya.

Page 59: 06 Sistem Terdistribusi

59

Metode Remote File Access (RFA)

Dalam sistem berkas terdistribusi, replikasi berkas pada perangkat yang berbeda adalah redundansi yang berguna untuk meningkatkan availibilitas atau ketersediaan.

Syarat mendasar untuk replikasi berkas adalah replika dari berkas yang sama terletak pada perangkat yang failure-independent sehingga ketersediaan satu replika tidak dipengaruhi oleh ketersediaan replika yang lain.

Masalah utama dalam replikasi adalah updating. Proses update pada satu replika harus dilakukan juga pada replika yang lain.

Page 60: 06 Sistem Terdistribusi

60

Sistem Operasi Terdistribusi

Page 61: 06 Sistem Terdistribusi

61

SO Terdistribusi

Sistem operasi terdistribusi adalah salah satu implementasi dari sistem terdistribusi, di mana 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

o Waktu pengolahan

o Keamanan

o Akses ke seluruh resources, seperti prosesor, memori, penyimpanan sekunder, dan perangkat keras

Page 62: 06 Sistem Terdistribusi

62

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 63: 06 Sistem Terdistribusi

63

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 64: 06 Sistem Terdistribusi

64

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 65: 06 Sistem Terdistribusi

65

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 66: 06 Sistem Terdistribusi

66

Mengapa Perlu Sistem Operasi Terdistribusi

Page 67: 06 Sistem Terdistribusi

67

Mengapa perlu SO Terdistribusi

Perkembangan pesat teknologi informasi menyebabkan bertambahnya permintaan suatu sistem, baik berupa perangkat keras maupun perangkat lunak yang dapat digunakan dengan baik dan cepat.

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 di mana 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 68: 06 Sistem Terdistribusi

68

Sistem operasi yang mengatur proses ini sering disebut sebagai sistem operasi terdistribusi (distributed operating system) .

Sistem operasi terdistribusi ini sekarang menjadi trend, terutama untuk research yang kadang membutuhkan CPU yang sangat cepat untuk melakukan perhitungan yang sangat kompleks.

Page 69: 06 Sistem Terdistribusi

69

Skema NOS

Page 70: 06 Sistem Terdistribusi

70

Contoh aplikasi SO Terdistribusi

Page 71: 06 Sistem Terdistribusi

71

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.

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 72: 06 Sistem Terdistribusi

72

Contoh SO 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 73: 06 Sistem Terdistribusi

73

Contoh SO Terdistribusi

Guide (Grenoble Universities Integrated Distributed Environment) adalah sistem operasi terdistribusi yang berorientasi obyek untuk pempangunan dan operasi dari aplikasi terdistribusi pada PC atau server dengan jaringan yang tersambung LAN. Guide adalah hasil penggabungan Bull and the IMAG Research Institute (Universities of Grenoble), yang telah membangun Bull-IMAG joint Research Laboratory. Ini juga memiliki kaitan erat dengan COMANDOS Esprit Project (Construction and Management of Distributed Open Systems) dan BROADCAST Esprit Basic Research project.

Page 74: 06 Sistem Terdistribusi

74

Contoh SO Terdistribusi

Sistem operasi Hurricane memiliki hierarki sebagai sistem operasi dengan cluster yang merupakan implementasi dari Hector multiprocessor. Peng-cluster-an mengatur resource pada sistem, menggunakan pasangan yang ketat antara cluster, dan kehilangan pasangan pada cluster. Prinsip sistem terdistribusi diaplikasikan dengan mendistribusikan dan mereplika servis pada sistem dan objek data untuk meningkatkan kelokalan, meningkatkan konkurensi, dan untuk mencegah sistem terpusat, sehingga membuat sistem berimbang.

Page 75: 06 Sistem Terdistribusi

75

Contoh SO Terdistribusi

Mach (Carnegie Mellon University) adalah satu dari beberapa komunitas penelitian tentang sistem operasi. Sistem ini aslinya dimulai di CMU, dan Mach menjadi basis dari banyak sistem penelitian. Walaupun pekerjaan dengan Mach di CMU sudah lama tidak diterapkan, tetapi masih banyak kelompok-kelompok lain yang masih menggunakan Mach sebagai basis pada penelitiannya.

Mach at OSF (OSF Research Institute). OSF Research Institute masih menggunakan teknologi yang dimulai dari CMU dan menggunakan ini sebagai basis dari banyak penelitian, termasuk sistem operasi untuk mesin pararel , kernel berorientasi objek yang aman, dan penelitian-penelitian tentang sistem operasi yang lain.

Page 76: 06 Sistem Terdistribusi

76

Contoh SO Terdistribusi

Mach (Carnegie Mellon University) adalah satu dari beberapa komunitas penelitian tentang sistem operasi. Sistem ini aslinya dimulai di CMU, dan Mach menjadi basis dari banyak sistem penelitian. Walaupun pekerjaan dengan Mach di CMU sudah lama tidak diterapkan, tetapi masih banyak kelompok-kelompok lain yang masih menggunakan Mach sebagai basis pada penelitiannya.

Mach at OSF (OSF Research Institute). OSF Research Institute masih menggunakan teknologi yang dimulai dari CMU dan menggunakan ini sebagai basis dari banyak penelitian, termasuk sistem operasi untuk mesin pararel , kernel berorientasi objek yang aman, dan penelitian-penelitian tentang sistem operasi yang lain.

Dan masih banyak lagi lainnya

Page 77: 06 Sistem Terdistribusi

77

Hardware Sistem Operasi Terdistribusi

Page 78: 06 Sistem Terdistribusi

78

Amoeba

Page 79: 06 Sistem Terdistribusi

79

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 80: 06 Sistem Terdistribusi

80

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 81: 06 Sistem Terdistribusi

81

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 82: 06 Sistem Terdistribusi

82

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 83: 06 Sistem Terdistribusi

83

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 84: 06 Sistem Terdistribusi

84

Arsitektur Sistem Operasi Terdistribusi

Page 85: 06 Sistem Terdistribusi

85

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 86: 06 Sistem Terdistribusi

86

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 87: 06 Sistem Terdistribusi

87

Manajemen Sistem

Page 88: 06 Sistem Terdistribusi

88

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 89: 06 Sistem Terdistribusi

89

Manajemen Berkas

Dalam implementasi sistem Amoeba, terutama di negeri Belanda, 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 90: 06 Sistem Terdistribusi

90

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 91: 06 Sistem Terdistribusi

91

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 92: 06 Sistem Terdistribusi

92

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.