Operasi system merupakan
terdiri satu atau lebih prosessor, memory utama, disk, perangkat input/Output
dll. Serta pengaturan setiap komponen ini membututhkan sebuah software yang
disebut operasi system. Operasi system sendiri juga terbagi beberapa jenis
yaitu user mode, kernel mode, software and hardware yang didalamnya terdapat user
interface program, operating system yang diatasnya dibalut dengan web browser,
email reader dan music player.
Operasi system juga
berguna sebagai sumber daya diantara lain memperbolehkan beberapa program
berjalan dalam waktu yang sama , mengatur memory,peralatan I/O, dan sumber daya
lainnya serta termasuk dalam pengaturan multi sharing dalam dua yang berbeda :
waktu dan tempat. Contoh operasi system terdapat berbagai macam hardware atau
biasa yang kita sebut CPU. Nah didalam CPU tersebut ada berbagai hardware yaitu
memory, video controller, keyboard controller, USB controller, Hard disk
controller. Selain itu CPU Pipelining juga termasuk OS yang artinya satu set
dari elemen pemrosesan data dihubungkan secara seri, sehingga hasil keluaran
dari satu elemen adalah masukkan bagi elemen berikutnya. Elemen-elemen dari
sebuah pipeline serimg dijalankan secara parallel. Contoh pipeline dalam computer
adalah pipeline intruksi.
Kemudian ada
hirarki memori yang berfungsi untuk peningkatan waktu akses memori (semakin ke
bawah semakin lambat), semakin ke atas semakin cepat. Peningkatan kapasitas (semakin
ke bawah semakin besar, semakin ke atas semakin kecil). Peningkatan jarak (semakin
ke bawah semakin jauh, semakin kea atas semakin dekat). Penurunan harga memori
tiap bitnya (semakin ke bawah semakin murah, semakin ke atas semakin mahal).
Perangkat I/O terdiri
dari CPU,Interrupt controller, Disk controller yang terdapat current instruction,
next instruction. Langkah pertama interrupt, kedua dispatch to hander dan
ketiga Return. Langkah awal dari perangkat I/O dan item yang menapatkan
interrupt. Konsep OS terdiri dari Processes, address spaces, files, input/output,
protection dan the shell.
Sistem operasi mempunyai tiga sasaran utama yaitu kenyamanan — membuat
penggunaan komputer menjadi lebih nyaman, efisien — penggunaan sumber-daya sistem komputer secara
efisien, serta mampu berevolusi — sistem operasi harus dibangun sehingga memungkinkan
dan memudahkan pengembangan, pengujian serta pengajuan sistem-sistem yang baru.
Sebuah sistem operasi yang baik menurut Tanenbaum
harus memiliki layanan sebagai berikut:
1.
Pembuatan program
sistem operasi menyediakan fasilitas dan layanan
untuk membantu para pemrogram untuk menulis program
2.
Eksekusi program
Instruksi-instruksi dan data-data harus dimuat ke
memori utama, perangkat-parangkat masukan/ keluaran dan berkas harus
di-inisialisasi, serta sumber-daya yang ada harus disiapkan, semua itu harus di
tangani oleh sistem operasi
3.
Pengaksesan I/O Device
Sistem Operasi harus mengambil alih sejumlah
instruksi yang rumit dan sinyal kendali menjengkelkan agar pemrogram dapat
berfikir sederhana dan perangkat pun dapat beroperasi
4. Pengaksesan
terkendali terhadap berkas.
Disediakannya mekanisme proteksi terhadap berkas
untuk mengendalikan pengaksesan terhadap berkas
5.
Pengaksesan sistem
Menggunakan prinsip shared system (sistem digunakan
bersamaan dalam suatu waktu). Fungsi pengaksesan harus menyediakan proteksi
terhadap sejumlah sumber-daya dan data dari pemakai tak terdistorsi serta
menyelesaikan konflik-konflik dalam perebutan sumber-daya
6.
Deteksi dan pemberian tanggapan pada kesalahan.
Jika muncul permasalahan muncul pada sistem komputer
maka sistem operasi harus memberikan tanggapan yang menjelaskan kesalahan yang
terjadi serta dampaknya terhadap aplikasi yang sedang berjalan
7.
Akunting.
Sistem Operasi yang bagus mengumpulkan data statistik
penggunaan beragam sumber-daya dan memonitor parameter kinerja.
Struktur system operasi yaitu Pendekatan yang umum suatu sistem yang besar dan kompleks adalah dengan
memecah tugas-tugas(task) ke bentuk komponen-komponen kecil dibandingkan dalam
bentuk sistem tunggal (monolithic). Komponen-komponen tersebut akan akan di bahas pada bagian ini.
Banyak sistem operasi komersial yang tidak terstruktur dengan baik. Kemudian
sistem operasi dimulai dari yang terkecil, sederhana dan terbatas lalu
berkembang dengan ruang lingkup originalnya. Contoh dari sistem operasi ini
adalah 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. 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.
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.
Pendekatan Berlapis (Layer Approach).
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:
Lapisan
0. Mengatur alokasi prosesor, pertukaran antar proses ketika interupsi terjadi
atau waktu habis dan lapisan ini mendukung dasar multi-programming pada CPU.
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.
Lapisan
2. Menangani komunikasi antara masing-masing proses dan operator console.
Lapisan ini masing-masing proses secara efektif memiliki operator console
sendiri.
Lapisan
3. Mengatur peranti I/O dan menampung informasi yang mengalir dari/ke proses
tersebut.
Lapisan
4. Tempat program pengguna. Pengguna tidak perlu memikirkan tentang proses,
memori, console, atau manajemen I/O.
Lapisan
5. Merupakan operator sistem.
Contoh sistem operasi yang
menggunakan pendekatan berlapis adalah THE yang dibuat oleh Djikstra dan
mahasiswa-mahasiswanya, serta sistem operasi MULTICS. 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.
Virtual
Machine, 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:
o Sistem operasi MS-Windows
NT dapat menjalankan aplikasi untuk MS-DOS, OS/2 mode teks dan aplikasi WIN16.
o IBM mengembangkan WABI
untuk meng-emulasikan Win32 API sehingga sistem operasi yang menjalankan WABI
dapat menjalankan aplikasi-aplikasi untuk MS-Windows.
o Para pengembang Linux
membuat DOSEMU untuk menjalankan aplikas-aplikasi DOS pada sistem operasi
Linux, WINE untuk menjalankan aplikasi-aplikasi MS-Windows.
o 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.

Tidak ada komentar:
Posting Komentar