Popular Post

Popular Posts

Wednesday, 9 January 2019



Amoeba adalah sistem berbasis mikro-kernel yang tangguh yang menjadikan banyak workstation personal menjadi satu sistem terdistribusi secara transparan. Sistem ini sudah banyak digunakan di kalangan akademik, industri, dan pemerintah selama sekitar 5 tahun. Sistem operasi terdistribusi Amoeba telah dikembangkan dan digunakan sejak 1981.dirancang untuk mengambil koleksi mesin-mesin dan membuat mereka bertindak bersama sebagai satu sistem terpadu. 


Amoeba adalah sebuah proyek penelitian yang ditujukan untuk komputasi terdistribusi baik (beberapa pengguna independen bekerja pada proyek-proyek yang berbeda) dan komputasi paralel (misalnya, satu pengguna menggunakan CPU 50 untuk bermain catur secara paralel). Amoeba menyediakan mekanisme yang diperlukan untuk melakukan keduanya aplikasi terdistribusi dan paralel, tetapi kebijakan sepenuhnya ditentukan oleh user-level program. Sebagai contoh, baik tradisional (yaitu berurutan) membuat dan paralel baru amake disediakan

Tujuan desain dasar Amoeba adalah:
– Distribution     :   Connecting bersama banyak mesin
– Parallelism       :   Allowing pekerjaan individu untuk menggunakan beberapa CPU dengan mudah
– Transparency   :   Having koleksi komputer bertindak seperti sistem tunggal
– Performance    :   Achieving semua di atas dalam cara yang efisien

KONSEP DAN CARA KERJA
Pada awalnya Amoeba telah dikembangkan dengan beberapa ide. Yang petama adalah komputer menjadi lebih murah dengan akses lebih cepat secara pesat. Dalam satu dekade kita telah mengalami kemajuan dari awalnya beberapa orang menggunakan kompuer secara bersama-sama hingga setiap orang dapat memiliki komputer masing-masing,sebagaimana komputer yang berkembang dan terus menjadi semakin semakin murah hal ini memungkinkan bagi setiap orang untuk memiliki lebih dari kmputer untuk pemakaian individual. Hal ini sudah terjadi sampai batas tertentu.
Yang kedua berkaitan dengan luas penggunaan dan peningkatan performa dari jaringan komputer. Kebutuhan akan sebuah keseragaman dalam mekanisme komunikasi antar omputer yang keduanya berada dalam suatu jaringan lokal maupun dalam jaringan yang lebih luas sudah jelas untuk beberapa aplikasi.
Hal yang sebenarnya dibutuhkan adalah kemampuan untuk berhubungan dengan hardware yang didistribusikan secara fisik selama menggunakan logika perangkat lunak terpusat.Amoeba memungkinkan koneksi dari komputer dengan jumlah yang banyak, pada jaringan lokal dan jaringan yang lebih luas dengan cara koordinasi yang jelas mudah untuk digunakan dan dimengerti.
Ide mendasar dari Amoeba ini sendiri adalah untuk memberikan ilusi dari sebuah sistem timesharing tunggal yang powerfull, ketika faktanya adalah bahwa sistemnya diimplementasikan pada sebuah koleksi mesin, berpotensi didistribusikan ke beberapa negara. Tujuan desain utama adalah untuk membangun sebuah sistem terditribusi yang kecil, mudah digunakan, memiliki prosesor dalam jumlah yang banyak, memiliki derajat toleransi kesalahan, meiliki performa yang tinggi, termasuk kemungkinan untuk paralelismen dan yang terutama adalah agar dapay digunakan secara transparan kepada pengguna.
Yang dimaksudkan dengan trasparan dapat digambarkan dengan membandingkan dengan sistem operasi jaringan, dimana setiap mesin mempertahankan identitasnya sendiri. Dengan sebuah sisem operasi jaringan, masing-masing pengguna log ke dalam bagian mesin tertentu, yaitu bagian ‘home machine’ mereka. Ketika sebuah program dimulai, hal tersebut dieksekusi pada home machine, kecuali pengguna memberikan perintah eksplisit untuk mengeksekuis di tempat lain. Demikian pula dengan berkas-berkas lokal, kecuali sebuah remote sistem berkas secara explicit dipasang atau berkas-berkas telah disalin secara eksplisit.Singkatnya, para pengguna sadar bahwa terdapat beberapa komputer independen, dan harus berhubungan dengan hal tersebut secara eksplisit.
            Sebaliknya, dalam sebuah sisem terdisribusi yang tansparan, pengguna dapat secara efektif masuk ke sistem secara keseluruhan, dan bukan ke beberapa mesin tertentu. Saat sebuah program dijalankan, sistem yang akan memutuskan dimana yang paling baik untuk menjalankan program tersebut, bukan pengguna yang menentukan. Penggun bahkan tidak menyadari pilihan ini. Akhirnya, ada sebuah sistem penamaan objek secara keseluruhan. Berkas-berkas yang berada pada sebuah direktori tunggal dapat dilokasikan pada mesin yang berbeda bahakan mungkin negara yang berbeda. Tidak ada konsep transfer berkas, mengunggah atau mengunduh dari server, atau memasang remote sistem berkas.

