• Tidak ada hasil yang ditemukan

Gambar 7.4. Sistem Terdistribusi dan Terkluster

Disamping memiliki beberapa keuntungan, sistem terdistribusi juga memiliki beberapa kelemahan, misalnya:

• Jika tidak direncanakan dengan tepat, sistem terdistribusi bisa menurunkan proses komputasi, misalnya jika kegagalan salah satu komputer mempengaruhi komputer-komputer yang lain. • Troubleshooting menjadi lebih rumit, karena bisa memerlukan koneksi ke komputer lain yang

terhubung secara remote, atau menganalisis komunikasi antar komputer.

• Tidak semua proses komputasi cocok untuk dilakukan dalam sistem terdistribusi, karena besarnya keperluan komunikasi dan sinkronisasi antar komputer. Jika bandwith, latency, atau kebutuhan komunikasi terlalu besar, maka performanya bisa menjadi lebih jelek daripada sistem yang tidak terdistribusi sama sekali. Karena itu, lebih baik komputasi dilakukan di sistem yang tidak

terdistribusi.

Salah satu topik yang sedang hangat dibicarakan dalam dunia komputer adalah sistem terkluster. Sistem terkluster menjadi alternatif SMP untuk memperoleh performa dan ketersediaan yang tinggi. Saat ini, sistem terkluster populer untuk aplikasi-aplikasi server. Sistem terkluster pada dasarnya adalah sekumpulan komputer independen (bisa berjalan sendiri) yang terhubung satu sama lain untuk menyatukan sumber daya yang ada sehingga seolah-olah menjadi satu komputer saja.

Keuntungan:

a. Absolute scalability. Adalah mungkin untuk menciptakan sistem terkluster yang jauh lebih

powerful daripada satu komputer standalone yang terbesar sekalipun. Satu kluster bisa terdiri

atas puluhan, bahkan ratusan komputer, dan masing-masing adalah multiprosesor.

b. Incremental scalability. Kluster diatur sedemikian rupa sehingga bisa dupgrade sedikit demi sedikit sesuai dengan kebutuhan, tanpa harus mengupgrade keseluruhan sistem sekaligus secara besar-besaran.

c. High availability. Karena setiap komputer yang tergabung adalah standalone (mandiri), maka kegagalan salah satu komputer tidak menyebabkan kegagalan sistem.

d. Superior price/performance. Dengan konfigurasi yang tepat, dimungkinkan untuk membangun sistem yang jauh lebih powerful atau sama dengan komputer standalone, dengan biaya yang lebih rendah.

7.10. Sistem Waktu Nyata

Pada awalnya, istilah real time digunakan dalam simulasi. Memang sekarang lazim dimengerti bahwa real time adalah "cepat", namun sebenarnya yang dimaksud adalah simulasi yang bisa menyamai dengan proses sebenarnya (di dunia nyata) yang sedang disimulasikan.

Suatu sistem dikatakan real time jika dia tidak hanya mengutamakan ketepatan pelaksanaan instruksi/tugas, tapi juga interval waktu tugas tersebut dilakukan. Dengan kata lain, sistem real time adalah sistem yang menggunakan deadline, yaitu pekerjaan harus selesai jangka waktu tertentu. Sementara itu, sistem yang tidak real time adalah sistem dimana tidak ada deadline, walaupun tentunya respons yang cepat atau performa yang tinggi tetap diharapkan.

Pada sistem waktu nyata, digunakan batasan waktu. Sistem dinyatakan gagal jika melewati batasan yang ada. Misal pada sistem perakitan mobil yang dibantu oleh robot. Tentulah tidak ada gunanya memerintahkan robot untuk berhenti, jika robot sudah menabrak mobil.

Sistem waktu nyata bisa dijumpai pada tugas-tugas yang mission critical, misal sistem untuk sistem pengendali reaktor nuklir atau sistem pengendali rem mobil. Juga sering dijumpai pada peralatan medis, peralatan pabrik, peralatan untuk riset ilmiah, dan sebagainya.

