Makalah GLUnix Sistem Terdistribusi

MAKALAH
SISTEM OPERASI GLUnix”
Disusun Untuk Memenuhi Tugas Matakuliah Sistem Terdistribusi




DISUSUN OLEH :
Asep Suharsono (15.11.0302)

         

PROGRAM STUDI TEKNIK INFORMATIKA
STMIK AMIKOM PURWOKERTO
2016/2017

Daftar Isi

Kata Pengantar………………………………………………………………… ………………………i
Daftar Isi…………………………   ………………………………………………… ……………….ii
BAB I PENDAHULUAN…………………………………………………………………………….. 1
            I.I Latar Belakang………………………………………………………………………………1
            I.2 Rumusan Masalah…………………………………………………………………………  3
            I.3 Tujuan Penulisan……………………………………………………………………………3
            I.4 Manfaat Penulisan…………………………………………………………………………..3
BAB II PEMBAHASAN………………………………………   …………………………………… 4
            2.1 Sejarah Singkat……………………………………………………………………………..4
            2.2 Layanan GLUnix…………………………………………………………………………   5
            2.3 Penggunaan GLUnix……………………………………………………………………….7
          2.4 Arsitektur GLUnix…………………………………………………………………..………8
BAB III PENUTUP……………………………………………………………………………………9
           3.1 Kesimpulan……………………………………………………………………………........9
            3.2 Saran ………………………………………………………………   ………….…………9
Daftar Pustaka.......................................................................................................................................10







KATA PENGANTAR
Segala puji dan syukur bagi Allah SWT yang telah memberikan kemampuan, kekuatan, serta keberkahan baik waktu, tenaga, maupun pikiran kepada penulis sehingga dapat menyelesaikan makalah yang berjudul “SISTEM OPERASI GLUnix” tepat pada waktunya.
Dalam penyusunan makalah ini, penulis banyak mendapat tantangan dan hambatan akan tetapi dengan bantuan dari berbagai pihak tantangan itu bisa teratasi. Oleh karena itu, penulis mengucapkan terima kasih yang sebesar-besarnya kepada bapak Abednego Septiadi, M.Kom selaku dosen Sistem Terdistibusi atas bimbingan, pengarahan, dan kemudahan yang telah diberikan kepada penulis dalam pengerjaan makalah ini.
Penulis menyadari bahwa masih banyak kekurangan pada penulisan makalah ini. Maka dari itu, saran dan kritik yang membangun sangat penulis harapkan dari pembaca sekalian. Penulis berharap semoga makalah ini dapat bermanfaat bagi siapa saja yang membacanya.



Purwokerto, 25 April 2017


Penulis









BAB I
PENDAHULUAN
1.1  Latar belakang
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:
 – file system
 – name space
 – Waktu pengolahan
 – Keamanan
 – 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 lowlevel 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).
Sistem Operasi Jaringan Versus Sistem Operasi Terdistribusi 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 GLUnix.
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 dapat saling                 mengakses, biasanya menggunakan remote login (telnet)
e)      File system dapat digunakan dengan dukungan NFS

Manfaat Sistem Operasi Terdistribusi
Sistem operasi terdistribusi memiliki manfaat dalam banyak sistem dan dunia komputasi yang luas. Manfaat-manfaat ini termasuk dalam sharing resource, waktu komputasi dan komunikasi.
a)      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.
b)      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.
c)      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.
d)     Komunikasi
Sistem operasi terdistribusi biasanya berjalan dalam jaringan dan biasanya melayani koneksi jaringan. Sistem ini biasanya digunakan user untuk proses networking. Uses dapat saling bertukar data, atau saling berkomunikasi antara titik baik secara LAN maupun WAN.
Pada kesempatan kali ini kami akan membahas lebih spesifik yaitu mengenai salah satu system operasi dari sistem terdistribusi yaitu GLUnix (University of California, Berkeley).


1.2  Rumusan Masalah
1.      Apa itu  GLUnix?
2.      Bagaimana arsitektur GLUnix?
3.      Bagamana sejarah GLUnix?
4.      Bagaimana penggunaan GLUnix?
1.3  Tujuan Penulisan
Adapun tujuan yang ingin dicapai dalam penulisan makalah ini ini adalah
1.    Mengetahui Sistem operasi dalam system terdistribusi.
2.    Mengetahui sejarah, arsitektur dan penggunaan GLUnix sebagai system operasi pada system terdistribusi.
1.4  Manfaat Penulisan
Adapun manfaat yang ingin dicapai dalam penulisan makalah ini adalah
1.    Untuk mengetahui lebih mengenai system operasi terdistribusi khususnya system operasi GLUnix.
2.    Untuk memenuhi tugas terstruktur mata kuliah Sistem Terdistribusi.














