Sistem operasi
Sistem operasi (bahasa Inggris: operating system, disingkat OS) adalah perangkat lunak yang bertugas mengatur dan mengendalikan perangkat keras serta memberikan kemudahan bagi pemakai dalam penggunaan komputer. Sistem operasi berada di antara program aplikasi dan perangkat keras, berfungsi sebagai penghubung antara pengguna komputer dengan perangkat kerasnya. Bagian kode yang menjalankan tugas-tugas inti seperti akses disk, manajemen memori, penjadwalan tugas, dan antarmuka pengguna disebut “kernel”.
Definisi dan posisi dalam sistem komputer
Dalam struktur sistem komputer, sistem operasi adalah perangkat lunak lapisan pertama yang diletakkan pada media penyimpan (hard disk). Perangkat lunak lain, seperti utilitas dan aplikasi, berada di lapisan di atasnya. Utilitas adalah perangkat lunak yang membantu proses analisis, konfigurasi, dan pengelolaan komputer, sedangkan program aplikasi digunakan langsung oleh pengguna untuk menyelesaikan pekerjaan seperti mengetik atau merancang gambar.
Fungsi
Sistem operasi memiliki sejumlah fungsi: sebagai kernel (program yang terus berjalan selama komputer menyala), sebagai guardian (menyediakan kontrol akses yang melindungi file), sebagai gatekeeper (mengendalikan siapa yang boleh masuk ke sistem), sebagai optimizer (mengefisienkan perangkat keras), sebagai coordinator (mengatur urutan aktivitas), sebagai program controller (mengontrol program aplikasi lain), sebagai server (menyediakan layanan yang sering dibutuhkan pengguna), sebagai accountant (mengatur penggunaan CPU time, memori, dan perangkat I/O), sebagai interface (menjembatani pengguna dengan perangkat keras), dan sebagai resource manager (mengelola seluruh sumber daya sistem).
Ragam sistem operasi
Sistem operasi untuk komputer personal terbagi menjadi tiga kelompok besar:
Kelompok pertama adalah keluarga Microsoft Windows, yang meliputi Windows Desktop Environment berbasis MS-DOS (versi 1.x hingga 3.x), Windows 9x (Windows 95, 98, dan Windows ME), serta sistem operasi berbasis Windows NT seperti Windows NT 3.x, Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows 7 (dirilis 2009), dan Windows 8 (dirilis Oktober 2012).
Kelompok kedua adalah keluarga Unix, yang menggunakan antarmuka sistem operasi POSIX, seperti SCO UNIX, keluarga BSD, GNU/Linux (termasuk Debian, Red Hat, SUSE, Ubuntu), serta turunan lainnya seperti AIX, FreeBSD, HP-UX, dan Solaris.
Kelompok ketiga adalah keluarga Mac OS, yang dikeluarkan oleh Apple, meliputi Mac OS X 10.0 (Cheetah) hingga Mac OS X 10.8 (Mountain Lion), serta varian berbasis server dan mobile (iOS).
Sejarah perkembangan
Menurut Tanenbaum, perkembangan sistem operasi dibagi dalam beberapa generasi.
Generasi pertama (1945-1955) adalah awal perkembangan sistem komputasi elektronik. Pada masa ini belum ada sistem operasi; instruksi diberikan langsung oleh pengguna ke sistem komputer.
Generasi kedua (1955-1965) memperkenalkan Batch Processing System, yaitu sekumpulan pekerjaan (job) yang dieksekusi secara berurutan. Komputer belum punya sistem operasi lengkap, tapi beberapa fungsinya sudah ada, seperti FMS dan IBSYS.
Generasi ketiga (1965-1980) mengembangkan sistem operasi yang bisa melayani banyak pemakai sekaligus melalui terminal secara online. Sistem operasi pada masa ini sudah bersifat multi-user, multi-programming, dan multi-tasking.
Generasi keempat (1980-2000-an) ditandai penggunaan Graphical User Interface (GUI), yaitu antarmuka berbasis grafis. Pada masa ini juga dimulai era komputasi tersebar (distributed computing), di mana pemrosesan dipecah ke banyak komputer.
Generasi selanjutnya memperkenalkan sistem operasi mobile pada perangkat seperti PDA, laptop, dan netbook, serta virtualisasi sistem yang memungkinkan satu komputer menjalankan lebih dari satu sistem operasi secara bersamaan. Tren mobile computing pada generasi ini didominasi oleh Android, iOS, BlackBerry OS, Windows Phone, dan Symbian.
Perkembangan Microsoft Windows
Microsoft Windows dikembangkan oleh Microsoft Corporation dan menggunakan antarmuka berbasis GUI.
MS-DOS (Microsoft Disk Operating System) adalah sistem operasi berbasis teks dan command-line. MS-DOS awalnya dibuat oleh Seattle Computer Products, lalu lisensinya dibeli oleh Microsoft. Versi pertamanya dirilis tahun 1981, dan Microsoft menghentikan dukungannya pada tahun 2000.
Windows 1.0 diluncurkan pada 10 November 1985 sebagai versi pertama sistem operasi berbasis GUI buatan Microsoft. Windows 2.0 dirilis 9 Desember 1987 untuk melengkapi kekurangan aplikasi pada versi sebelumnya. Windows 3.0 mendukung kartu grafis SVGA/XGA dan memperkenalkan Virtual Device Driver (VxD). Versi 3.1 menambahkan fitur multimedia dan True Type Font.
Windows 95 diperkenalkan 14 Agustus 1995 dengan menu “Start”, dukungan Plug and Play, dan penamaan berkas yang panjang. Windows 98 dirilis 25 Juni 1998 dengan dukungan AGP, USB, dan NAT untuk berbagi koneksi internet. Windows ME diluncurkan 14 September 2000 dengan transisi dukungan grafis dari 16-bit ke 32-bit.
Windows NT mendukung arsitektur x86, IA64, dan AMD64 serta grafis 32-bit. Seri ini memperkenalkan file system NTFS. Windows 2000 (atau Windows NT 5.0) dikeluarkan 17 Februari 2000 dengan fitur tambahan seperti Active Directory, Plug and Play yang lebih baik, dan Internet Explorer 5.0.
Windows XP dirilis 25 Oktober 2001 dan digunakan pada 400 juta salinan instalasi per Januari 2006. Windows Vista diluncurkan 8 November 2006 untuk pengguna bisnis dan 30 Januari 2007 untuk pengguna pribadi, dengan penekanan pada antarmuka grafis dan keamanan termasuk Windows Defender dan User Account Control.
Windows 7 dirilis untuk publik pada 22 Oktober 2009, dengan fokus pada dukungan multi-touch, desain ulang taskbar (Superbar), dan sistem jaringan HomeGroup. Windows 8 dirilis secara resmi pada 26 Oktober 2012, dengan antarmuka yang dirancang untuk perangkat layar sentuh di samping mouse dan keyboard.
Arsitektur
Arsitektur sistem operasi modern terbagi dalam beberapa model: sistem monolitik, sistem berlapis, sistem client/server, sistem mesin virtual, dan sistem berorientasi objek.
MS-DOS menggunakan arsitektur monolitik yang tidak terstruktur. Semua komponen tergabung menjadi satu dan saling bisa mengakses, sehingga tidak ada pemisahan yang jelas antara aplikasi dan sistem operasi.
Windows NT menggunakan arsitektur berlapis (layered) yang terdiri dari empat lapisan utama: Hardware Abstraction Layer (HAL), kernel, subsystems, dan system services. Kernel pada arsitektur ini mengelola penjadwalan, context switching, exception handling, dan interrupt handling.
Windows Vista, Windows 7, dan Windows 8 menggunakan arsitektur modular. Setiap fungsi sistem dikelola oleh satu komponen, dan setiap modul pada prinsipnya bisa dihapus, di-upgrade, atau diganti tanpa menulis ulang seluruh sistem. Komponen kernel-mode pada arsitektur ini meliputi Executive (manajemen memori, proses, keamanan, I/O), kernel (kontrol eksekusi prosesor), HAL (abstraksi perangkat keras), device driver, dan windowing/graphics system.
Manajemen memori
Memori adalah tempat penyimpanan informasi dalam sistem komputer. CPU mengambil instruksi dari memori berdasarkan nilai program counter. Manajemen memori adalah kegiatan mengelola memori komputer, yaitu mengalokasikan memori untuk proses, membebaskannya ketika tidak diperlukan, dan menjaga alokasi ruang memori.
Memori dibedakan menjadi memori kerja dan memori dukung (backing store). Memori kerja meliputi register, ROM, PROM, EPROM, EEPROM, RAM, dan cache memory. Memori dukung meliputi hard disk, floppy disk, dan tape.
Beberapa istilah dalam manajemen memori antara lain: memory manager (bagian sistem operasi yang mengatur proses mana yang diletakkan pada antrian), swapping (pemindahan proses dari memori utama ke disk dan sebaliknya), paging (solusi untuk fragmentasi dengan membagi memori fisik ke dalam blok berukuran tetap yang disebut frame), dan fragmentasi (situasi di mana ruang memori total cukup tapi tidak bisa dialokasikan karena tidak berurutan).
Memori virtual adalah teknik manajemen memori untuk kernel multi-tugas. Jika terjadi kelebihan beban proses di RAM, sistem operasi akan menggunakan memori virtual di hard disk.
Manajemen I/O
Sistem operasi juga mengelola perangkat input/output. Perangkat lunak I/O disusun dalam beberapa lapisan: interrupt handler, device driver, device-independent OS software, dan user-space I/O software. Fungsi software I/O yang tidak bergantung perangkat keras antara lain membentuk fungsi I/O yang berlaku untuk semua device, memberikan penamaan device, memberikan proteksi, melakukan buffering, dan pelaporan kesalahan.
Instalasi dan booting
Instalasi sistem operasi dapat dilakukan dengan beberapa metode: clean install, instalasi pada mesin virtual, upgrade installation, dan instalasi multibooting. Booting adalah proses memuat sistem operasi ke memori saat komputer dihidupkan. Booting dibagi menjadi dua jenis: cold boot (booting dingin, yaitu menyalakan komputer dari keadaan mati) dan warm boot (booting panas, yaitu me-restart komputer yang sudah menyala).
Partisi hard disk
Partisi adalah pembagian media penyimpanan menjadi beberapa bagian yang secara logis terpisah dan berfungsi seolah-olah terpisah secara fisik. Tujuan utamanya adalah memudahkan manajemen file. Partisi juga berguna agar jika satu partisi terkena virus, partisi lain tetap aman, dan memungkinkan instalasi lebih dari satu sistem operasi dalam satu hard disk.