Senin, 17 April 2017

Sistem operasi terdistribusi

Sistem operasi terdistribusi

sistem operasi terdistribusi  adalah sistem operasi yang berjalan pada beberapa buah mesin, yang tidak melakukan sharing memori, tetapi terlihat bagi user sebagai satu buah komputer single. Pengguna tidakperlu memikirkan keberadaan perangkat keras yang ada, seperti prosesor. Contoh dari sistem seperti ini adalah Amoeba. 
Sistem operasi terdistribusi berbeda dengan sistem operasi jaringan. Untuk dapat membedakannya,
sistem operasi jaringan memiliki ciri-ciri sebagai berikut: 
a. Tiap komputer memiliki sistem operasi sendiri 
b. Tiap personal komputer memiliki sistem file sendiri, di mana data-data disimpan 
c. Sistem operasi 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 

Fungsi Sistem Operasi

Secara garis besar Sistem Operasi mempunyai 2 tugas utama, yaitu sebagai :

a. 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. Sumber daya pada sistem komputer, antara lain :

1) Sumber daya fisik
Contoh dari sumber daya fisik diantaranya 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. Salah satu sasaran yang harus dicapai sistem operasi adalah dapat memanfaatkan seluruh sumber daya agar dapatdigunakan secara efektif dan efisien mungkin.

2)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 system komputer, yang dapat berupa utilitas dan program aplikasi pengolahan data tertentu.

b. Penyedia layanan (extended/virtual machine) Secara spesifik berfungsi :

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

Komponen Inti Sistem Operasi:
Ø manajemen proses,
Ø manajemen memori utama,
Ø manajemen berkas,
Ø manajemen sistem I/O,
Ø manajemen penyimpanan sekunder,
Ø sistem proteksi,
Ø jaringan dan
Ø Command-Interpreter System.
Ø 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.

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

Ø 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 secondarystorage yang bersifat permanen dan mampu menampung banyak data. Contoh dari secondarystorage adalah harddisk, disket, dll. Sistem operasi bertanggung-jawab atas aktivitas-aktivitas yang berkaitan dengan diskmanagement seperti: free-space management, alokasi penyimpanan, penjadualan disk.

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

Ø 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).

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

Ø JaringanSistem 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.
• Increased data availability.
• Enhanced reliability.
• Computation speed-up.
• Increased data availability.
• Enhanced reliability.

Ø Command-Interpreter System
Sistem Operasi menunggu instruksi dari pengguna (command driven). Program yang membaca instruksi dan mengartikan control statements umumnya disebut: control-card interpreter, commandline interpreter, dan UNIX shell. Command-Interpreter System sangat bervariasi dari satu system operasi ke sistem operasi yang lain dan disesuaikan dengan tujuan dan teknologi I/O devices yang ada. Contohnya: CLI, Windows, Pen-based (touch), dan lain-lain.

Proses dan Thread pada sistem operasi terdistribusi.

Thread adalah sebuah alur kontrol dari sebuah proses. Kontrol thread tunggal ini hanya memungkinkan proses untuk menjalankan satu tugas pada satu waktu. Banyak sistem operasi modern telah memiliki konsep yang dikembangkan agar memungkinkan sebuah proses untuk memiliki eksekusi multi-threads, agar dapat secara terus menerus mengetik dan menjalankan pemeriksaan ejaan didalam proses yang sama, maka sistem operasi tersebut memungkinkan proses untuk menjalankan lebih dari satu tugas pada satu waktu. Suatu proses yang multithreaded mengandung beberapa perbedaan alur kontrol dengan ruang alamat yang sama.
Perbedaan antara proses dengan thread tunggal dan proses dengan thread yang banyak adalah proses dengan thread banyak dapat mengerjakan lebih dari satu tugas pada satu satuan waktu. Bayanyak perangkat lunak yang berjalan pada PC modern dirancang secara multithreading, sebuah aplikasi biasanya diimplementasi sebagai proses yang terpisah dengan beberapa thread yang berfungsi sebagai pengendali. Contohnya sebuah web browser mempunyai therad 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. Sebagai contohnya sebuah web server dapat mempunyai ratusan klien yang mengaksesnya secara concurrent. Kalau web server berjalan sebagai proses yang hanya mempunyai thread tunggal maka ia hanya dapat melayani satu klien pada pada satu satuan waktu. Bila ada klien lain yang ingin mengajukan permintaan maka ia harus menunggu sampai klien sebelumnya selesai dilayani. 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. 

File Sistem Terdistribusi ( Distributed File System , disingkat) adalah file sistem yang mendukung sharing files dan resources dalam bentuk penyimpanan persistent di sebuah network. File server pertama kali didevelop pada tahun 1970 dan Sun NFS (Network File System) menjadi DFS pertama yang banyak digunakan setelah awal pemunculannya di tahun 1985. DFS yang terkenal selain NFS adalah AFS (Andrew File System) dan CIFS (Common Internet File System).

I. Pengenalan File Service
File service adalah suatu perincian atau pelayanan dari file system yang ditawarkan pada komputer client. Suatu file server adalah implementasi dari file service dan berjalan pada satu atau lebih mesin. File itu sendiri berisi dari nama, data dan atribut file seperti kepemilikan file, ukuran, waktu pembuatan file dan hak akses file.
II. Komponen File service
Komponen-komponen file service adalah terdiri dari :

