1.
Sistem Operasi adalah Perangkat lunak yang berfungsi sebagai
jembatan antara aplikasi dan perangkat keras dimana aplikasi tersebut
dijalankan. Ketika sebuah aplikasi mebutuhkan akses ke perangkat keras,
misalnya saat menyimpan data ke disk, maka proses tersebut dilakukan oleh
aplikasi melalui perantara sistem operasi.
1.
Macam - macam Sistem Operasi :
1)
UNIX
Unix atau UNIX adalah sebuah sistem operasi komputer yang
dikembangkan oleh AT&T Bell Labs pada tahun 1960 dan 1970-an. UNIX didesain
sebagai sistem operasi yang portable, multi-tasking dan multi-user. BSD adalah
salah satu turunan (varian) Unix yang dikembangkan oleh Universitas California,
Berkeley.
2)
Linux
Linux adalah nama yang diberikan kepada sistem
operasi komputer bertipe Unix. Linux merupakan salah satu contoh hasil
pengembangan perangkat lunak bebas dan sumber terbuka utama. Seperti perangkat
lunak bebas dan sumber terbuka lainnya pada umumnya, kode sumber Linux dapat
dimodifikasi, digunakan dan didistribusikan kembali secara bebas oleh siapapun.
Nama “Linux” berasal dari nama kernelnya (kernel Linux), yang dibuat tahun 1991
oleh Linus Torvalds. Sistemnya, peralatan sistem dan pustakanya umumnya berasal
dari sistem operasi GNU, yang diumumkan tahun 1983 oleh Richard Stallman.
Kontribusi GNU adalah dasar dari munculnya nama alternatif GNU/Linux
3)
Mac OS
Mac OS adalah singkatan dari Macintosh Operating System. Mac
OS adalah sistem operasi komputer yang dibuat oleh Apple Computer khusus untuk
komputer Macintosh dan tidak kompatibel dengan PC berbasis IBM. Diperkenalkan
pada tahun 1984, Mac OS sejak tahun 2006 telah memiliki kompatibilitas dengan
arsitektur PowerPC maupun x86.
4)
FreeBSD
FreeBSD adalah sebuah sistem operasi bertipe
Unix bebas yang diturunkan dari UNIX AT&T lewat cabang Berkeley Software
Distribution (BSD) yaitu sistem operasi 386BSD dan 4.4BSD. FreeBSD berjalan di
atas sistem Intel x86 (IA-32) (termasuk Microsoft Xbox), DEC Alpha, Sun
UltraSPARC, IA-64, AMD64, PowerPC dan arsitektur NEC PC-98. Dukungan untuk
arsitektur ARM dan MIPS sedang dalam pengembangan.
5)
Solaris
Sistem
Operasi Solaris adalah sebuah Sistem Operasi yang berdasarkan UNIX system yang
diperkenankan oleh Sun Microsystems oada tahun 1992 sebagai pendukung SunOS.
Solaris terkenal karena kestabilannya, khususnya pada sistem SPARC (Scalable
Processor Architecture), Solaris disertifikasi dalam Spesifikasi UNIX walaupun
pada awal pengembangannya berdasarkan kepemilikan pribadi, dan kebanyakan kode
dasarnya sekarang ini merupakan Software OpenSource yang biasa dikenal dengan
OpenSolaris. OpenSolaris adalah OpenSource versi Sistem Operasi Sun Solaris,
tetapi Sun Solaris terdiri dari lebih beberapa kode yang tidak hanya inti dari
Sistem Operasi misalnya : Source untuk Installer, Desktop, Software.
6)
IBM OS/2
Sistem
Operasi IBM OS/2 ini dibuat secara bersama-sama oleh International Bussiness
Machine Corporation dan Microsoft Corporation, untuk digunakan pada komputer
IBM sebagai pengganti Sistem Operasi DOS. Kata OS/2 adalah singkatan dari Operating
System/2, Sistem Operasi ini didesain agar dapat menggunakan kemampuan penuh
dari Mikroprosessor Intel 80286 , termasuk diantaranya adalah Modus terproteksi
(Protected Mode), mampu menjalankan tugas secara Simultan, serta mendukung
Memori Virtual, dengan tetap mempertahankan kompatibilitas dengan banyak
perangkat lunak MS-DOS yang beredar saat itu,
7)
Windows
Microsoft Windows atau lebih dikenal dengan
sebutan Windows adalah keluarga sistem operasi komputer pribadi yang
dikembangkan oleh Microsoft yang menggunakan antarmuka dengan pengguna berbasis
grafik (graphical user interface).
Sistem operasi Windows telah berevolusi dari
MS-DOS, sebuah sistem operasi yang berbasis modus teks dan command-line.
Windows versi pertama, Windows Graphic Environment 1.0 pertama kali
diperkenalkan pada 10 November 1983, tetapi baru keluar pasar pada bulan
November tahun 1985 yang dibuat untuk memenuhi kebutuhan komputer dengan
tampilan bergambar. Windows 1.0 merupakan perangkat lunak 16-bit tambahan
(bukan merupakan sistem operasi) yang berjalan di atas MS-DOS (dan beberapa
varian dari MS-DOS), sehingga ia tidak akan dapat berjalan tanpa adanya sistem
operasi DOS. Versi 2.x, versi 3.x juga sama. Beberapa versi terakhir dari
Windows (dimulai dari versi 4.0 dan Windows NT 3.1) merupakan sistem operasi
mandiri yang tidak lagi bergantung kepada sistem operasi MS-DOS. Microsoft
Windows kemudian bisa berkembang dan dapat menguasai penggunaan sistem operasi
hingga mencapai 90%.
3.
Struktur Sistem Operasi
Sebuah
sistem yang besar dan kompleks seperti sistem operasi modern harus diatur
dengan cara membagi task kedalam komponen-komponen kecil agar dapat berfungsi
dengan baik dan mudah.
Brikut ini adalah Struktur Sistem
Operasi;
1) Struktur Sederhana
Sistem
operasi sebagai kumpulan prosedur dimana prosedur dapat saling dipanggil oleh
prosedur lain di sistem bila diperlukan. 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.
Kelebihan Struktur Sederhana: Layanan dapat dilakukan sangat cepat karena terdapat di satu
ruang alamat.
Kekurangan
Struktur Sederhana:
1. Pengujian dan penghilangan kesalahan
sulit karena tidak dapat dipisahkan dan dilokalisasi.
2. Sulit dalam menyediakan fasilitas
pengamanan.
3. Merupakan pemborosan bila setiap
komputer harus menjalankan kernel monolitik sangat besar sementara sebenarnya
tidak memerlukan seluruh layanan yang disediakan kernel.
4. Tidak fleksibel.
5. Kesalahan pemograman satu bagian dari
kernel menyebabkan matinya seluruh sistem.
Evolusi :
Kebanyakan UNIX sampai saat ini
berstruktur monolitik. Meskipun monolitik, yaitu seluruh komponen/subsistem
sistem operasi terdapat di satu ruang alamat tetapi secara rancangan adalah
berlapis. Rancangan adalah berlapis yaitu secara logik satu komponen/subsistem
merupakan lapisan lebih bawah dibanding lainnya dan menyediakan layanan-layanan
untuk lapisan-lapisan lebih atas. Komponen-komponen tersebut kemudia
dikompilasi dan dikaitkan (di-link) menjadi satu ruang alamat. Untuk
mempermudah dalam pengembangan terutama pengujian dan fleksibilitas, kebanyakan
UNIX saat ini menggunakan konsep kernel loadable modules,yaitu:
1. Bagian-bagian kernel terpenting
berada di memori utama secara tetap.
2. Bagian-bagian esensi lain berupa
modul yang dapat ditambahkan ke kernel saat diperlukan dan dicabut begitu tidak
digunakan lagi di waktu jalan (run time).
Contoh : UNIX
berstruktur monolitik, MS-DOS
2) Sistem
Berlapis (layered system)
Sistem
operasi dibentuk secara hirarki berdasar lapisan-lapisan, dimana
lapisan-lapisan bawah memberi layanan lapisan lebih atas. 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.
Sedangkan
menurut Tanenbaum dan Woodhull, sistem terlapis terdiri dari enam lapisan,
yaitu:
1. Lapis 5 – The operator, Berfungsi
untuk pemakai operator.
2. Lapis 4 – User programs, Berfungsi
untuk aplikasi program pemakai.
3. Lapis 3 – I/O management, Berfungsi
untuk menyederhanakan akses I/O pada level atas.
4. Lapis 2 -Operator-operator
communication, Berfungsi untuk mengatur komunikasi antar proses.
5. Lapis 1 -Memory and drum management,
Berfungsi untuk mengatur alokasi ruang memori atau drum magnetic.
6. Lapis 0 -Processor allocation and
multiprogramming, Berfungsi untuk mengatur alokasi pemroses dan switching,
multi programming dan pengaturan prosessor.
Kelebihan
Sistem Berlapis (layered system):
1.
Memiliki
rancangan modular, yaitu sistem dibagi menjadi beberapa modul & tiap modul
dirancang secara independen.
2.
Pendekatan
berlapis menyederhanakan rancangan, spesifikasi dan implementasi sistem
operasi.
Kekurangan
Sistem Berlapis (layered system): Fungsi-fungsi sistem operasi diberikan ke tiap lapisan
secara hati-hati.
Contoh: Sistem operasi yang menggunakan
pendekatan berlapis adalah THE yang dibuat oleh Djikstra dan
mahasiswa-mahasiswanya, serta sistem operasi MULTICS.
3.
Kernel Mikro
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.
Kelebihan
Kernel Mikro:
1)
kemudahan
dalam memperluas sistem operasi
2)
mudah
untuk diubah ke bentuk arsitektur baru
3)
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.
4)
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.
5)
Mesin Maya ( Virtual Machine )
Mesin maya
mempunyai sistem timesharing yang berfungsi untuk ,menyediakan kemampuan untuk
multiprogramming dan perluasan mesin dengan antarmuka yang lebih mudah.
Struktur
Mesin maya ( CP/CMS, VM/370 ) terdiri atas komponen dasar utama :
1.
Control
Program, yaitu virtual machine monitor yang mengatur fungsi ari prosessor,
memori dan piranti I/O. Komponen ini berhubungan langsung dengan perangkat
keras.
2.
Conventional
Monitor System, yaitu sistem operasi sederhanayang mengatur fungsi dari proses,
pengelolaan informasi dan pengelolaan piranti.
Kelebihan
Mesin Maya ( Virtual Machine ):
1.
Konsep
mesin virtual 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.
2.
Sistem
mesin virtual adalah mesin yang sempurna untuk riset dan pengembangan system
operasi. Pengembangan system dikerjakan pada mesin virtual, termasuk di
dalamnya mesin fisik dan tidak mengganggu operasi system yang normal.
Kekurangan
Mesin Maya ( Virtual Machine ): Konsep mesin virtual sangat sulit untuk mengimplementasikan
kebutuhan dan duplikasi yang tepat pada mesin yang sebenarnya.
Contoh:
1.
Sistem
operasi MS-Windows NT dapat menjalankan aplikasi untuk MS-DOS, OS/2 mode teks
dan aplikasi WIN16.
2.
IBM
mengembangkan WABI untuk meng-emulasikan Win32 API sehingga sistem operasi yang
menjalankan WABI dapat menjalankan aplikasi-aplikasi untuk MS-Windows.
3.
Para
pengembang Linux membuat DOSEMU untuk menjalankan aplikas-aplikasi DOS pada
sistem operasi Linux, WINE untuk menjalankan aplikasi-aplikasi MS-Windows.
4.
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.
6)
Client-Server Model
Mengimplementasikan
sebagian besar fungsi sistem operasi pada mode pengguna (user mode). Sistem
operasi merupakan kumpulan proses dengan proses-proses dikategorikan sebagai
server dan client, yaitu :
1. Server, adalah proses yang
menyediakan layanan.
2. Client, adalah proses yang
memerlukan/meminta layanan.
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 pemaka. Kernel hanya mengatur komunikasi antara client dan
server. Kernel yang ini popular dengan sebutan mikrokernel.
Kelebihan
Client-Server Model:
1.
Pengembangan
dapat dilakukan secara modular.
2.
Kesalahan
(bugs) di satu subsistem (diimplementasikan sebagai satu proses) tidak merusak
subsistem-subsistem lain, sehingga tidak mengakibatkan satu sistem mati secara
keseluruhan.
3.
Mudah
diadaptasi untuk sistem tersebar.
Kekurangan
Client-Server Model:
1.
Layanan
dilakukan lambat karena harus melalui pertukaran pesan.
2.
Pertukaran
pesan dapat menjadi bottleneck.
3.
Tidak
semua tugas dapat dijalankan di tingkat pemakai (sebagai proses pemakai).
7)
Sistem Berorientasi Objek
Sisten
operasi merealisasikan layanan sebagai kumpulan proses disebut sistem operasi
bermodel proses. Pendekatan lain implementasi layanan adalah sebagai
objek-objek. Sistem operasu yang distrukturkan menggunakan objek disebut sistem
operasi berorientasi objek. Pendekatan ini dimaksudkan untuk mengadopsi
keunggulan teknologi berorientasi objek. 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
menandadi 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. Sistem operasi MS Windows
NT telah mengadopsi beberapa teknologi berorientasi objek tetapi belum
keseluruhan.
Kelebihan
Sistem Berorientasi Objek:
Terstruktur dan memisahkan antara layanan yang disediakan dan implementasinya.
Kekurangan
Sistem Berorientasi Objek:
Sistem operasi MS Windows NT telah mengadopsi beberapa teknologi berorientasi
objek tetapi belum keseluruhan.
Contoh : sistem operasi yang berorientasi
objek, antara lain : eden, choices, x-kernel, medusa, clouds, amoeba, muse, dan
sebagainya.
Sumber
: