System software adalah jenis program komputer yang dirancang khusus untuk menjalankan perangkat keras komputer dan juga mendukung aplikasi-aplikasi lainnya. Kalau diibaratkan sebagai model berlapis, software sistem ini adalah lapisan penghubung antara perangkat keras dan aplikasi yang dipakai oleh user. Contoh paling populer dari system software adalah sistem operasi (OS), yang mengatur semua program lain di dalam komputer.
System software bertugas mengelola fungsi dasar komputer, seperti disk OS, utilitas manajemen file, OS, serta aplikasi dan perangkat keras. Software ini biasanya berjalan di latar belakang untuk menjaga kestabilan sistem agar pengguna bisa menjalankan aplikasi tingkat atas tanpa gangguan.
Secara garis besar, system software adalah fondasi tempat aplikasi lain berjalan. Ia juga menjadi perantara antara user dan hardware, memfasilitasi interaksi pengguna dengan komputer secara keseluruhan.
Fitur penting dari system software
System software adalah bagian penting dari sistem komputasi. Tugas utamanya adalah menciptakan jembatan antara hardware, software, dan user sebagai penggunanya.
Umumnya, software sistem punya ciri-ciri sebagai berikut:
- Kecepatan tinggi. Harus berjalan cepat dan efisien supaya bisa memberikan platform kerja yang andal bagi hardware dan software lainnya. Kalau software sistem lambat, seluruh sistem bisa ikut terganggu, bahkan rusak total.
- Susah dimanipulasi. Kalau mudah diubah—apalagi oleh pihak yang tidak sah—bisa berbahaya bagi sistem. Oleh karena itu, software ini ditulis menggunakan bahasa pemrograman tingkat rendah yang lebih sulit diakses dibanding GUI biasa.
- Ditulis dengan bahasa tingkat rendah. Bahasa ini bisa langsung dimengerti oleh CPU dan hardware lain, memungkinkan software sistem bekerja optimal sebagai perantara.
- Dekat dengan sistem. Terhubung langsung ke perangkat keras. Kalau tidak, software ini tidak bisa mengakses file penting dan fungsinya sebagai jembatan akan terganggu.
- Fleksibel. Bisa berkomunikasi dengan hardware spesifik maupun software tingkat atas. Tanpa software sistem, aplikasi yang tergantung padanya juga tidak bisa berjalan.
Jenis-jenis system software
System software adalah istilah umum yang mencakup beberapa tipe software. Berikut ini yang utama:
Sistem Operasi (OS)
OS adalah software pengontrol utama yang mengatur bagaimana hardware, memori, prosesor, dan aplikasi bekerja bersama. Fungsinya meliputi:
- Manajemen file dan penjadwalan proses. OS mengatur urutan prioritas program dan alokasi sumber daya.
- Manajemen prosesor dan memori. Mengalokasikan dan mengembalikan memori sesuai kebutuhan program.
- Deteksi error. Mendeteksi dan memperbaiki kesalahan dari program lain.
- Keamanan. Melindungi data dan program dengan password atau fitur keamanan lainnya.
- Kontrol dan manajemen. Menggunakan compiler, interpreter, dan assembler untuk menerjemahkan bahasa tingkat tinggi ke kode mesin yang bisa dibaca CPU.
Bagian OS yang disebut kernel berinteraksi langsung dengan hardware. Pengguna bisa berinteraksi dengan OS lewat GUI atau command line. Contohnya: Windows, macOS, dan Linux.
BIOS
BIOS adalah firmware yang terpasang di motherboard. Tugas utamanya adalah menginisialisasi sistem saat dinyalakan, menghubungkan hardware dengan OS, dan memuat OS ke RAM.
Assembler
Assembler adalah program yang menerjemahkan kode assembly menjadi kode mesin yang bisa dibaca prosesor. Digunakan dalam pengembangan OS, driver, dan manipulasi memori langsung.
Driver perangkat
Driver bertugas menghubungkan OS dengan perangkat tertentu seperti mouse atau printer, menerjemahkan instruksi umum menjadi perintah yang dimengerti perangkat.
Utilitas sistem
Termasuk program seperti disk defragmenter, antivirus, registry cleaner, manajer file, dan System Restore. Umumnya disediakan bersama OS.
Tools pengembangan
Termasuk compiler dan debugger.
Compiler menerjemahkan source code dari Java, C++, dll. menjadi bytecode atau kode mesin.
Debugger digunakan untuk mendeteksi dan memperbaiki bug selama siklus pengembangan perangkat lunak.
Perbedaan system software vs application software
Ada dua jenis software utama: system software dan application software.
Application software digunakan untuk tugas-tugas spesifik, seperti membuat dokumen atau mengelola proyek. Contohnya:
- Browser.
- Email client.
- Simulasi.
- DBMS.
- Software produktivitas.
- Manajemen proses bisnis.
- ERP.
- Software multimedia.
- Aplikasi komunikasi.
System software ditulis dengan bahasa tingkat rendah agar bisa langsung berinteraksi dengan hardware, sedangkan aplikasi biasanya dibuat dengan Java, Python, Ruby, PHP, HTML, dll.
System software aktif sejak komputer dinyalakan dan terus berjalan di latar belakang, sementara aplikasi dijalankan saat user membutuhkannya. Tanpa software sistem, aplikasi nggak bisa jalan.