·         File Service
Pengoperasian dari masing-masing file.
·         Directory Service
Management atau pengaturan direktori
·         Naming Service
– Location Independence :
File dapat dipindahkan tanpa penggantian nama
– Hal yang umum untuk penamaan file dan directori :
Mesin + nama path e.g / machine / path atau machine : path
Mounting File sistem secara remote kedalam hirarki local file.
Single name space yang sama pada semua mesin.
– Dua level penamaan :
Nama simbolik yang dilihat user dan nama binary yang dilihat oleh sistem.

III. Contoh File Service
NFS (Network File System)
Network File System (NFS) merupakan sebuah protokol yang dikembangkan oleh Sun Microsystem pada tahun 1984 dan NFS didefinisikan dalam RFC 1094, 1813 dan 3530 sebagai DFS yang mengijikan sebuah komputer untuk mengakses file melalui network serasa akses file di disk local.

Tujuan dari NFS adalah untuk memungkinkan terjadinya pertukaran sistem berkas secara transparan antara mesin-mesin bebas tersebut.

Interface Service
Interface service adalah metode standard komunikasi yang dapat dipakai oleh siapapun tanpa membedakan vendornya. Interface Service merupakan titik point yang konsumen gunakan untuk mengakses fungsionalitas yang diarahkan oleh aplikasi. Interface Service biasanya menggunakan alamat jaringan, yang berarti bahwa ia dapat  di akses oleh konsumen lebih dari beberapa macam komunikasi jarigan. Alamat jaringan dapat  terkenal lokasinya atau ia dapat terkandung dari direktori service seperti UDDI.

Sebuah kunci aspek dari desain service interface untuk memisahkan implementasi yang dibutuhkan untuk mengkomunikasikan dengan system lain dari aplikasi logika bisnis. Interface Service menyediakan interface yang jauh lebih kasar sambil menjaga semantik dan rincian lebih halus dari logika aplikasi. Hal ini juga memberikan penghalang yang memungkinkan logika aplikasi dapat berubah tanpa mempengaruhi interface konsumen.
Interface Service mengimplementasikan kontrak antara konsumen dan penyedia. Kontrak ini memungkinkan mereka untuk bertukar informasi bahkan jika mereka berada di sistem yang berbeda. Interface Service bertanggung jawab untuk semua rincian pelaksanaan yang dibutuhkan untuk melakukan komunikasi ini. Rincian tersebut termasuk tetapi tidak terbatas pada:
•      Network protocol
Interface Service harus merangkum semua aspek dari network protocol yang digunakan untuk komunikasi antara konsumen dan pelayanan. Sebagai contoh, anggaplah layanan terkena konsumen melalui HTTP melalui jaringan TCP/IP. Anda dapat menerapkan Interface Service sebagai komponen ASP.NET diterbitkan ke URL terkenal. Komponen ASP.NET menerima permintaan HTTP, ekstrak informasi yang dibutuhkan oleh layanan untuk memproses permintaan tersebut, memanggil implementasi layanan, paket respon layanan, dan mengirim respon kembali ke konsumen sebagai respon HTTP. Dari perspektif layanan, satu-satunya komponen yang memahami HTTP adalah antarmuka layanan. Pelaksanaan layanan memiliki kontrak sendiri dengan antarmuka layanan dan seharusnya tidak memiliki ketergantungan pada spesifikasi teknologi yang digunakan konsumen untuk berkomunikasi dengan antarmuka layanan.
•      Data formats
Menerjemahkan Interface Service konsumen antara format data dan format data yang mengharapkan layanan. Sebagai contoh, konsumen eksternal untuk perusahaan dapat menyediakan data dan mengharapkan data yg berada dalam format XML yang sesuai dengan skema standar industri XML. Konsumen internal untuk perusahaan mungkin ingin menggunakan format XML dioptimalkan untuk layanan tertentu. Interface Service bertanggung jawab untuk mengubah dan pemetaan kedua format data dalam format yang dapat menggunakan layanan ini. Pelaksanaan pelayanan tidak memiliki pengetahuan tentang format data spesifik Interface Service mungkin gunakan untuk berkomunikasi dengan konsumen.
•      Security
Interface Service harus dipertimbangkan batas kepercayaan sendiri. Konsumen yang berbeda mungkin memiliki persyaratan keamanan yang berbeda, jadi terserah untuk Interface Service untuk melaksanakan konsumen spesifik persyaratan. Misalnya, konsumen eksternal untuk perusahaan umumnya akan memiliki persyaratan keamanan yang lebih ketat daripada konsumen internal untuk perusahaan. Konsumen eksternal mungkin memiliki persyaratan otentikasi kuat dan hanya dapat diberi kewenangan untuk melakukan subset yang sangat terbatas dari operasi yang berwenang untuk konsumen internal. Konsumen internal dapat dipercaya secara implisit untuk kebanyakan operasi dan hanya membutuhkan otorisasi untuk operasi yang paling sensitif.
•      Service level agreements
Interface Service memiliki peran signifikan dalam memastikan bahwa pelayanan memenuhi komitmen tingkat layanan untuk satu set khusus konsumen. Interface Service dapat mengimplementasikan caching untuk meningkatkan waktu respon dan mengurangi konsumsi bandwidth. Beberapa contoh dari Interface Service dapat digunakan di satu set beban-seimbang node pengolahan untuk mencapai skalabilitas, ketersediaan, dan kesalahan-toleransi persyaratan.




Tidak ada komentar:

Posting Komentar