Jumat, 14 Januari 2011

BAB VI

BAB VI
NAME SERVICE

1. Pengenalan
Pengaksesan resource pd sistem terdistribusi memerlukan:
a. Nama resource (untuk pemanggilan).
b. Alamat (lokasi resource tsb).
c. Rute (bagaimana mencapai lokasi tsb).
Konsentrasi pada aspek penamaan, dan pemetaan antara nama & alamat, bukan pada masalah rute, yg dibahas di Jaringan Komputer. Yang dimaksud dengan resource adalah : komputer, layanan, remote object, berkas, pemakai.
Berikut contoh naming pd aplikasi sistem terdistribusi:
• URL utk mengakses suatu halaman web.
• Alamat e-mail utk komunikasi antar pemakai.
Naming sering dianggap remeh, tapi mendasar dlm sistem terdistribusi. Karena dalam hal ini name berfungsi sebagai identifier (pengenal) pada system.

2. Tujuan penamaan
• Identifikasi:
Seorang pemakai menginginkan obyek/layanan A, bukan obyek/layanan B.
• Memungkinkan terjadinya sharing
Lebih dari satu pemakai dapat mengindentifikasikan resource dengan nama yang sesuai (tidak harus nama yang sama).
• Memungkinkan location independence:
Perubahan lokasi tidak menuntut perubahan nama, asalkan lokasi tidak menjadi bagian dari nama resource tsb.
• Memberikan kemampuan keamanan (security)
  1. Jika sebuah nama dipilih secara acak dari himpunan besar interger, maka nama tsb hanya bisa diketahui dari legitimate source, bukan dari menebak.
  2. Jadi jika seseorang mengetahui nama obyek tsb, maka dia memang diberitahu, karena sulit sekali menebak nama tsb.

3. Jenis nama
User names:
• Dibuat oleh pemakai (user).
• Merujuk pada suatu obyek atau layanan.
• Terdiri dari strings of characters.
Contoh: hp201 untuk pencetak, ~bettyp/tmp/test.c untuk berkas.
System names:
  • Terdiri dari bit string.
  • Internal untuk sistem, tidak ditujukan untuk manusia.
  • Lebih compact dari user names, shg dapat dibandingkan dengan lebih efisien.

4. Struktur nama
Primitive/‡at names (Unique Identi…ers = UIDs)
a. Tanpa struktur internal, hanya string of bits.
b. Digunakan utk perbandingan dengan UID lain.
c. Tidak membawa informasi lain -> pure names.
d. Sangat berguna & banyak digunakan karena:
• Location & application independent, shg tidak menjadi masalah bagi mobilitas obyek.
• Seragam, fixed size.
• Compact: mudah disimpan, di-pass, & jika cukup besar menjadi sulit ditebak.
a) Partitioned Names (PN)
  • Komposisi dari beberapa nama primitif, biasanya disusun secara hirarkis. Contoh: www.gunadarma.ac.id/cs/docs/akademik/SisDis/naming.ppt.
  • Membawa informasi -> impure names.
  • Biasanya tidak secara unik mengidenti…kasikan obyek, beberapa nama bisa dipetakan ke satu obyek (e.g. UNIX file links).
b) Descriptive names (DN)
  • Daftar atribut yang secara bersama-sama mengidentifikasikan obyek secara unik.
  • Membawa informasi -> impure names.
  • DN adalah superset dari PN.
5. Tujuan fasilitas Penamaan
a. Efisien, karena fasilitas penamaan merupakan dasar pada sisdis & digunakan secara terus menerus.
b. Terdistribusi. Renungkan jika UIDs dibangkitkan oleh centralized generator.
• Bottleneck.
• Node tempat generator tsb mengalami kegagalan.
c. Tampak seperti global space, tidak tergantung konekti…tas, topologi, dan lokasi obyek.
d. Mendukung pemetaan 1:many antara nama & obyek, untuk memungkinkan multicast.
e. Mendukung dynamic relocation of objects, jika obyek/proses potensial untuk mobile (berpindah-pindah). Jadi diperlukan dynamic binding antara nama & alamat, juga antara alamat & rute.
f. Memungkinkan local aliases, shg pemakai dapat mengekspresikan interpretasi semantik mereka thdp suatu obyek. Tentu saja diperlukan pemetaan antara aliases dan full names.

