# Sistem operasi

**Sistem operasi** (bahaso Inggris: operating system; disingkek **OS**) adolah perangkek luneik sistem nan mangatua sumber daya dari perangkek kareh jo perangkek luneik, sarato sabagai daemon untuak program komputer. Indak ado sistem operasi, pangguna indak dapek manjalankan program aplikasi pado komputer, kacuali program booting.

Sistem operasi ado panjadwalan nan sistematis mancakuik parhitungan panggunoan memori, pemrosesan data, panyimpanan data, jo sumber daya lainnyo.

Untuak fungsi-fungsi perangkek kareh sarupo sabagai masuakan jo kaluaran jo alokasi memori, sistem operasi batindak sabagai parantaro antaro program aplikasi jo perangkek kareh komputer, meskipun kode aplikasi biasonya dieksekusi langsuang dek perangkek kareh jo acok bana manghubungi OS atau taputuih dek itu. Sistem operasi nan ditamukan pado hampia sado perangkek nan barisi komputer-dari ponsel jo konsol pamainan video untuak superkomputer jo server web.

Contoh sistem operasi modern adolah Linux, Android, iOS, Mac OS X, jo Microsoft Windows.

## Pandahuluan

Biasonya, istilah sistem operasi acok ditujukan kapada sado perangkek luneik nan masuak dalam ciek paket dek sistem komputer sabalum aplikasi-aplikasi perangkek luneik tainstal. **Sistem operasi** adolah perangkek luneik sistem nan batugas untuak mangarajoan kontrol jo manajemen perangkek kareh sarato operasi-operasi dasa sistem, tamasuak manjalankan perangkek luneik aplikasi sarupo program-program pangolah kato jo peramban web.

Sacaro umum, sistem operasi adolah perangkek luneik pado lapisan patamo nan ditampekkan pado memori komputer pado wakatu komputer dihiduikan booting. Sadangkan software-software lainnyo dijalankan salapeh sistem operasi bajalan, jo sistem operasi nyio mangarajoan layanan inti untuak software-software itu. Layanan inti tasabuik sarupo akses ka disk, manajemen memori, panjadwalan tugas schedule task, jo anta-muko user GUI/CLI. Sahinggo satiok software indak paralu liak mangarajoan tugas-tugas inti umum tasabuik, karano dapek dilayani jo dikarajoan dek sistem operasi. Bagian kode nan mangarajoan tugas-tugas inti jo umum tasabuik dinamoan dek "kernel" suatu sistem operasi.

Kalau sistem komputer tabagi dalam lapisan-lapisan, mako sistem operasi adolah *panghubuang* antaro lapisan hardware jo lapisan software. Sistem operasi mangarajoan sadolah tugas-tugas pantiang dalam komputer, jo manjamin aplikasi-aplikasi nan babeda dapek bajalan sacaro basamoan jo lanca. Sistem operasi manjamin aplikasi lainnyo dapek manggunoan memori, mangarajoan input jo output terhadap paralaikan lain, jo ado akses kapada sistem barakeh. Apobilo babarapo aplikasi bajalan sacaro basamoan, mako Sistem operasi mangatur *schedule* nan tapek, sahinggo sadapek mungkin sado proses nan bajalan mandapekkan wakatu nan cukuik untuak manggunoan prosesor (CPU) sarato indak saling mangganggu.

Dalam banyak kasus, Sistem Operasi manyadioan suatu pustaka dari fungsi-fungsi standa, dima aplikasi lain dapek mamanggia fungsi-fungsi itu, sahinggo dalam satiok pambuekan program baru, indak paralu mambuek fungsi-fungsi tasabuik dari awal.

Sistem operasi sacaro umum tadiri dari babarapo bagian:

* Mekanisme Boot, inyo tu malatakkan kernel ka dalam memory
* Kernel, inyoo tu inti dari sabuah sistem operasi
* *Command Interpreter* atau *shell*, nan batugas mambaco input dari pangguno
* Pustaka-pustaka, inyo tu nan manyadioan kumpuan fungsi dasa jo standa nan dapek dipanggia dek aplikasi lain
* Driver untuak bainteraksi dek hardware eksternal, sakaligus untuak mangontrolnyo.