Ada dua model sistem real time, yaitu hard real time dan soft real time.

Hard real time mewajibkan proses selesai dalam kurun waktu tertentu. Jika tidak, maka gagal.

Misalnya adalah alat pacu jantung. Sistem harus bisa memacu detak jantung jika detak jantung sudah terdeteksi lemah.

Sementara soft real time menerapkan adanya prioritas dalam pelaksanaan tugas dan toleransi waktu. Misalnya adalah transmisi video. Gambar bisa sampai dalam keadaan terpatah-patah, tetapi itu bisa ditolerir karena informasi yang disampaikan masih bisa dimengerti.

7.11. Aspek Lainnya

• Sistem multimedia. Sistem multimedia adalah sistem yang menyajikan berbagai bentuk informasi dengan barbagai tehnik seperti gambar, suara, teks, animasi, video yang disajikan secara interaktif untuk memberi informasi atau menghibur.

• Handal. Para pengguna tentulah tidak akan gembira jika sistem terlalu sering crash.

• Sistem berkas. Ukuran berkas multimedia cenderung sangat besar. Sebagai contoh , berkas video dalam format MPEG dengan durasi 60 menit akan berukuran sekitar 650 MBytes. Untuk itu, diperlukan sistem operasi yang mampu menangani berkas-berkas dengan ukuran tersebut secara efektif dan efisien.

• Bandwidth. Piperlukan bandwidth (ukuran saluran data) yang besar untuk multimedia, misalnya video.

• Waktu nyata. Selain memerlukan bandwidth yang besar, berkas multimedia harus disampaikan secara lancar berkesinambungan, serta tidak terputus-putus. Walaupun demikian, tentu ada toleransi tertentu terhadap kualitas gambar/suara (soft real time). Misal pada aplikasi video conference. Pengguna masih bisa mentolerir jika gambar sedikit terpatah-patah atau suara sedikit lebih lambat dari video.

• Embedded System. Embedded system pada dasarnya adalah komputer khusus yang tugasnya menjalankan tugas spesifik. Tidak seperti PC, yang bisa digunakan untuk banyak hal seperti browsing, menonton video, membuat program dan sebagainya, embedded system hanya melakukan satu atau beberapa tugas tertentu saja, tentunya masing-masing memiliki kebutuhan yang spesifik dan seringkali diperlengkapi dengan hardware khusus yang tidak lazim ditemui pada PC biasa. Biasanya embedded system menggunakan hardware yang terbatas, misal memori yang kecil atau tidak memiliki harddisk, tidak memiliki fasilitas canggih seperti virtual memory yang lazim ditemui di PC biasa, dan lain-lain. Karena embedded system hanya melakukan tugas tertentu, maka sistem bisa dioptimasi sedemikian rupa sehingga bisa memperkecil ukuran fisiknya dan menekan biaya produksi. Secara fisik, embedded system bisa dijumpai mulai dari yang berukuran kecil, seperti PDA,MP3 player atau jam digital, kemudian ke yang lebih besar seperti TV, video game console, router sehingga yang kompleks seperti sistem pengendali pabrik,sistem pengatur lampu lalu lintas, atau sistem pemandu pesawat. Emdedded system melakukan komputasi secara real-time dan mereka bisa saja berjalan dengan sedikit interaksi dari manusia (atau tidak sama sekali).

• Komputasi Berbasis Jaringan. Pada awalnya, komputasi tradisional hanya meliputi penggunaan komputer meja (desktop) untuk pemakaian pribadi di kantor atau di rumah. Dengan adanya perkembangan WWW, proses pertukaran informasi antar komputer semakin mudah saja. Bahkan lebih dari itu, proses komputasi pun dilakukan dalam jaringan. Dengan demikian, batas antara komputasi tradisional dan komputasi berbasis jaringan sudah tidak jelas lagi. Peralatan yang dulu tidak terhubung ke jaringan, kini terhubung ke jaringan. Sementara peralatan yang sudah terhubung ke jaringan, kini menggunakan teknologi yang lebih baik lagi, misal dengan peningkatan hardware atau penggunaan protokol komunikasi yang baru. Sekarang misalnya, adalah lazim menemui hotspot di tempat-tempat umum sehingga akses internet makin mudah saja.