BAB V

BAB V
FILE SERVICE

1. Pengenalan File Service
File service adalah suatu perincian atau pelayanan dari file system yang ditawarka 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. File sistem merupakan mekanisme penyimpanan on-line serta untuk akses, baik data maupun program yang berada dalam sistem operasi.
2. Arsitektur File Server
Component :
a. Layanan Flat File
• Operation pada file contents
• Uniq File Identifiers (UFIDs)
• Penterjemahan dari UFIDs ke lokasi file
b. Layanan Direktory
• Pemetaan antara nama sebagai text ke UFIDs
c. Modul Client
• API untuk file acces, satu untuk setiap computer client
• Menyimpan status (state) : open files, positions
• Mengetahui lokasi jaringan dari flat file dan directory server.
3. Komponen File service
Komponen-komponen file service adalah terdiri dari :
a) File Service
Pengoperasian dari masing-masing file.
b) Directory Service
Management atau pengaturan direktori
c) 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.

4. Kebutuhan File System Terdistribusi
• Transparency
Keseimbangan antara flesibilitas dan skalabilitas terhadap kompleksitas dan performansi dalam desainnya.
• Concurrent File Updates
Perbaruan file serentak bersamaan antara file server dan client. Kebanyakan arah sistem mengikuti standar UNIX dalam memberikan pelayanan advisory atau mendatory file atau record file level locking.
• File Replication
Replikasi dapat untuk share load, untuk mempertinggi fault tolerance, dan untuk mempertinggi scalability. Kebanyakan sistem yang ada dapat melayani caching dengan replication terbatas. Sebagian dapat melayani full replication.
• Hardware dan Operating Systems
Heterogenitas atau kesamaan adalah kebutuhan yang sangat penting dalam melayani keterbukaan.
• Fault Tolerance
Service harus terus menerus beroperasi walaupun terjadi kesalahan atau error pada client ataupun server.
• Consistency
• Security
Semua sistem melayani mekanisme akses kontrol berbasiskan daftar akses control (access control lists).
• Efficiency
Sistem harus dapat melayani perbandingan performance apakah lebih baik atau tidak.

5. Opsi Desain dalam File Service
  •  Stateful
  •  Stateless

BAB IV

BAB IV
SISTEM OPERASI TERDISTRIBUSI

1. Definisi Sistem Operasi Terdistribusi

Sistem operasi terdistribusi adalah salah satu implementasi dari sistem terdistribusi, di mana sekumpulan komputer dan prosesor yang heterogen terhubung dalam suatu jaringan. Koleksi-koleksi dari objek-objek ini secara tertutup bekerja secara bersama-sama untuk melakukan suatu tugas atau pekerjaan tertentu.

2. Fungsi Sistem Operasi terdistribusi

a. Shared resource
Walaupun perangkat sekarang sudahmemiliki 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 diatasi dengan menggabung perangkat yang ada dengan sistem DOS (Distributed Operating System).
b. Manfaat komputasi
Salah satu keunggulan sistem operasi terdistribusi ini adalah bahwa komputasi berjalan dalam keadaan pararel. Proses komputasi ini dipecah dalam banyak titik (nodes), yangmungkin berupa komputer pribadi, prosesor tersendiri, dan kemungkinan perangkat prosesor-prosesor yang lain. Sistem operasi terdistribusi ini bekerja baik dalammemecah komputasi ini dan baik pula dalam mengambil kembali hasil komputasi dari titik-titik cluster untuk ditampilkan hasilnya.
c. Reliabilitas
Fitur unik yang dimiliki oleh DOS ini adalah reliabilitas. Berdasarkan design dan implementasi dari design sistem ini, maka hilangnya suatu node tidak akan berdampak terhadap integritas system. Hal ini berbeda dengan computer personal, apabila ada salah satu hardware yang mengalami kerusakan, maka system akan berjalan tidak seimbang, bahkan sistem bisa tidak dapat berjalan atau mati. Dalam sistem operasi terdistribusi tadi sebenarnya cara kerjanya mirip dengan personal computer, tetapi bedanya apabila ada node yangmati, maka akan terjadi proses halt terhadap node tersebut dan proses komputasi dapat dialihkan. Hal ini akan membuat sistem DOS selalu memiliki reliabilitas yang tinggi.
d. Komunikasi
Sistem operasi terdistribusi biasanya berjalan dalam jaringan, dan biasanya melayani koneksi jaringan. Sistem ini biasanya digunakan user untuk proses networking. User dapat saling bertukar data, atau saling berkomunikasi antar titik baik secara LAN maupun WAN.

