Perbedaan Sistem Terdistribusi dengan Sistem Operasi Terdistribusi

A. Sistem Terdistribusi/Sistem Tersebar

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, minicomputer, dan lain sebagainya. Berikut adalah ilustrasi struktur sistem terdistribusi:


Karakteristik sistem terdistribusi adalah sebagai berikut:
1. 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
2. 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.
3. Independent failures of components. Setiap komponen/perangkat dapat mengalami kegagalan namun komponen/perangkat lain tetap berjalan dengan baik.


Ada empat alasan utama untuk membangun sistem terdistribusi, yaitu:
1. Resource Sharing (sharing sumberdaya)
2. Computation Speedup (mempercepat proses komputasi)
3. Reliability (kemudahan)
4. Communication. (komunikasi)


Tantangan-tantangan yang harus dipenuhi oleh sebuah sistem terdistribusi:
1. Keheterogenan perangkat/multiplisitas perangkat.
2. Keterbukaan.
3. Keamanan
4. Penangan kegagalan.
5. Concurrency of components
6. Transparansi


B. Sistem Operasi Terdistribusi/Sistem Operasi Tersebar

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:

1. file system
2. name space
3. Waktu pengolahan
4. Keamanan
5. Akses ke seluruh resources, seperti prosesor, memori, penyimpanan sekunder, dan perangakat keras.

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

Dalam sistem operasi terdistribusi, user mengakses sumber daya jarak jauh (remote resources) sama halnya dengan mengakses sumber daya lokal (local resources). Migrasi data dan proses dari satu situs ke situs yang lain dikontrol oleh sistem operasi terdistribusi.

Berikut ini adalah fitur-fitur yang didukung oleh sistem operasi terdistribusi:

1. Data Migration
2. Computation Migration.
3. Process Migration.

Contoh system operasi terdistribusi :

1. Chorus (Sun Microsystems)
2. GLUnix (University of California, Berkeley)
3. Spring System (Sun)


C. Rangkuman

Sistem terdistribusi adalah sekumpulan prosesor yang tidak saling berbagi memori atau clock. Setiap prosesornya memiliki memori lokal tersendiri dan berkomunikasi satu sama lain melalui jaringan komunikasi, seperti LAN atau WAN. Secara umum, topologi jaringan ada dua macam, yaitu fully connected network dan partially connected network yang terbagi lagi menjadi tiga jenis, yaitu tree-structured network, star network, dan ring network. Sistem operasi terdistribusi adalah salah satu implementasi dari sistem terdistribusi, di mana sekumpulan komputer dan prosesor yang heterogen terhubung dalam satu jaringan.Keuntungan dari sistem terdistribusi adalah memberikan akses bagi pengguna untuk dapat mengembangkan sumber daya sistem, peningkatan kecepatan komputasi, dan meningkatkan availibilitas atau ketersediaan dan reliabilitas data. Sebuah sistem terdistribusi harus menyediakan mekanisme sinkronisasi proses dan komunikasi, agar terhindar dari deadlock serta dapat mengatasi failure yang tidak muncul dalam sistem terpusat. 


sumber

Tugas SO 4




Proteksi Memory

 

Proteksi adalah suatu mekanisme untuk mengontrol akses oleh program, proses atau user pada sistem maupun resource dari user. Masalah proteksi pada banyak partisi dengan banyak proses di satu sistem secara bersamaan dikhawatirkan
proses menggunakan atau memodifikasi daerah yang dikuasai proses lain (yang bukan haknya). Bila kejadian ini terjadi, maka proses lain dapat terganggu dan hasil yang diperolehnya dapat menjadi kacau.
Mekanisme sistem proteksi yang harus disediakan sistem meliputi :
  • Membedakan antara penggunaan yang sah dan yang tidak sah.
  • Menentukan kontrol yang terganggu.
  • Menetapkan cara pelaksanaan proteksi.