• PDA dan Telepon Seluler. Sistem genggam ialah sebutan untuk komputer-komputer dengan kemampuan tertentu, serta berukuran kecil sehingga dapat digenggam. Secara umum, keterbatasan yang dimiliki oleh sistem genggam sesuai dengan kegunaan/layanan yang disediakan. Sistem genggam biasanya dimanfaatkan untuk hal-hal yang membutuhkan portabilitas suatu mesin seperti kamera, alat komunikasi, MP3 Player dan lain lain. Beberapa contoh dari sistem ini ialah Palm Pilot, PDA, dan telepon seluler. Isu yang berkembang tentang sistem genggam ialah bagaimana merancang perangkat lunak dan perangkat keras yang sesuai dengan ukurannya yang kecil. Dari sisi perangkat lunak, hambatan yang muncul ialah ukuran memori yang terbatas dan ukuran monitor yang kecil. Kebanyakan sistem genggam pada saat ini memiliki memori berukuran 512 KB hingga 8 MB. Dengan ukuran memori yang begitu kecil jika dibandingkan dengan PC, sistem operasi dan aplikasi yang diperuntukkan untuk sistem genggam harus dapat memanfaatkan memori secara efisien. Selain itu mereka juga harus dirancang agar dapat ditampilkan secara optimal pada layar yang berukuran sekitar 5 x 3 inci. Dari sisi perangkat keras, hambatan yang muncul ialah penggunaan sumber tenaga untuk pemberdayaan sistem. Tantangan yang muncul ialah menciptakan sumber tenaga (misalnya baterai) dengan ukuran kecil tapi berkapasitas besar atau merancang hardware dengan konsumsi sumber tenaga yang sedikit. • Smart Card. Smart Card (kartu pintar) merupakan sistem komputer berukuran kartu nama yang

memiliki kemampuan mengoleh informasi. Kemampuan komputasi dan kapasitas memori sistem ini sangat terbatas sehingga optimasi merupakan hal yang paling memerlukan perhatian. Umumnya, sistem ini digunakan untuk menyimpan informasi rahasia untuk mengakses sistem lain. Umpamanya, telepon seluler, kartu pengenal, kartu bank, kartu kredit, sistem wireless, uang elektronis, dst. Sistem ini juga bisa digunakan sebagai sarana identifikasi pemiliknya

7.12. Rangkuman

Ada beberapa cara untuk menghubungkan komponen-komponen yang ada didalam suatu sistem operasi. Pertama, dengan menggunakan struktur sederhana. Kedua, dengan pendekatan terlapis atau level. Lapisan yang lebih rendah menyediakan layanan untuk lapisan yang lebih tinggi. Ketiga, dengan pendekatan kernel mikro, yaitu sistem operasi disusun dalam bentuk kernel yang lebih kecil. Sistem berprosesor jamak mempunyai lebih dari satu CPU yang mempunyai hubungan yang erat; CPU-CPU tersebut berbagi bus komputer, dan kadang-kadang berbagi memori dan perangkat yang

lainnya. Sistem seperti itu dapat meningkatkan throughput dan reliabilititas.

Sistem hard real-time sering kali digunakan sebagai alat pengontrol untuk applikasi yang

dedicated/spesifik tugas tertentu. Sistem operasi yang hard real-time mempunyai batasan waktu

yang tetap yang sudah didefinisikan dengan baik.Pemrosesan harus selesai dalam batasan-batasan yang sudah didefinisikan, atau sistem akan gagal.