BAB III

BAB III
PROSES
1. Definisi Proses
Proses merupakan program yang sedang di eksekusi.
2. Status Proses
Bila sebuah proses dieksekusi, maka statusnya akan berubah-ubah. Status dari sebuah proses mencerminkan aktivitas atau keadaan dari proses itu sendiri.

3. Thread
Thread merupakan unit dasar dari penggunaan CPU, yang terdiri dari Thread_ID, program counter, register set, dan stack. Sebuah thread berbagi code section, data section, dan sumber daya sistem operasi dengan Thread lain yang dimiliki oleh proses yang sama. Thread juga sering disebut lightweight process. Sebuah proses tradisional atau heavyweight process mempunyai thread tunggal yang berfungsi sebagai pengendali. Perbedaan antara proses dengan thread tunggal dengan proses dengan thread yang banyak adalah proses dengan thread yang banyak dapat mengerjakan lebih dari satu tugas pada satu satuan waktu.


4. Keuntungan Thread
a. Responsi: Membuat aplikasi yang interaktif menjadi multithreading dapat membuat sebuah program terus berjalan meskipun sebagian dari program tersebut diblok atau melakukan operasi yang panjang, karena itu dapat meningkatkan respons kepada pengguna.
b. 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.
c. 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.
d. 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).


5. Multithreading Model
a. Many to One Model
Many-to-One model memetakan banyak user-level thread ke satu kernel thread. Pengaturan thread dilakukan di user space, oleh karena itu ia efisien tetapi ia mempunyai kelemahan yang sama dengan user thread. Selain itu karena hanya satu thread yang dapat mengakses thread pada suatu waktu maka multiple thread tidak dapat berjalan secara pararel pada multiprocessor.

b. One to One model
One-to-One model memetakan setiap user thread ke kernel thread. Ia menyediakan lebih banyak concurrency dibandingkan Many-to-One model. Keuntungannya sama dengan keuntungan kernel thread. Kelemahannya model ini adalah setiap pembuatan user thread membutuhkan pembuatan kernel thread. Karena pembuatan thread dapat menurunkan performa dari sebuahaplikasi maka implmentasi dari model ini membatasi jumlah thread yang dibatasi oleh sistem.

c. Many to Many Model

Many-to-many model multiplexes banyak user-level thread ke kernel thread yang jumlahnya lebih kecil atau sama banyaknya dengan user-level thread. Jumlah kernel thread dapat spesifik untuk sebagian aplikasi atau sebagian mesin. Many-to-One model mengizinkan developer ntuk membuat user thread sebanyak yang ia mau tetapi concurrency tidak dapat diperoleh karena hanya satu thread yang dapat dijadual oleh kernel pada suatu waktu. Many-to-Many model tidak menderita kelemahan dari 2 model di atas. Developer dapat membuat user thread sebanyak yang diperlukan, dan kernel thread yang bersangkutan dapat bejalan secara pararel pada multiprocessor. Dan juga ketika suatu thread menjalankan blocking system call maka kernel dapat menjadualkan thread lain untuk melakukan eksekusi.

Rabu, 12 Januari 2011

BAB II

BAB II
KOMUNIKASI
1. Sistem Komunikasi
RMI dan RPC berbasiskan metode request dan reply.

2. Network Protocol
Middleware dan aplikasi terdistribusi di implementasikan diatas protokol network.
Protocol diimplementasikan dalam beberapa lapisan (layer).