BAB II
PEMBAHASAN
2.1 Sejarah Singkat
GLUnix lahir pada tahun 1993 sebagai sistem operasi layer global untuk project U.C Berkeley NOW. Tujuan utama dari project NOW adalah untuk membangun sebuah platform yang secara bersamaan dapat mengeksekusi paralel interaktif dan pekerjaan berurutan dengan mengabaikan perlambatan khususnya untuk kelas dari beban kerja. Project NOW harus menjamin sebuah workstation memiliki kinerja yang bagus untuk setiap penggunanya, dengan kemungkinan dapat merekrut semua cluster sumber daya yang tersedia (CPU, disk, memori, jaringan) untuk program paralel bila diperlukan. Kemungkinan yang mendukung program paralel yang terintegrasi dan beban kerja sekuensial pertama kali dipelajari oleh simulasi [6] dari pengukuran dari 32 node CM 5 di Los Alamos National Laboratory dan cluster 70 node workstation di U.C Berkeley. Studi ini menyimpulkan bahwa pada siklus menganggur pada workstation cluster 60-node bisa mendukung kedua paralel dan beban kerja sekuensial dengan perlambatan minimal.

Berikut ini  kami mengidentifikasi beberapa goals dari  NOW environment untuk sistem software cluster :
·         Portabilitas: Untuk menjaga pertumbuhan hardware yang berevolusi dan untuk memungkinkan cluster yang heterogen, sistem harus mampu untuk menjadi cepat dan mudah portabel untuk sistem operasi baru atau platform perangkat keras yang baru kedepannya.

·         Ketepatan waktu: Sebuah implementasi  awal dari perangkat lunak harus bias cepat dan menjalankan kebutuhan pengguna sesegera mungkin. Sistem yang lengkap harus bias terselesaikan oleh NOW project.
·         Binary Compatibility: Sebuah system harus menyediakan eksekusi terkecil, keseimbangan beban, dan penjadwalan bersama tanpa harus memodifikasi aplikasi atau relinking. Aplikasi yang ada harus mampu memberikan keuntungan yang jelas dari fitur-fitur baru.

·         High Availability: Ketika sebuah node crash, sistem harus terus beroperasi. Namun, pekerjaan yang gagal pada sebuah node dapat dihentikan. Sistem ini dapat memberikan mekanisme untuk toleransi kesalahan.

·         Kinerja: Aplikasi sekuensial dan interaktif harus dapat berjalan segera jika sebuah single dedicated workstation tersedia. Demikian pula, beban kerja paralel harus dijalankan ketika supercomputer tersedia. Kemudian kami identifikasikan satu set fitur yang harus tersedia oleh system yaitu:


·         Transparant Remote Execution: Aplikasi harus menyadari ketika mereka sedang mengeksekusi node-node terpencil. Mereka harus mempertahankan akses ke sumber daya termasuk segmen memori, proses, perangkat, file, dll.

·         Penyeimbang beban: Sistem ini harus memberikan kebijakan penempatan kerja cerdas untuk menentukan  lokasi terbaik pada awal mengeksekusi  setiap pekerjaan. Sistem ini juga harus mampu memindahkan segala kerja baik ketika cluster atau node menjadi tidak seimbang maka secara dinamis akan ditambahkan  atau dihapus dari sistem.


·         Coschedulingof Jobs Paralel: sebuah system paralel mensyaratkan bahwa individual processes dapat dijadwalkan  pada waktu yang bersama.



2.2  Layanan GLUnix
Layanan utama yang disediakan oleh GLUnix adalah eksekusi jarak jauh dari kedua pekerjaan paralel dan sekuensial. Bagian ini menjelaskan abstraksi yang disediakan oleh GLUnix, bagaimana mereka beroperasi dalam pelayanan eksekusi jarak jauh, dan interface untuk mengakses abstraksi dan layanan ini.


Ø  GLUnix Abstraksi