Konsep Dasar dalam Amoeba

 Mikrokernel + Server Arsitektur

Kernel Mikro adalah Metode struktur menghilangkan komponen-komponen yang tidak diperlukan dari kernel dan mengimplementasikannya sebagai sistem dan program-program level user. Hal ini akan menghasilkan kernel yang kecil. Fungsi utama dari jenis ini adalah menyediakan fasilitas komunikasi antara program client dan bermacam pelayanan yang berjalan pada ruang user.
Kelebihan Kernel Mikro:
  • kemudahan dalam memperluas sistem operasi
  • mudah untuk diubah ke bentuk arsitektur baru
  • kode yang kecil dan lebih aman
Kekurangan Kernel Mikro:
  • kinerja akan berkurang selagi bertambahnya fungsi-fungsi yang digunakan.
Contoh: sistem operasi yang menggunakan metode ini adalah TRU64 UNIX, MacOSX dan QNX.

Amoeba ini dirancang dengan apa yang saat ini disebut sebagai arsitektur mikrokernel. Ini berarti bahwa setiap mesin dalam sebuah sistem berjalan Amoeba kecil, identik sepotong software yang disebut kernel. Kernel mendukung proses dasar, komunikasi, dan objek primitif. Mentah ini juga menangani perangkat I / O dan memori manajemen. Segalanya lain yang dibangun ontop fundamental ini, biasanya byuser-ruang server proses.
Desain modular ini membuat lebih mudah untuk memahami, menjaga, dan memodifikasi sistem. Sebagai contoh, karena file server adalah sebuah server terisolasi, bukan menjadi seorang bagian integral dari sistem operasi, adalah mungkin bagi pengguna untuk mengimplementasikan file baru server untuk tujuan-tujuan khusus (misalnya NFS, database). Dalam sistem konvensional, seperti UNIX, menambahkan tambahan yang ditetapkan pengguna sistem file infeasible.
  
Threads
Dalam banyak sistem operasi tradisional, suatu proses terdiri dari sebuah ruang alamat dan benang tunggal kontrol. Dalam Amoeba, masing-masing proses memiliki ruang alamat sendiri, tetapi mungkin berisi beberapa kontrol benang (benang). Setiap thread memiliki programnya sendiri counter dan stack sendiri, tetapi kode saham dan data global dengan semua benang lainnya dalam proses.
Setelah beberapa benang di dalam setiap proses yang nyaman untuk berbagai tujuan dan sesuai dengan model komputasi terdistribusi dan paralel dengan sangat baik. Sebagai contoh, sebuah file server mungkin memiliki beberapa benang, masing-masing thread awalnya menunggu permintaan masuk Ketika permintaan datang, diterima oleh beberapa thread, yang kemudian mulai memproses itu. Jika itu thread blok kemudian menunggu untuk disk I / O, benang lain dapat melanjutkan. Meskipun mereka kontrol independen Namun, semua benang dapat mengakses blok Common cache, menggunakan Semaphore untuk menyediakan sinkronisasi antar thread. Desain ini membuat pemrograman server dan aplikasi paralel jauh lebih mudah.
Tidak hanya proses pengguna terstruktur sebagai koleksi benang berkomunikasi dengan RPC, tapi kernel juga. Secara khusus, benang di kernel menyediakan akses ke jasa manajemen memori.