a. TCP dan UDP
TCP
TCP ( Transport Control Protocol) dan UDP (User Datagram Protocol) adalah protokol transport yang berada di atas lapisan Internet Protocol (IP). TCP adalah protocol yang handal, TCP dapat memastikan data yang dikirimkan sampai ke tujuan begitu juga sebaliknya. TCP menambahkan beberapa prosedur diatas layer internet protocol untuk memastikan reliabilitas transport data :
• Sequencing
• Flow control
• Retransmission dan duplicate handling
• Bufering
• Checksum
b. UDP
UDP tidak memberikan garansi seperti halnya yang di berikan oleh TCP.
• UDP tidak memberikan garansi terhadap pengiriman data
Pada Internet Protocol paket data dapat drop karena suatu hal contohnya jaringan yang rusak, UDP tidak mempunyai mekanisme untuk menanggulangi hal tersebut.
• Kalau ingin menggunakan UDP sebagai protocol pengiriman yang handal, makamekanisme kehandalan yang diinginkan di lakukan pada layer aplikasi.

3. RPC dan RMI
Tujuan dari RPC dan RMI dibuat bagi programmer, agar computer yang terdistribusi terlihat seperti computer yang terpusat. Dan berguna untuk melihat sistem terdistribusi dari sisi pemrogramman.

BAB I


BAB I
PENDAHULUAN
Sistem Terdistribusi adalah Sekumpulan komputer otonom yang terhubung ke suatu jaringan,dimana bagi pengguna sistem terlihat sebagai satu komputer.Maksud computer otonomi adalah walaupun computer tidak terhubung ke jaringan, komputer tersebut tetap data berjalan.

Contoh Sistem terdistribusi

  1. Sistem Telepon                        :ISDN, PSTN
  2. Manajemen Jaringan               :Adminstrasi sesumber jaringan
  3. Network File System (NFS)   :Arsitektur untuk mengakses system file melalui jaringan
  4. WWW                                     :Arsitektur client/server yang diterapkan di atas          infrastruktur internet , Shared Resource (melalui URL)
Kelebihan Sistem Terdistribusi

  1. Performance Kumpulan dari beberapa prosesor akan memberikan kinerja yang lebih baik dari pada komputer yang terpusat. Begitu juga kalau dilihat dari sisi biaya.
  2. Distribution
  3. Reliability (Fault tolerance) apabila salah satu komponen terjadi kerusakan, system tetap dapat berjalan
  4. Incremental Growth Mudah dalam melakukan penambahan komputer/komponen
  5. Sharing Data/Resources Berbagi data adalah salah satu hal yang pokok pada kebanyakan aplikasi.

 Kelemahan pada sistem terdistribusi adalah :

  1. Kesulitan dalam membangun perangkat lunak.Kesulitan yang akan dihadapi antaralain adalah bahasa pemrograman yang harus dipakai, sistem operasi dll.
  2. Masalah Jaringan Karena sistem terdistribusi di implementasikan dalam jaringan komputer, maka isu-isu yang berkaitan dengan jaringan komputer akan menjadi pertimbangan utama dalam merancang dan mengimplementasikan sistem.
  3. Masalah Keamanan Karena pada sistem terdistribusi berbagi data/sumberdaya merupakan hal yang mutlak maka muncul masalah2 yang berkaitan dengan keamanan data dll.

Karakteristik Sistem Terdistribusi

Ada beberapa hal yang harus diperhatikan dalam membangun sistem terdis- tribusi, yaitu:
  1. Transparency (Kejelasan)
  2. Communication (Komunikasi)
  3. Performance & Scalability (Kinerja dan Ruang Lingkup)
  4. Heterogeneity (Keanekaragaman)
  5. Opennes (Keterbukaan)
  6. Reliability & Fault Tolerancy (Kehandalan dan Toleransi Kegagalan)
  7. Security (Kemanan)

Model dalam sistem terdistribusi :

  1. Model Arsitektur (Architectural Models)
  2. Model Interaksi (Interaction Models)
  3. Model Kegagalan (Failure Models)