Untuk memberikan eksekusi jarak jauh dari kedua pekerjaan paralel dan sekuensial, GLUnix meluaskan beberapa abstraksi UNIX yang ada dan memperkenalkan abstraksi baru, meminjam berat dari MPP environments seperti yang dari CM-5. Abstraksi baru termasuk program jaringan dan Network Program Identifier ( NPIDs) untuk pekerjaan GLUnix dan Virtual Node Numbers
(VNNs) untuk memberikan nama pada node – node yang berjalan pada network process. Abstraksi yang ada pada pengiriman sinyal untuk aplikasi remote dan I / O redirection diperpanjang untuk mendukung pekerjaan paralel dan terpencil. GLUnix menyediakan pemrograman dan command line-interfaces  untuk mengakses abstraksi tersebut.



Ø  Program jaringan

Sebuah program jaringan adalah sebuah proses mengeksekusi pekerjaan paralel atau sekuensial yang dikontrol oleh GLUnix. Program jaringan dapat ditemukan di mana saja di cluster dan diidentifikasi  dengan menggunakan  32-bit, cluster Network Program Identifier( NPID) yang ditugaskan dan dilacak oleh GLUnix. Menggunakan  lebar cluster,pengidentifikasi lokasi independent memberikan  tingkat virtualisasi yang diperlukan yang memungkinkan eksekusi jarak jauh transparan dan perpindahan proses secara dinamis.


Ø  Program paralel dan Virtual Nomor Node
GLUnix mendukung program paralel yang menggunakan model pemrograman Single-Program-Multiple-Data (SPMD). Dalam model SPMD, koleksi bagian proses dari N berjalan pada biner aplikasi yang sama dan bekerja sama pada perhitungan tunggal. Sebuah nomor dari individual proses terdiri dari program parallel disebut sebagai derajat parallel dari sebuah program. Proses dengan program parallel dibedakan dari penggunaaan virtual node numbers (VNNs), Sama seperti NPIDs, VNNs adalah lokasi independen dan memungkinkan penempatan proses yang transparan dan perpindahan dalam cluster GLUnix.



Ø  Pengiriman sinyal

Dalam UNIX, sinyal yang digunakan untuk menunjukkan kondisi pengecualian (kesalahan halaman, I / O error, dll) atau untuk pengendalian proses (untuk menangguhkan atau mengakhiri program yang berjalan). Secara default, sinyal di GLUnix dikirim ke seluruh NPID; yaitu, setiap proses individu dalam program paralel akan menerima sinyal yang sama dalam urutan yang sama. GLUnix juga mendukung sinyal semantik tambahan, misalnya, sinyal proses individual dari program paralel.

Ø  I / O Redirection

GLUnix memperluas standar abstraksi UNIX baik input maupun output byte stream untuk menjalankan program sekuensial dan paralel jarak jauh, termasuk file redirection dan pipa - pipa. Input yang diberikan untuk program GLUnix, baik dari keyboard konsol, sebuah file, atau pipa, direplikasi secara default untuk semua proses dari program paralel. Secara analog, keluaran dari program jaringan multiplexing untuk konsol pengguna, sebuah fi le, atau pipa di manner UNIX  yang normal. Stream dari remote proses disimpan berbeda seperti pada UNIX yang basik, yang memungkinkan pengguna untuk pipa  ke file sementara  tetap terhubung ke konsol. GLUnix kemudian menambahkan tambahan I / Omodes program I / O jaringan. Setiap baris output dari proses terpencil paralel programm didahului dengan VNN dari proses yang yang mana dihasilkan dari program tersebut.

Ø  Dukungan Program Paralel

Sama seperti sistem operasi MPP, GLUnix menyediakan  dukungan penjadwalan  khusus untuk program paralel dalam bentuk hambatan dan penjadwalan bersama. Hambatan yang diperlukan untuk menyinkronkan proses untuk dapat  bekerja sama, memungkinkan programmer  untuk membuat asumsi tentang keadaan perhitungan  dan data dalam proses lainnya. Ketika proses individu dari programenters paralel terhalang,  maka  diblokir dahulu sampai semua proses lain dari program ini juga telah memasuki program yang terhalang.  Setelah itu, semua proses dalam program dilepaskan dari penghalang dan melanjutkan  eksekusi.

Coscheduling, atau penjadwalan secara bersama - sama, memastikan bahwa semua proses pekerjaan paralel tunggal dijadwalkan secara bersamaan dan waktu eksekusi terkoordinasi antara pekerjaan paralel yang berbeda. Sejumlah studi menunjukkan bahwa kurangnya coscheduling mengarah kepada eksekusi yang tidak dapat diterima untuk proses yang sering berkomunikasi. Perlambatan kadang terjadi ketika sebuah proses mencoba untuk berkomunikasi atau menyinkronkan dengan proses yang sedang yang sudah terjadwal.