Remote Procedure Call 
Threads sering perlu untuk berkomunikasi dengan satu sama lain. Threads dalam satu proses hanya dapat berkomunikasi melalui memori bersama, tetapi benang yang terletak di berbagai proses memerlukan mekanisme yang berbeda. Amoeba dasar mekanisme komunikasi prosedur remote panggilan (RPC). Komunikasi terdiri dari benang klien mengirimkan pesan ke server benang, kemudian menghalangi sampai server mengirimkan kembali benang kembali pesan, dan pada saat klien diblokir.
Untuk melindungi pengguna dari naif rincian ini, prosedur perpustakaan khusus, yang disebut Rintisan bertopik, disediakan untuk mengakses layanan terpencil. Amoeba memiliki bahasa khusus yang disebut Amoeba Interface Language (AIL) untuk secara otomatis menghasilkan tulisan rintisan ini prosedur. Mereka marshal parameter dan menyembunyikan rincian komunikasi dari para pengguna.

Komunikasi kelompok
Untuk banyak aplikasi, satu-ke-banyak komunikasi dibutuhkan, di mana satu pengirim ingin mengirim pesan ke beberapa penerima. Sebagai contoh, sekelompok kerjasama server mungkin perlu melakukan ini ketika struktur data diperbarui. Juga sering dibutuhkan untuk pemrograman paralel. Amoeba menyediakan fasilitas dasar untuk dapat dipercaya, benar-benar-kelompok memerintahkan komunikasi, di mana semua penerima dijamin untuk kelompok mendapatkan semua pesan dalam urutan yang sama persis. Mekanisme ini menyederhanakan banyak terdistribusi dan pemrograman paralel masalah.

Objek dan Kemampuan
Ada dua konsep dasar di Amoeba : objek dan kemampuan. Semua layanan dan komunikasi yang dibangun di sekitar mereka.
Sebuah objek konseptual tipe data abstrak. Itu adalah, sebuah objek adalah sebuah struktur data di mana operasi tertentu didefinisikan. Sebagai contoh, sebuah direktori adalah obyek yang operasi tertentu dapat diterapkan, seperti nama masukkan dan melihat upname.
Amoeba terutama perangkat lunak mendukung objek, tetapi objek hardware juga ada. Tiap objek ini dikelola oleh proses server yang dapat dikirim RPCs. Setiap RPC menentukan objek yang akan digunakan, operasi harus dilakukan, dan setiap parameter yang akan berlalu.
Ketika sebuah objek dibuat, server melakukan penciptaan membangun sebuah 128-bit disebut kemampuan dan mengembalikannya ke pemanggil. Operasi berikutnya pada objek meminta user untuk mengirimkan kemampuan server untuk kedua menentukan objek dan membuktikan pengguna memiliki izin untuk memanipulasi objek. Kemampuan terlindungi cryptographically untuk mencegah gangguan. Semua benda di seluruh sistem diberi nama dan dilindungi menggunakan satu ini sederhana, transparan skema.

Memory Management
Amoeba model memori yang sederhana dan efisien. Sebuah ruang alamat proses terdiri dari satu atau lebih segmen pengguna dipetakan ke alamat virtual yang ditentukan. Ketika proses pelaksanaan, semua segmen dalam memori. Ada swapping atau paging di sekarang, dengan demikian Amoeba hanya dapat menjalankan program yang cocok di memori fisik. Keuntungan utama dari skema ini adalah kesederhanaan dan kinerja tinggi. Kekurangan utama adalah bahwa tidak mungkin untuk menjalankan program lebih besar daripada memori fisik.