Proteksi pada monoprogramming sederhana.
Pada monoprogramming, pemakai mempunyai kendali penuh terhadap seluruh memori utama. Memori terbagi menjadi tiga bagian, yaitu :
a. Bagian yang berisi rutin-rutin sistem operasi.
b. Bagian yang berisi program pemakai.
c. Bagian yang tidak digunakan.
Masalah proteksi di monoprogramming adalah cara memproteksi rutin sistem operasi dari penghancuran program pemakai. Program pemakai dapat tersesat sehingga memanipulasi atau menempati ruang memori rutin sistem operasi. Aktivitas program pemakai ini dapat merusak sistem operasi. Sistem operasi harus diproteksi dari modifikasi program pemakai. Proteksi ini diimplementasikan menggunakan satu registe batas (boundary register) dipemroses.Setiap kali program pemakai mengacu alamat memori dibandingkan register batas untuk memastikan proses pemakai tidak merusak sistem operasi, yaitu tidak melewati nilai register batas. Register batas berisi alamat memori tertinggi yang dipakai sistem operasi.
Jika program pemakai mencoba memasuki sistem operasi, instruksi diintersepsi dan job diakhiri dan diberi pesan kesalahan. Untuk memperoleh layanan sistem operasi, program pemakai harus menggunakan instruksi spesifik meminta layanan sistem operasi.
Integritas sistem operasi terjaga dan program pemakai tidak merusak bagian sistem operasi.
Gambar  Proteksi pada monoprogramming
Gambar menunjukkan skema proteksi menggunakan register batas. Register batas menunjuk alamat terakhir sistem operasi. Bila program pemakai mengacu ke alamat daerah sistem operasi, pemroses menjadi fault  menyatakan terjadinya pelanggaran pengaksesan oleh proses pemakai.
MASALAH PROTEKSI DI MONOPROGRAMMING
Merupakan cara memproteksi rutin sistem operasi dari penghancuran program pemakai. Program pemakai dapat tersesat sehingga memanipulasi atau menempati ruang memori rutin sistem operasi. Aktivitas program pemakai ini dapat merusak sistem operasi. Untuk mengatasinya Sistem operasi harus diproteksi dari modifikasi program pemakai.
Proteksi ini diimplementasikan menggunakan satu register batas (boundary register) dipemroses.Setiap kali program pemakai mengacu alamat memori dibandingkan register batas untuk memastikan proses pemakai tidak merusak sistem operasi, yaitu tidak melewati nilai register batas.
PENGALOKASIAN MEMORI
  • Salah satu tanggung jawab Sistem Operasi adalah mengontrol akses ke sumber daya sistem. Salah satunya adalah memori
  • Pengalokasian memori dibagi 2 tipe, yaitu :
    • Pengalokasian berurutan (Contiguous Allocation)
    • Pengalokasian tidak berurutan (Non Contiguous Allocation)
PENGALOKASIAN BERURUTAN ( CONTIGOUS ALLICATION )
Tiap proses menempati satu blok tunggal lokasi memori yang berurutan.
Pada Multiprogramming memori utama harus mengalokasikan tempat untuk sistem operasi dan beberapa user proses
Memori harus mengakomodasi baik OS dan proses user
  • Memori dibagi menjadi 2 partisi :
    • Untuk OS yang resident
    • Untuk Proses User
  • Ada 2 tipe Contiguos Allocation :
    • Single Partition (Partisi Tunggal)
Multiple Partition (Partisi Banyak)
  • Single Partition (Partisi Tunggal)
    • Pada skema ini, diasumsikan OS ditempatkan di memori rendah, dan proses user dieksekusi di memori tinggi
    • Proteksi dapat dilakukan dengan dengan menggunakan register relokasi dan register limit
      • Register relokasi à berisi nilai dari alamat fisik terkecil
      • Register Limit à berisi jangkauan alamat logika
      • Alamat logika harus lebih kecil dari register limit
  • Multiple Partition (Partisi Banyak)
    • Ruang kosong à blok memori yang tersedia, ruang kosong dengan berbagai ukuran tersebar pada memori
    • Proses akan dialokasikan memori pada ruang kosong yang cukup besar untuk ditempatinya
    • OS akan mengelola informasi mengenai :
      • Partisi yang dialokasikan
      • Partisi bebas (ruang kosong)
    • Contoh multiple allocation
Ada 2 skema dalam Multiple Partition Allocation:
  • Partisi Fixed Size (MFT)
    • Memori dibagi menjadi beberapa blok dengan ukuran tertentu yang seragam
    • Setiap partisi berisi tepat 1 proses
    • Digunakan oleh IBM OS/360 yang disebut Multiprogramming with a Fixed number of Task (MFT)
    • Masalah yang muncul pada MFT :
      • Sifat Program dinamis (alokasi dan dealokasi)
      • Memori yang teralokasi mungkin lebih besar dari memori yang diminta, sehingga mengakibatkan fragmentasi internal
  • Pada MVT OS akan menyimpan tabel yang  berisi bagian memori yang tersedia dan yang digunakan:
    • Mula-mula,semua memori tersedia untuk proses user sebagai satu blok besar (large hole)
    • Bila proses datang dan memerlukan memori, dicari hole yang cukup untuk proses tersebut
    • Bila ditemukan, memory manager akan mengalokasikan sejumlah memori yang dibutuhkan dan menyimpan sisanya untuk permintaan berikutnya
  • Contoh :
    • Diasumsikan tersedia memori 2560 Kb dan untuk OS 400 Kb. Sisa 2160 Kb digunakan untuk user proses
    • Diasumsikan terdapat 5 job (P1 s/d P5) terdapat pada input queue.