2.3        Penggunaan GLUnix
GLUnix sudah berjalan dan digunakan setiap hari oleh Deprtment Barkeley CS sejak September 1995. GLUnix berjalan pada Solaris versi 2,3-2,6 dan port dasar untuk Linux di x86 juga telah selesai. Pada Januari 1998, GLUnix telah memiliki lebih dari 160 pengguna selama seumur hidup dan telah menjalankan 1,7 juta pekerjaan. GLUnix telah digunakan sehari-hari oleh kedua pengguna produksi serta pengembang sistem.
   Statistik monitoring diambil selama 100 hari menunjukkan bahwa lebih dari 97% dari waktu itu memberikan umpan balik positif untuk penggunaan GLUnix. GLUnix telah diaktifkan atau dibantu penelitian sistem dan pengembangan program di sejumlah daerah. GLUnix telah digunakan oleh lulusan Arsitektur Paralel dan Sekolah Lanjutan Arsitektur dan oleh departemen penelitian lain di Berkeley. Implementasi paralel bahasa pemrograman SplitC dan Message Passing Interface (MPI) menggunakan GLUnix. Sejumlah program interesting parallel telah dilaksanakan menggunakan fasilitas ini, termasuk: NOW [4], yang mendapatkan rekor untuk waktu tercepat di dunia (8,4 GB di bawah oneminute), p-murphi [19], versi paralel protokol populer alat verifikasi kation, dan 32K dengan 32K pelaksanaan LINPACK yang dicapai 10,1 GFlops 100 prosesor UltraSPARC-I, menempatkan Berkeley NOW 345 dalam daftar 500 superkomputer tercepat di dunia pada saat itu.

Penggunaan terbesar dari cluster GLUnix dan Berkeley NOW yaitu sebagai server menghitung untuk penyulingan gambar thumbnail off dari web 6. Penggunaan paling umum kedua cluster diatas yaitu sebagai server kompilasi paralel melalui  utilitas. Cluster telah digunakan untuk mencapai rekor dunia dalam menyortir disk-to-disk, untuk simulasi dari log canggih file sistem penelitian  terstruktur, partikel dua dimensi dalam plasma sel, Fourier cepat pengubah tiga dimensi, dan algoritma inferensi genetik.

    GLUnix juga ditemukan sangat berguna untuk pengujian dan administrasi sistem. Awalnya, stress testing paralel jaringan Myrinet dan Pesan Active dicapai menggunakan sebuah script yang dibangun dengan GLUnix menjadi stabil dalam penggunaan sehari-hari, script dengan cepat ditinggalkan demi peningkatan kinerja dan kontrol pekerjaan fasilitas GLUnix tersebut. Dari titik itu, pengujian paralel komponen klaster berjalan pada kecepatan yang jauh lebih cepat. Administrator sistem dan pengembang menggunakan GLUnix untuk menjalankan program ini secara bersamaan pada semua node di cluster untuk melaksanakan berbagai tugas administratif.
Fasilitas GLUnix bets telah digunakan untuk mengelola jumlah yang sangat besar pendek dan berjalan pada simulasi tingkat medium, seperti ribuan simulasi  yang memerlukan investigasi secara implisit.












2.4     Arsitektur GLUnix

    Bagian ini memberikan gambaran tentang arsitektur GLUnix. Kita mulai dengan asumsi dasar dari desain, dan kemudian mendiskusikan desain sendiri dan memberikan beberapa contoh ilustrasi bagaimana sistem bekerja. Kami kemudian berbagi beberapa pelajaran rekayasa perangkat lunak yang kita pelajari dari membangun sistem.

Dalam membangun GLUnix, pihak developer membuat dua asumsi utama tentang target yang ingin dicapai yaitu : shared file systems dan sistem operasi yang homogen. GLUnix mengasumsikan  bahwa setiap node dari klaster file sistem yang sama, membuat nama path berlaku pada semua node. Selanjutnya, GLUnix menggunakan file bersama untuk menyimpan alamat jaringan dari master GLUnix terpusat untuk bootstrapping. Klaster ini saat menggunakan file sistem NFS-mount untuk tujuan ini.

 Asumsi kedua adalah bahwa sistem operasi dan format biner akan homogen di semua node di dalam Klaster. Artinya, Klaster GLUnix tunggal dapat mencakup SPARCStation  10 ini, 20-an, dan UltraSPARCs  menjalankan  Solaris 2,3-2,6, tetapi tidak termasuk SPARC dan 80x86machines. Asumsi ini menyederhanakan penerapan GLUnix dengan menghilangkan kesulitan eliminasi dengan byte ordering, ukuran tipe data, dan tata letak struktur data untuk layanan komunikasi GLUnix internal dan memastikan  bahwa binari aplikasi dapat berjalan pada mesin apapun di Klaster. Mengaktifkan  dukungan multiplatform untuk GLUnix akan membutuhkan  port untuk jaringan mekanisme transport data seperti XDR dan mengembangkan mekanisme untuk mendukung binari multiplatform.