Sabagian Sistem operasi cuman mangizinkan ciek aplikasi ajo nan bajalan pado ciek wakatu (misalnyo DOS), tatapi sabagian gadang Sistem Operasi baru mangizinkan babarapo aplikasi bajalan sacaro simultan pado wakatu nan basamoan. Sistem operasi sarupo iko disabuik sabagai *Multi-tasking Operating System* (misalnyo kaluarga sistem operasi UNIX). Babarapo Sistem Operasi baukuran gadang bana jo kompleks, sarato inputnyo tagantuang kapado input pangguno, sadangkan sistem operasi lainnyo ketek bana jo dibuek dek asumsi bakarajo tanpa intervensi manusio samo sakali. Tipe nan patamo acok disabuik sabagai *Desktop OS*, sadangkan tipe kaduo adolah *Real-Time OS*, contohnyo adolah Windows, Linux, Free BSD, Solaris, palm, symbian, jo sabagainyo.

## Layanan

Sairiang dek bakambangnyo sistem operasi, samakin banyak liak layanan nan manjadi layanan inti umum. Kini, sabuah OS mungkin paralu manyadioan layanan jaringan jo koneksi internet, nan dulunyo indak manjadi layanan inti umum. Sistem operasi jugo paralu untuak manjago karusakan sistem komputer dari gangguan program parusak nan barasa dari komputer lainnyo, sarupo virus. Daftar layanan inti umum akan taruih batambah.

Program saling bakomunikasi antaro ciek jo lainnyo jo Antamuko Pemrograman Aplikasi, *Application Programming Interface* atau disingkek jo *API*. Dek API ikolah program aplikasi dapek bakomunikasi jo sistem operasi. Sabagaimano manusio bakomunikasi jo komputer malalui Antamuko User, program jugo bakomunikasi jo program lainnya malalui API.

Walaupun demikian API sabuah komputer indaklah bapangaruh sapanuahnyo pado program-program nan dikarajoanan diateh platform operasi tasabuik. Contohnyo kalau program nan dibuek untuak windows 3.1 kalau dikarajoan dek windows 95 jo generasi salapehnyo akan nampak pabedoan nan mancolok antaro program tasabuik jo program nan lain.

## Sistem operasi kini ko

Sistem operasi utamo nan digunoan komputer umum (tamasuak PC, komputer personal) tabagi manjadi 3 kalompok gadang:

1. Sistem Microsoft Windows - nan antaro lain tadiri dari Windows Desktop Environment (versi 1.x hingga versi 3.x), Windows 9x (Windows 95, 98, jo Windows ME), jo Windows NT (Windows NT 3.x, Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7 (Seven) nan dirilis pado tahun 2009, Windows 8 nan dirilis pado Oktober 2012), jo Windows Tarakhia inyo tu Windows 10 (Dirilis pado Juli 2015)).
2. Sistem Unix nan manggunoan antamuko sistem operasi POSIX, sarupo SCO UNIX, kaluargo BSD (*Berkeley Software Distribution*), GNU/Linux, Zeath OS (babasis kernel linux nan dimodifikasi.)MacOS/X (babasis kernel BSD nan dimodifikasi, jo dikana dek namo *Darwin*) jo GNU/Hurd.
3. Sistem Mac OS, adolah sistem operasi untuak komputer kaluaran Apple nan biaso disabuik *Mac* atau *Macintosh*. Sistem operasi nan tabaru adolah Mac OS X versi 10.15 (Catalina).

Sadangkan komputer *Mainframe*, jo Super komputer manggunoan banyak bana sistem operasi nan babeda-beda, umumnya marupokan turunan dari sistem operasi UNIX nan dikambangkan dek vendor sarupo IBM AIX, HP/UX, dll.

## Prosesor