Sistem soft real-time mempunyai lebih sedikit batasan waktu yang keras, dan tidak mendukung penjadwalan dengan menggunakan batas akhir. Sistem ini menggunakan prioritas untuk memilih tugas-tugas mana yang harus terlebih dahulu dikerjakan

Sistem terdistribusi adalah sistem yang menjalankan bagian-bagian program di beberapa komputer yang berbeda. Komputer-komputer itu terhubung dalam suatu jaringan. Sistem terdistribusi adalah salah satu bentuk dari paralelisme

Sistem terkluster adalah sistem yang terdiri dari banyak komputer yang disusun sedemikian rupa untuk menyatukan sumber daya yang ada dan seolah-olah dapat dipandang sebagai satu komputer saja. Model seperti ini sering digunakan untuk membangun super komputer.

Pengaruh dari internet dan WWW telah mendorong pengembangan sistem operasi modern yang menyertakan web browser serta perangkat lunak jaringan dan komunikasi sebagai satu kesatuan.

Multiprogramming dan sistem time-sharing meningkatkan kemampuan komputer dengan

melampaui batas operasi (overlap) CPU dan M/K dalam satu mesin. Hal seperti itu memerlukan perpindahan data antara CPU dan alat M/K, ditangani baik dengan polling atau interrupt-driven akses ke M/K port Agar komputer dapat menjalankan suatu program, maka program tersebut harus berada di memori utama.

Rujukan

[Silberschatz2005] Avi Silberschatz, Peter Galvin, dan Grag Gagne. 2005. Operating Systems

Concepts. Seventh Edition. John Wiley & Sons.

[Stallings2001] William Stallings. 2001. Operating Systems: Internal and Design Principles. Fourth Edition. Edisi Keempat. Prentice-Hall International. New Jersey.

[Tanenbaum1997] Andrew S Tanenbaum dan Albert S Woodhull. 1997. Operating Systems Design

and Implementation. Second Edition. Prentice-Hall.

[Tanenbaum2001] Andrew S Tanenbaum. 2001. Modern Operating Systems. Second Edition. Prentice-Hall.

[WEBWiki2007a] . 2007. Kernel - http://en.wikipedia.org/wiki/Kernel_(computer_science) . Diakses 22 Februari 2007.

[WEBWiki2007b] . 2007. Symmetric multiprocessing -http://en.wikipedia.org/wiki/Symmetric_multiprocessing . Diakses 23 Februari 2007.

[WEBWiki2007c] . 2007. Microkernel - http://en.wikipedia.org/wiki/Microkernel . Diakses 23 Februari 2007.

[WEBWiki2007d] . 2007. Real time system - http://en.wikipedia.org/wiki/Real-time_system . Diakses 23 Februari 2007.

Bab 8. Virtual Machine (VM)

8.1. Pendahuluan

Virtual Machine (VM) adalah sebuah mesin yang mempunyai dasar logika yang menggunakan

pendekatan lapisan-lapisan (layers )dari sistem komputer.Sehingga sistem komputer dengan tersendiri dibangun atas lapisan-lapisan tersebut, dengan urutan lapisannya mulai dari lapisan terendah sampai lapisan teratas adalah sebagai berikut:

• Perangkat keras (semua bagian fisik komputer)

• Kernel (program untuk mengontrol disk dan sistem file, multi-tasking, load-balancing,

networking dan security)

• Sistem program (program yang membantu general user)

Kernel yang berada pada lapisan kedua ini, menggunakan instruksi perangkat keras untuk menciptakan seperangkat system call yang dapat digunakan oleh komponen-komponen pada level sistem program. Sistem program kemudian dapat menggunakan system call dan perangkat keras lainnya seolah-olah pada level yang sama. Meskipun sistem program berada di level tertinggi , namun program aplikasi bisa melihat segala sesuatu pada tingkatan dibawahnya seakan-akan mereka adalah bagian dari mesin. Pendekatan dengan lapisan-lapisan inilah yang kemudian menjadi kesimpulan logis pada konsep Virtual Machine (VM) atau virtual machine (VM).