STRUKTUR SISTEM OPERASI

Sistem operasi merupakan suatu sistem yang besar dan kompleks sehingga strukturnya harus dirancang dengan hati hati dan seksama supaya dapat berfungsi seperti yang diinginkan serta dapat dimodifikasi dengan mudah

struktur sistem operasi merupakan komponen komponen sistem operasi yang dihubungkan dan dibentuk di dalam karnel. ada beberapa struktur sistem operasi dan pernah dicoba, diantaranya akan dibahas dibawah ini.

Struktur Sederhana

banyak sistem operasi pada awalnya dari sistem operasi yang kecil, sederhana, dan terbatas namun kemudian berkembang melebihi apa yang dibayangkan. contohnya adalah MS-DOS, sebuah sistem operasi mikrokomputer yang paling laris. MS-DOS pada awalnya dirancang dan diimplementasikan oleh beberapa orang yang tidak menyangka bahwa sistem operasi tersebut akan menjadi sangat populer. MS-DOS diutlis untuk memberikan fungsionalitas yang besar di tempat yang terbatas. karena hardware yang tersedia terbatas maka MS-DOS tidak dirancang untuk dibagi-bagi menjadi banyak modul.

Sistem Monolithic

struktur sistem operasi ini tidak terstruktur. Sistem operasi sebagai kumpulan kumpulan prosedur yang masing-masing dapat saling dipanggil jika dibutuhkan. Setiap prosedur yang ada di dalam sistem ini mempunyai interface yang sudah didefinisikan dengan baik, dalam hal ini dapat berupa parameter dan hasilnya, serta masing masing prosedur bebas untuk saling memanggil jika dibutuhkan.  Contohnya adalah UNIX menggunakan struktur monolitik dimana prosedur dapat saling dipanggil oleh prosedur lain di sistem bila diperlukan dan kernel berisi semua layanan yang disediakan sistem operasi untuk pengguna. Inisialisasi-nya terbatas pada fungsional perangkat keras yang terbagi menjadi dua bagian yaitu kernel dan sistem program. Kernel terbagi menjadi serangkaian interface dan device driver dan menyediakan sistem file, penjadwalan CPU, manajemen memori, dan fungsi-fungsi sistem operasi lainnya melalui system calls.

walaupun tidak berstruktur, sebenarnya sistem monolithic tetap mempunyai struktur walaupun kecil dan mendasar. Struktur tersebut adalah :

a. program utama yang meminta service procedure

b. kumpulan service procedure yang membawa sistem call

c. kumpulan utilitas prosedur yang membantu service procedure

Kelemahan struktur monolitik adalah:

  • Pengujian dan penghilangan kesalahan sulit karena tidak dapat dipisahkan dan dialokasikan
  • Sulit dalam menyediakan fasilitas pengamanan
  • Merupakan pemborosan memori bila setiap komputer harus menjalan kernel monolitik, karena semua layanan tersimpan dalam bentuk tunggal sedangkan tidak semua layanan diperlukan.
  • Kesalahahan sebagian fungsi menyebabkan sistem tidak berfungsi.

Keuntungan struktur monolitik adalah layanan dapat dilakukan dengan cepat karena terdapat dalam satu ruang.

Sistem Lapisan

Sistem operasi dibagi menjadi beberapa lapisan. Lapisan terbawah (layer 0) adalah hardware dan yang tertinggi (layer N) adalah user interface. Lapisan N memberi layanan untuk lapisan N+1 sedangkan proses-proses di lapisan N dapat meminta layanan lapisan N-1 untuk membangun layanan lapisan N+1. Lapisan N dapat meminta layanan lapisan N-1 namun lapisan N tidak dapat meminta layanan lapisan N+1. Masing-masing berjalan pada lapisannya sendiri.

Menurut Tanenbaum dan Woodhull, sistem terlapis terdiri dari enam lapisan, yaitu:

  1. Lapisan 0. Mengatur alokasi prosesor, pertukaran antar proses ketika interupsi terjadi atau waktu habis dan lapisan ini mendukung dasar multi-programming pada CPU.
  2. Lapisan 1. Mengalokasikan ruang untuk proses di memori utama dan pada 512 kilo word drum yang digunakan untuk menahan bagian proses ketika tidak ada ruang di memori utama.
  3. Lapisan 2. Menangani komunikasi antara masing-masing proses dan operator console. Lapisan ini masing-masing proses secara efektif memiliki operator console sendiri.
  4. Lapisan 3. Mengatur peranti I/O dan menampung informasi yang mengalir dari/ke proses tersebut.
  5. Lapisan 4. Tempat program pengguna. Pengguna tidak perlu memikirkan tentang proses, memori, console, atau manajemen I/O.
  6. Lapisan 5. Merupakan operator sistem.

Contoh sistem operasi yang menggunakan pendekatan berlapis adalah THE yang dibuat oleh Djikstra dan mahasiswa-mahasiswanya, yang mempunyai enam lapis sistem

5. program pemakai

4. buffering untuk perangkat I/O

3. Operator-console device driver

