Struktur Sistem Operasi
Terdapat lima struktur dasar yang digunakan untuk membuat/mengembangkan Sistem Operasi,
yaitu:
1. Sistem
Monolitik
Deskripsi
Sistem
operasi sebagai kumpulan prosedur yang dapat dipanggil oleh prosedur lain jika
diperlukan. Prosedur ini terdapat didalam kernel atau inti. Menggunakan konsep
kernel loadable modules guna pengembangan, pengujian dan fleksibilitas sistem
operasi.
Karakteristik
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. Contoh
sistem operasi : MS-DOS dan UNIX. MS-DOS
merupakan sistem operasi yang menyediakan fungsional dalam ruang yang sedikit
sehingga tidak dibagi menjadi beberapa modul, sedangkan 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.
Terdapat dua mode operasi yang disediakan :
a. Mode kernel : seluruh instruksi boleh dipanggil.Terdapat dua mode operasi yang disediakan :
b. Mode pengguna : beberapa instruksi I/O dan instruksi tertentu tidak boleh
dipanggil.
Struktur dasar sistem monolitik :
a. Program utama yang menghubungi prosedur pelayanan yang diminta.
b. Kumpulan prosedur pelayanan yang menyediakan system calls.
c. Kumpulan prosedur utilitas yang membantu prosedur pelayanan.
Keuntungan :
Keuntungan :
Layanan dapat
dilakukan sangat cepat karena terdapat di satu ruang alamat.
Kerugian :
- Pengujian dan penghilangan kesalahan sulit karena tidak dapat dipisahkan dan dilokalisasi.
- Sulit dalam menyediakan fasilitas pengamanan.
- Merupakan pemborosan bila setiap komputer harus menjalankan kernel monolitik sangat besar sementara sebenarnya tidak memerlukan seluruh layanan yang disediakan kernel.
- Tidak fleksibel.
- Kesalahan pemograman satu bagian dari kernel menyebabkan matinya seluruh sistem.
Contoh Penerapan Sistem Monolitik |
2. Sistem
Berlapis
Deskripsi
Sistem
operasi yang dibentuk secara hierarki berdasar lapisan-lapisan, dimana lapisan bawah
memberi layanan terhadap lapisan diatasnya.
Karakteristik
Lapisan yang
paling bawah adalah perangkat keras, dan yang paling tinggi adalah
user-interface. Sebuah lapisan adalah implementasi dari obyek abstrak yang
merupakan enkapsulasi dari data dan operasi yang bisa memanipulasi data
tersebut. Struktur berlapis dimaksudkan untuk mengurangi kompleksitas rancangan
dan implementasi sistem operasi. Tiap lapisan mempunyai fungsional dan
antarmuka masukan-keluaran antara dua lapisan bersebelahan yang terdefinisi
bagus.
Sistem terlapis
terdiri dari 6 lapisan, yaitu:
Lapis 5 -
The operator = pemakai operator.
Lapis 4 -
User programs = aplikasi program pemakai.
Lapis 3 -
I/O management = menyederhanakan akses I/O pada level atas.
Lapis 2
-Operator-operatot communication = mengatur komunikasi antar proses.
Lapis 1
-Memory and drum management = mengatur alokasi ruang memori atau drum
magnetic.
Lapis 0
-Processor allocation and multiprogramming =mengatur alokasi pemroses dan
switching,multiprogramming dan pengaturan prosessor.
Menurut
Stallings, model tingkatan sistem operasi yang mengaplikasikan prinsip ini
dapat dilihat pada tabel berikut, yang terdiri dari level-level dibawah ini:
Level 1
Terdiri dari
sirkuit elektronik dimana obyek yang ditangani adalah register memory cell, dan
gerbang logika. Operasi pada obyek ini seperti membersihkan register atau
membaca lokasi memori.
Level 2
Pada level ini
adalah set instruksi pada prosesor. Operasinya adalah instruksi bahasa-mesin,
seperti menambah, mengurangi, load dan store.
Level 3
Tambahan konsep
prosedur atau subrutin ditambah operasi call atau return.
Level 4
Mengenalkan
interupsi yang menyebabkan prosesor harus menyimpan perintah yang baru
dijalankan dan memanggil rutin penanganan interupsi. Empat level pertama bukan
bagian sistem operasi tetapi bagian perangkat keras. Meski pun demikian
beberapa elemen sistem operasi mulai tampil pada level-level ini, seperti rutin
penanganan interupsi. Pada level 5, kita mulai masuk kebagian sistem operasi
dan konsepnya berhubungan dengan multi-programming.
Level 5
Level ini
mengenalkan ide proses dalam mengeksekusi program. Kebutuhan-kebutuhan dasar
pada sistem operasi untuk mendukung proses ganda termasuk kemampuan men-suspend
dan me-resume proses. Hal ini membutuhkan register perangkat keras untuk
menyimpan agar eksekusi bisa ditukar antara satu proses ke proses lainnya.
Level 6
Mengatasi
penyimpanan sekunder dari komputer. Level ini untuk menjadualkan operasi dan
menanggapi permintaan proses dalam melengkapi suatu proses.
Level 7
Membuat alamat
logik untuk proses. Level ini mengatur alamat virtual ke dalam blok yang bisa
dipindahkan antara memori utama dan memori tambahan. Cara-cara yang sering
dipakai adalah menggunakan ukuran halaman yang tetap, menggunakan segmen
sepanjang variabelnya, dan menggunakan cara keduanya. Ketika blok yang
dibutuhkan tidak ada dimemori utama, alamat logis pada level ini meminta
transfer dari level 6. Sampai point ini, sistem operasi mengatasi sumber daya
dari prosesor tunggal. Mulai level 8, sistem operasi mengatasi obyek eksternal
seperti peranti bagian luar, jaringan, dan sisipan komputer kepada jaringan.
Level 8
Mengatasi
komunikasi informasi dan pesan-pesan antar proses. Dimana pada level 5
disediakan mekanisme penanda yang kuno yang memungkinkan untuk sinkronisasi
proses, pada level ini mengatasi pembagian informasi yang lebih banyak. Salah
satu peranti yang paling sesuai adalah pipe (pipa) yang menerima output suatu
proses dan memberi input ke proses lain.
Level 9
Mendukung
penyimpanan jangka panjang yang disebut dengan berkas. Pada level ini, data
dari penyimpanan sekunder ditampilkan pada tingkat abstrak, panjang variabel
yang terpisah. Hal nini bertentangan tampilan yang berorientasikan perangkat
keras dari penyimpanan sekunder.
Level 10
Menyediakan akses
ke peranti eksternal menggunakan antarmuka standar.
Level 11
Bertanggung-jawab
mempertahankan hubungan antara internal dan eksternal identifier dari sumber
daya dan obyek sistem. Eksternal identifier adalah nama yang bisa dimanfaatkan
oleh aplikasi atau pengguna. Internal identifier adalah alamat atau indikasi
lain yang bisa digunakan oleh level yang lebih rendah untuk meletakkan dan
mengontrol obyek.
Level 12
Menyediakan suatu
fasilitator yang penuh tampilan untuk mendukung proses. Hal ini merupakan
lanjutan dari yang telah disediakan pada level 5. Pada level 12, semua info
yang dibutuhkan untuk managemen proses dengan berurutan disediakan, termasuk
alamat virtual di proses, daftar obyek dan proses yang berinteraksi dengan
proses tersebut serta batasan interaksi tersebut, parameter yang harus dipenuhi
proses saat pembentukan, dan karakteristik lain yang mungkin digunakan sistem
operasi untuk mengontrol proses.
Level 13
Menyediakan
antarmuka dari sistem operasi dengan pengguna yang dianggap sebagai shell atau
dinding karena memisahkan pengguna dengan sistem operasi dan menampilkan sistem
operasi dengan sederhana sebagai kumpulan servis atau pelayanan.
Keuntungan :
- Memiliki semua keunggulan 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.
Kerugian :
Fungsi-fungsi
sistem operasi harus diberikan ke tiap lapisan secara hati-hati.
Contoh Penerapan Sistem Berlapis |
3. Sistem Mesin
Maya
Deskripsi
Sistem
operasi yang melakukan simulasi mesin nyata yang memberikan fleksibilitas
tinggi dan memungkinkan sistem operasi yang berbeda dapat dijalankan pada mesin
komputer tersebut atau dapat juga disebut sebagai operating system emulator.
Karakteristik
Mesin maya
mempunyai sistem timesharing yang berfungsi untuk menyediakan kemampuan untuk
multiprogramming dan perluasan mesin dengan antarmuka yang lebih mudah.
Contoh
sistem operasi : Windows NT, Linux dengan DOSEMU.
Keuntungan :
- Pengembangan system dikerjakan pada mesin virtual, termasuk di dalamnya mesin fisik dan tidak mengganggu operasi system yang normal.
- menyediakan proteksi yang lengkap untuk sumber daya system sehingga masing-masing mesin virtual dipisahkan mesin virtual yang lain. Isolasi ini tidak memperbolehkan pembagian sumber daya secara langsung.
Kerugian :
Konsep mesin
virtual sangat sulit untuk mengimplementasikan kebutuhan dan duplikasi yang
tepat pada mesin yang sebenarnya.
Contoh Penerapan Sistem Mesin Maya (Virtual Machine) |
4.
Sistem Client-Server
Deskripsi
Sistem
operasi yang dibagi fungsinya menjadi proses yang menyediakan layanan (server)
dan proses yang memerlukan/meminta layanan (client) didalam memproses data.
Karakteristik
Proses
client yang memerlukan layanan mengirim pesan ke server dan menanti pesan
jawaban. Proses server setelah melakukan tugas yang diminta, mengirim hasil
dalam bentuk pesan jawaban ke proses client. Server hanya menanggapi permintaan
client dan tidak memulai dengan percakapan client. Kode dapat diangkat ke level
tinggi, sehingga kernel dibuat sekecil mungkin dan semua tugas diangkat ke
bagian proses pemakai. Kernel hanya mengatur komunikasi antara client dan
server. Kernel yang ini popular dengan sebutan mikrokernel.
Contoh
sistem operasi : Windows 2000 Server, Linux
Keuntungan :
- Kemampuan diaptasi untuk digunakan dalam distributed system.
- Pengembangan dapat dilakukan secara modular.
- Kesalahan (bugs) di satu subsistem (diimplementasikan sebagai satu proses) tidak merusak subsistem-subsistem lain, sehingga tidak mengakibatkan satu sistem mati secara keseluruhan.
- Mudah diadaptasi untuk sistem tersebar.
Kerugian :
- Layanan dilakukan lambat karena harus melalui pertukaran pesan.
- Pertukaran pesan dapat menjadi bottleneck.
- Tidak semua tugas dapat dijalankan di tingkat pemakai (sebagai proses pemakai).
Contoh Penerapan SistemClient-Server |
5. Sistem
Berorientasi Objek
Deskripsi
Sistem
operasi ini merealisasikan layanan sebagai kumpulan proses dan terstuktur serta
memisahkan layanan yang disediakan dan implementasinya.
Karakteristik
Pada sistem
yang berorientasi objek, layanan diimplementasikan sebagai kumpulan objek.
Objek mengkapsulkan struktur data dan sekumpulan operasi pada struktur data
itu. Tiap objek diberi tipe yang menanda di properti objek seperti proses,
direktori, berkas, dan sebagainya. Dengan memanggil operasi yang didefinisikan
di objek, data yang dikapsulkan dapat diakses dan dimodifikasi. Model ini
sungguh terstruktur dan memisahkan antara layanan yang disediakan dan
implementasinya.
Contoh
sistem operasi : Amoeba, Eden, X-Kernel, Windows NT, Choices, Medusa, Clouds, Muse,
dan sebagainya.
Keuntungan :
Terstruktur
dan memisahkan antara layanan yang disediakan dan implementasinya.
Kerugian :
Sistem
operasi MS Windows NT telah mengadopsi beberapa teknologi berorientasi objek
tetapi belum keseluruhan.
Contoh Penerapan Sistem Berorientasi Objek |
KESIMPULAN :
Dari ke-5
sistem diatas yang terbaik menurut saya adalah Sistem Client-Server.
Selain mudah diadaptasi untuk sistem tersebar, juga karena terdapat server yang
menyediakan layanan dimana ketika client memerlukan atau meminta layanan didalam
memproses data, server dapat langsung memberikan layanannya kepada client. Serta
kesalahan (bugs) di satu subsistem (diimplementasikan sebagai satu proses)
tidak merusak subsistem-subsistem lain, sehingga tidak mengakibatkan satu
sistem mati secara keseluruhan.
- http://ian29januari.blogspot.com/p/diskusi-3-struktur-dasar-sistem-operasi_24.html
- http://depemaginting.wordpress.com/2011/03/24/struktur-sistem-operasi/
- http://widyatikaen.blogspot.com/2013/03/struktur-sistem-operasi.html
Tidak ada komentar:
Posting Komentar