Prosesor mengeksekusi program-program komputer. Prosesor adolah sabuah chip dalam sistem komputer nan mangarajoan instruksi-instruksi program komputer. Dalam satiok datiknyo prosesor dapek mangarajoan jutaan instruksi.

Program adolah saderetan instruksi nan diagiah kapado suatu komputer. Sadangkan *proses* adolah suatu bagian dari program nan barado pado status tatentu dalam rangkaian eksekusinyo. Di dalam bahasan Sistem Operasi, kito labiah acok mambahas *proses* dibandingkan dek program. Pado Sistem Operasi modern, pado saat tatentu indak sado program dimuek dalam memori, tatapi hanyo ciek bagian ajo dari program tasabuik. Sadangkan bagian lain dari program tasabuik tetap baistirahat di media panyimpan disk. Hanyo pado saat dibutuhkan se, bagian dari program tasabuik dimuek di memori dan dieksekusi dek prosesor. Hal iko manghimeik bana pamakaian memori.

Babarapo sistem hanyo mangarajoan ciek proses tungga dalam ciek wakatu, sadangkan nan lainnyo mangarajoan multi-proses dalam ciek wakatu. Padahal sabagian gadang sistem komputer hanyo punyo ciek prosesor, jo sabuah prosesor hanyo dapek mangarajoan ciek instruksi dalam ciek wakatu. Mako baa sabuah sistem prosesor tungga dapek mangarajoan multi-proses? Sabananyo pado granularity nan ketek bana, prosesor hanyo mangarajoan ciek proses dalam ciek wakatu, kamudian sacaro capek inyo bapindah mangarajoan proses lainnyo, jo sataruihnyo. Sahinggo bagi pancaliakan jo perasoan pangguno manusio, seakan-akan prosesor mangarajoan babarapo proses sacaro basamoan.

Satiok proses dalam sabuah sistem operasi mandapekan sabuah PCB (*Process Control Block*) nan mamuek informasi tentang proses tasabuik, inyo tu: sabuah tando pangana proses (Process ID) nan unik jo manjadi nomor identitas, status proses, prioritas eksekusi proses jo informasi lokasi proses dalam memori. Prioritas proses marupokan suatu nilai atau gadangan nan manunjukan sabarapo acok proses harus dikarajoan dek prosesor. Proses nan punyo prioritas labiah tinggi, akan dikarajoan labiah acok atau dieksekusi labiah dulu dibandingkan dek proses nan berprioritas labiah randah. Suatu sistem operasi dapek se manantuan sado proses dek prioritas nan samo, sahingga satiok proses punyo kesempatan nan samo. Suatu sistem operasi dapek jugo marubah nilai prioritas proses tatentu, agar proses tasabuik akan dapek punyo kesempatan labiah gadang pado eksekusi barikuiknyo (misalnyo: pado proses nan alah lama bana manunggu eksekusi, sistem operasi manaikan nilai prioritasnyo).

### Status prosesor

Jinih status nan mungkin dapek disematkan pado suatu proses pado satiok sistem operasi dapek babeda-beda. Tatapi paliang indak ado 3 macam status nan umum, inyo tu:

1. Ready, inyo tu status dima proses siap untuak dieksekusi pado giliran barikuiknyo
2. Running, inyo tu status dima kini ko proses sadang dieksekusi dek prosesor
3. Blocked, inyo tu status dima proses indak dapek dikarajoan pado saat prosesor siap/bebas

## Fungsi

* Sistem operasi mambuek komputer manjadi labiah mudah jo menarik sarato nyaman untuak digunoan.
* Sistem operasi mamungkinkan sumberdaya komputer digunoan sacaro efisien.
* Sistem operasi nan disusun/diprogram sademikian rupo mamungkinkan manarimo parubahan/pangembangan baru nan efektif jo efisien, dapek mangarajoan pengujian sistem tanpa mangganggu layanan nan alah ado.

## Caliak pulo

* Haiku
* Linux
* Unix
* Windows

## Rujuakan

## Pranala lua

* Operating Systems di Proyek Direktori Tabukak
* (Inggirih) Multics History and the history of operating systems