Diasumsikan penjadwalan FCFS digunakan untuk load job ke memori. Penjadwalan CPU secara Round Robin (quantum time =1) untuk penjadwalan job yang sudah ada di memori
MULTIPLE PARTITION
Menggunakan MVT, terdapat beberapa kali hole untuk ukuran berbeda:
  • Bila proses datang dan memerlukan memori, dicari dari hole yang cukup untuk proses
  • Dynamic Storage Allocation dapat dilibatkan untuk memenuhi permintaan ukuran n dari hole bebas :
    • First Fit à alokasi hole yang pertama yang memenuhi permintaan.
    • Best Fit à alokasi hole terkecil yang memenuhi permintaan.
  • Dalam stratagi ini memerlukan pencarian keseluruhan hole, kecuali bila ukuran sudah terurut
    • Worst Fit à alokasi hole terbesar. Strategi ini memerlukan pencarian keseluruhan hole, kecuali bila ukuran sudah terurut
      • Diantara algoritma diatas, first fit dan best fit lebih baik dibandingkan worst fit dalam hal menurunkan waktu dan utilitas penyimpanan. Dan First Fit lebih cepat.
      • Diantara algoritma diatas, first fit dan best fit lebih baik dibandingkan worst fit dalam hal menurunkan waktu dan utilitas penyimpanan. Dan First Fit lebih cepat .
Keunggulan :
  • Sederhana
  • tidak akan terbentuk lubang-lubang (rongga) memori bersebaran
  • Karena berurutan, proses dapat dieksekusi dengan cepat.
Kelemahannya :
  • Dapat memboroskan Memori
  • Tidak dapat memuatkan proses bila tidak ada satu blok memori yang mencukup
PENGALOKASIAN TAK BERURUTAN ( NON CONTIGUOS ALLOCATION )
Program dibagi menjadi beberapa blok atau segmen. Blokblok program ditempatkan di memori dalam potonganpotongan tanpa perlu saling berdekatan.
Teknik ini biasa digunakan pada sistem memori maya sebagai alokasi page-page dilakukan secara global.
  • Paging
    • Paging adalah solusi untuk permasalahan fragmentasi external
    • Memori fisik dibagi ke dalam blok-blok ukuran tetap yang disebut “frame”
    • Memori logika dibagi ke dalam blok-blok dengan ukuran yang sama yang disebut “page”
    • Untuk menjalankan program berukuran n page, harus dicari frame kosong sebanyak n untuk meload program
    • Page table digunakan untuk translasikan alamat lojik ke alamat fisik
  • Alamat yang dibangkitkan CPU dibagi menjadi :
    • Page number (p) à digunakan sebagai index ke page table. Page table berisi alamat basis dari setiap page pada memori fisik.
    • Page Offset (d) à dikombinasikan dengan alamat basis untuk mendefinisikan alamat memori fisik yang dikirim ke unit memori.
  • Skema translasi alamat
  • Model Paging
  • Ukuran page atau frame ditentukan oleh hardware
    • Ukuran page merupakan bilangan 2 pangkat k mulai 512 sampai 8192 tergantung arsitektur komputer
  • Segmentasi
    • Segmentasi adalah skema pengaturan memori yang mendukung user untuk melihat memori tersebut
    • Tiap-tiap segmen memiliki nama dan panjang.
    • Pandangan user mengenai memori.
    • Dukungan Hardware :
      • Pemetaan ke alamat fisik dilakukan dengan menggunakan tabel segmen, masing-masing berisi base dan limit
Keuntungan :
  • Sistem dapat memanfaatkan memori utama secar lebih efisien
  • Sistem operasi masih mampu memuatkan proses bila jumlah total lubang-lubang memori cukup untuk memuat proses yang akan dieksekusi
Kelemahan :
  • Memerlukan pengendalian yang lebih rumit dan sulit
  • Memori dapat menjadi banyak lubang tersebar (memori tak terpakai bertebaran).