2. manajemen memori

1.penjadwalan CPU

0. hardware

Kelemahan struktur ini adalah fungsi-fungsi sistem operasi harus diberikan ke tiap lapisan secara hati-hati. Sedangkan keunggulannya adalah memeliki semua kelebihan rancangan modular, yaitu sistem dibagi menjadi beberapa modul dan tiap modul dirancang secara independen. Tiap lapisan dapat dirancang, dikode dan diuji secara independen. Pendekatan berlapis menyederhanakan rancangan, spesifikasi dan implementasi sistem operasi.

Microkernels

Metode struktur ini adalah 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. Contoh sistem operasi yang menggunakan metode ini adalah TRU64 UNIX, MacOSX dan QNX.

Keuntungan dari kernel ini adalah kemudahan dalam memperluas sistem operasi, mudah untuk diubah ke bentuk arsitektur baru, kode yang kecil dan lebih aman. Kelemahannya adalah kinerja akan berkurang selagi bertambahnya fungsi-fungsi yang digunakan.

Modular (Modules)

Kernel mempunyai kumpulan komponen-komponen inti dan secara dinamis terhubung pada penambahan layanan selama waktu boot atau waktu berjalan. Sehingga strateginya menggunakan pemanggilan modul secara dinamis (Loadable Kernel Modules). Umumnya sudah diimplementasikan oleh sistem operasi modern seperti Solaris, Linux dan MacOSX.

Sistem Operasi Apple Macintosh Mac OS X menggunakan struktur hybrid. Strukturnya menggunakan teknik berlapis dan satu lapisan diantaranya menggunakan Mach microkernel.

Mesin Virtual

Dalam struktur ini user seakan-akan mempunyai seluruh komputer dengan simulasi atas pemroses yang digunakan. Sistem operasi melakukan simulasi mesin nyata yang digunakan user, mesin virtual ini merupakan tiruan seratus persen atas mesin nyata.

Teknologi ini awalnya digunakan pada IBM S/370. VM/370 menyediakan mesin virtual untuk tiap user dengan membuat mesin virtual baru pada saat user tersebut melakukan log sistem. Kemudian teknik ini berkembang menjadi operating system emulator sehingga sistem operasi dapat menjalankan aplikasi-aplikasi untuk sistem operasi lain.

Dalam lingkungan ini terdapat proteksi berbagai sumber daya sistem. Setiap virtual-machine secara lengkap mengisolasi dari semua virtual-machine yang lain, sehingga tidak ada masalah proteksi. Ada dua pendekatan dalam penyediaan sharing yang diimplementasikan, pertama hal ini memungkinkan share minidisk dan share files. Kedua, memungkinkan pendefinisian jaringan virtual-machine, sehingga dapat mengirim informasi melalui virtual jaringan komunikasi.

Contoh dari pengembangan itu adalah sebagai berikut:

  • Sistem operasi MS-Windows NT dapat menjalankan aplikasi untuk MS-DOS, OS/2 mode teks dan aplikasi WIN16.
  • IBM mengembangkan WABI untuk meng-emulasikan Win32 API sehingga sistem operasi yang menjalankan WABI dapat menjalankan aplikasi-aplikasi untuk MS-Windows.
  • Para pengembang Linux membuat DOSEMU untuk menjalankan aplikas-aplikasi DOS pada sistem operasi Linux, WINE untuk menjalankan aplikasi-aplikasi MS-Windows.
  • VMWare merupakan aplikasi komersial yang meng-abstraksikan perangkat keras intel 80×86 menjadi virtual mesin dan dapat menjalan beberapa sistem operasi lain (guest operating system) di dalam sistem operasi MS-Windos atau Linux (host operating system). VirtualBox merupakan salah satu aplikasi sejenis yang opensource.

Model Client-Server

Dalam model ini, semua kernel bekerja menangani komunikasi antara server dan klien. Dengan membagi sistem operasi menjadi banyak bagian, yang masing-masing hanya menangani bagian tertentu dari sistem, seperti layanan file, layanan proses, layanan terminal, atau layanan memori maka setiap bagian menjadi lebih kecil dan lebih mudah diatur (manageable). Karena semua server berjalan dalam proses user mode dan tidak dalam kernel mode, maka bagian-bagian tersebut tidak mempunyai akses langsung ke hardware.

Keuntungan model client server :

  • bila ada pemicu kesalahan di file server, maka layanan file mungkin akan crash, tetapi tidak akan mempengaruhi keseluruhan sistem, yang akhirnya dapat mengakibatkan keseluruhan sistem tidak berfungsi
  • dapat diadaptasi untuk digunakan adalah sistem terdistribusi. Jika klien berkomunikasi dengan sever dengan mengirimkan pesan, klien tidak perlu tahu pesan tersebut ditangani secara lokal dalam mesinnya sendiri, atau pesan tersebut dikirimkan melalui jaringan ke server di mesin yang lain (jarak jauh)

Sumber


Binanto,Iwan.2005.Sistem Operasi. Yogyakarta:Andi

Tinggalkan komentar