Input / Output
I / O juga ditangani oleh kernel benang. Untuk membaca mentah blok dari disk, misalnya, proses pengguna memiliki otorisasi yang tepat, apakah RPCs dengan disk I / O thread di kernel. Pemanggil tidak menyadari bahwa server benar-benar sebuah kernel thread, sejak antarmuka pengguna kernel benang dan benang adalah identik. Secara umum, hanya file server dan sistem serupa seperti proses berkomunikasi dengan kernel I / O benang.

Sistem Arsitektur Amoeba
Sejak komputasi terdistribusi dan paralel berbeda dari komputer pribadi, itu pertama bermanfaat menggambarkan jenis konfigurasi hardware yang Amoeba adalah dirancang. Amoeba tipikal sistem akan terdiri dari tiga kelas fungsional mesin. Pertama, setiap pengguna memiliki workstation untuk menjalankan antarmuka pengguna, sistem jendela X. Workstation ini bisa menjadi teknik khas workstation, atau terminal X khusus. Hal ini sepenuhnya didedikasikan untuk menjalankan antarmuka pengguna, dan tidak perlu melakukan lain komputasi.
Kedua, terdapat sebuah kolam prosesor yang secara dinamis dialokasikan untuk pengguna sebagai diperlukan. Prosesor ini dapat menjadi bagian dari sebuah multiprosesor atau multicomputer, menjadi koleksi komputer papan tunggal atau menjadi kelompok dialokasikan untuk workstation tujuan. Biasanya, setiap kolam prosesor memiliki beberapa megabyte memori swasta, yaitu, renang prosesor tidak perlu memiliki memori bersama (tetapi tidak dilarang). Komunikasi dilakukan dengan mengirimkan paket-paket di atas LAN. Semua berat komputasi prosesor yang terjadi di kolam.
Ketiga, ada server khusus, seperti direktori file server dan server yang dijalankan sepanjang waktu. Mereka dapat berjalan di kolam prosesor prosesor, atau pada hardware khusus, seperti yang diinginkan.
Semua komponen ini harus terhubung dengan LAN cepat. Saat ini hanya Ethernet didukung, tapi port LAN lain yang mungkin.

Manajemen Berkas Amoeba 
Dalam sistem operasi terdistribusi, 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 semacam 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 terdisstribusi.
Dalam implementasi sistem Amoeba, terutama di negeri Belanda dimana hak akses yang dimiliki pengguna terbatas pada hak baca, tulis/membuat, dan hapus. Dengan hal ini, maka keamanan server dapat terjaga. Pelayanan terhadap direktori yang ada dibuat sangat ketat dalam hal keamanan. Bahkan dibuat semacam kode acak yang akan menyandikan sehngga tidak mudah dibaca oleh siapapun. Kode penyandiannya akan digunakan lagi oleh sistem untuk mengembalikan seperti semula kepada user. Kode ini hanya akan diberikan kepada pemilik tersebut. Sehingga ketika user mengakses berkas yang bersangkutan, maka kode penyandi akan dibuat oleh sistem, agar pemilik dapat membacanya. Pelayanan direktori ini juga bertanggungjawab dalam hal backup sistem. Hal ini akan menyebabkan selalu dalam keadaan yang aman, dan lebih kebal terhadap gangguan yang terjadi di dalam sistem, karena pelayanan direktori ini menyimpan cache dari atau direktori yang berada pada sistem.

sumber:
http://lessontkj.blogspot.com/2014/10/sitem-berlapis-layered-system.html
http://estiimnida.blogspot.com/2013/01/sistem-operasi-amoeba.html
https://swestimahardini.wordpress.com/2012/11/25/a-m-o-e-b-a-sistem-terdistribusi/

Leave a Reply

Subscribe to Posts | Subscribe to Comments

- Copyright © 2016 By G