GLUnix terdiri dari tiga komponen: master per-cluster, daemon per-node, dan library per-aplikasi. Master GLUnix terutama bertanggung jawab untuk menyimpan dan mengelola klaster (misalnya, informasi beban untuk setiap node dan informasi  proses) dan untuk membuat alokasi sumber daya  terpusat (misalnya, penempatan kerja dan coscheduling). Daemon GLUnix yang berjalan pada setiap node melakukan tugas pengumpulan informasi untuk master, memeriksa informasi beban lokal setiap beberapa detik dan memberitahukan master terhadap segala perubahan. Daemon juga berfungsi sebagai remote proxy untuk master dalam memulai pekerjaan dan dalam mendeteksi pemutusan kerja. Library GLUnix mengimplementasikan GLUnix API, memberikan cara untuk aplikasi untuk meminta layanan GLUnix. Membatalkan modifikasi aplikasi yang belum dikaitkan dengan Library GLUnix masih dapat dijalankan dari jarak jauh melalui GLUnix dan masih dapat menggunakan fasilitas standard UNIX seperti I / Oand kontrol pekerjaan, tetapi tidak akan memiliki akses ke fitur klaster canggih (seperti eksekusi paralel) yang disediakan oleh API GLUnix. Pekerjaan sekuensial dan paralel disampaikan kepada GLUnix dengan proses startup yang terkait dengan Library GLUnix. Proses startup mengeluarkan permintaan eksekusi untuk master GLUnix dan kemudian bertindak sebagai proxy lokal untuk pekerjaan pengguna, menangkap sinyal kontrol pekerjaan dan meneruskannya ke master dan menerima I / O dari data program terpencil kemudian menampilkan nya untuk pengguna.
                      



BAB III
PENUTUP
3.1  Kesimpulan
     Lapisan sistem GLUnix operasi dirancang dan dibangun sebagai user-level, terpusat, sistem-event untuk menyediakan sistem perangkat lunak untuk jaringan dari workstation. Pengukuran master GLUnix terpusat menunjukkan bahwa desain terpusat mendapat skala yang baik pada jaringan workstation, requiringonly 220 μ sec / node komputasi.

GLUnix pada awalnya ditujukan untuk mendukung berurutan interaktif dan program paralel melalui eksekusi jarak jauh yang transparan dan load balancing. Meskipun sistem ini telah mendukung produksi yang baik dan riset lebih dari 160 pengguna lebih dari dua setengah tahun, hal itu tidak sepenuhnya berhasil dalam memenuhi semua tujuannya. Sejumlah keterbatasan menghalangi pihak developer untuk  menyediakan akses transparan ke sumber daya cluster dalam implementasi user-level sepenuhnya. Untuk mengatasi keterbatasan dalam pendekatan user-level, maka developer sedang membangun SLIC, toolkit kernel kecil yang aman akan mengekspor abstraksi sistem yang diperlukan untuk tingkat pengguna.

3.2 Saran
Untuk kedepannya diharapkan system operasi system terdistribusi khususnya GLUnix dapat digunakan dan berfungsi dengan baik tanpa kendala. Kami berharap juga edukasi mengenai GLUnix yang sekarang ini sangat minim, kedepannya dapat lebih luas dan dapat dipelajari pada berbagai jenjang pendidikan.




















Daftar Pustaka


-          Douglas P. Ghormley, David Petrou, etc. 1998. GLUnix: a Global Layer Unix for a Network of Workstations
-          Musyyanah. 2016. Sistem Operasi Terdistribusi http://blog.stikom.edu/musayyanah/files/2016/04/Sistem-Operasi-Terdistribusi.pdf





Komentar

Postingan populer dari blog ini

Creative Teks Coreldraw X8&Photoshop CS6 + Image Retouching