Sistem operasi [dalam bahasa Inggris: operating system atau OS] yaitu perangkat lunak pada komputer yang mengendalikan jalannya program yang berlawanan yang menggunakan perangkat keras komputer tersebut, dan menertibkan cara pengguna mengontrol komputer. Sistem Operasi juga merupakan bidang studi dalam Ilmu Komputer Terapan. Sistem operasi didapatkan pada nyaris semua perangkat yang berisi komputer dengan beberapa program — dari telepon seluler dan konsol video game sampai superkomputer dan server web. Sistem operasi adalah platform dua segi, menjinjing konsumen (segi pertama) dan pengembang program (sisi kedua) bersama-sama dalam satu pasar. Beberapa sistem operasi terbaru yang terkenal untuk komputer eksklusif diantaranya Microsoft Windows, Mac OS X, dan Linux.
Karena komputer-komputer terdahulu sering dibangun hanya satu tugas, mirip kalkulator, tidak terdapat tata cara operasi pada bentuk mereka yang terbaru dan lebih kompleks sampai tahun 1960-an. Saat komputer berevolusi menjadi perangkat yang mampu melaksanakan program yang berbeda berturut-turut, programer mulai memasukkan library dari program biasa (dalam bentuk kode komputer) ke komputer untuk menyingkir dari duplikasi dan mempercepat proses. Akhirnya, komputer mulai dibangun biar secara otomatis beralih dari satu peran ke tugas selanjutnya. Penciptaan library runtime untuk mengelola pemrosesan dan kecepatan pencetakan datang selanjutnya, yang berevolusi menjadi acara yang mampu menafsirkan aneka macam jenis bahasa pemrograman menjadi instruksi mesin. Ketika komputer pribadi produksi perusahaan mirip Apple Inc, Atari, IBM dan Amiga menjadi terkenal pada 1980-an, vendor mulai menyertakan fitur seperti penjadwalan pemeliharaan perangkat lunak dan perangkat keras.
Suatu tata cara operasi mampu dibagi menjadi beberapa bab yang berlawanan. Salah satu bab yang terpenting adalah kernel, yang menertibkan proses tingkat rendah yang rata-rata pengguna biasanya tidak dapat melihatnya: mengendalikan bagaimana memori membaca dan menulis, urutan proses yang dilakukan, bagaimana info yang diterima dan dikirim oleh perangkat seperti monitor, keyboard dan mouse, dan memutuskan bagaimana menginterpretasikan isu yang diterima oleh jaringan. User interface adalah bab dari metode operasi yang berinteraksi dengan pengguna komputer secara pribadi, yang memungkinkan mereka untuk menertibkan dan memakai program. Antarmuka pengguna sering kali grafikal dengan ikon dan desktop, atau tekstual, dengan baris perintah. Fitur lain yang serupa adalah antarmuka pemrograman aplikasi, yang ialah sebuah set layanan dan kode library yang memungkinkan aplikasi berinteraksi satu sama lain, serta tata cara operasi itu sendiri. Tergantung pada tata cara operasi, banyak bagian tidak dapat dianggap sebagai bagian yang sebetulnya. Sebagai pola, Windows menganggap antarmuka pengguna untuk menjadi bagian dari sistem operasi, sedangkan banyak model Linux tidak.
Pada permulaan 1950-an, suatu komputer hanya dapat mengeksekusi satu acara pada satu waktu. Setiap user dapat menggunakan satu-satunya komputer dan akan datang pada waktu yang bersiklus dengan acara dan data pada kartu kertas dan tape berlubang. Program ini akan dimasukkan ke dalam mesin, dan mesin akan mulai melakukan pekerjaan hingga program simpulan atau crash. Program umum bisa men-debug lewat panel depan beralih menggunakan switch dan lampu panel. Dikatakan bahwa Alan Turing ialah seorang master ini pada awal mesin Manchester Mark 1, dan ia sudah menurunkan konsepsi primitif dari suatu metode operasi dari prinsip-prinsip dari mesin Turing Universal.
Kemudian mesin datang dengan library untuk software, yang hendak dikaitkan dengan acara user untuk membantu operasi seperti input dan output dan menghasilkan arahan komputer dari arahan simbolis yang dapat dibaca insan. Ini yakni asal mula dari sistem operasi terbaru. Akan tetapi, mesin tersebut masih melaksanakan pekerjaan tunggal pada suatu waktu.
Gambar 1. Mark Manchester menjadi lebih dari sekedar kalkulator yang kompleks dengan membiarkan programmer menjalankan banyak sekali jenis proses, salah satu pemikiran permulaan dari suatu sistem operasi.
(Perbesar)
Mainframes
Di tahun 1950-an, banyak fitur-fitur utama dirintis di bidang metode operasi, tergolong pengolahan batch, input/output interrupt, buffering, multitasking, spooling, dan library runtime. Fitur-fitur tersebut ditambahkan atau tidak dalam perangkat lunak aplikasi terdapat pada opsi aplikasi pemrograman, bukan di tata cara operasi terpisah yang dipakai oleh semua aplikasi. Pada tahun 1959 Sistem Operasi SHARE dirilis selaku utilitas terpadu untuk mainframe IBM 704 dan IBM 709.
Konsep OS tunggal ini meliputi seluruh garis produk yang sungguh penting bagi keberhasilan System/360 dan, pada kenyataannya, tata cara operasi mainframe IBM dikala ini adalah keturunan jauh dari metode aslinya; aplikasi yang ditulis untuk OS/360 masih mampu berjalan pada mesin modern. Pada pertengahan 70-an, para MVS, keturunan OS/360 menawarkan implementasi pertama menggunakan RAM sebagai cache transparan untuk data.
Gambar 2. OS/360 ditaruh pada semua komputer mainframe IBM permulaan tahun 1964, tergolong komputer yang membantu NASA menempatkan insan di bulan
(Perbesar)
OS/360 juga memelopori desain bahwa tata cara operasi melacak semua sumber daya tata cara yang digunakan, termasuk acara dan alokasi ruang data di memori utama dan ruang file dalam penyimpanan sekunder, dan penguncian file selama update. Ketika proses ini tidak boleh sebab alasan apapun, semua sumber daya tersebut kembali diklaim oleh metode operasi.
Sebuah metode alternatif CP-67 memulai keseluruhan baris sistem operasi yang difokuskan pada desain mesin virtual.
Control Data Corporation membuatkan metode operasi SCOPE pada tahun 1960, untuk pemrosesan batch. Dalam kerjasamanya dengan Universitas Minnesota, KRONOS dan lalu tata cara operasi NOS tersebut dikembangkan selama tahun 1970-an, yang mendukung batch simultan dan penggunaan time sharing. Seperti banyak metode time sharing komersial, antarmukanya adalah ekstensi dari sistem operasi Dartmouth BASIC, salah satu upaya merintis time sharing dan bahasa pemrograman. Pada simpulan 1970-an, Control Data dan Universitas Illinois mengembangka sistem operasi PLATO, yang memakai panel display plasma dan jaringan time sharing jarak jauh. Plato sungguh inovatif untuk ketika itu, mencakup real-time chatting, dan game grafis multi-user. Burroughs Corporation memperkenalkan B5000 pada tahun 1961 dengan metode operasi MCP (Master Control Program). B5000 adalah mesin stack yang dirancang untuk secara pribadi mendukung bahasa tingkat tinggi tanpa bahasa mesin atau assembler, dan memang MCP yakni OS pertama yang ditulis secara khusus dalam bahasa tingkat tinggi – ESPOL , sebuah dialek dari ALGOL. MCP juga memperkenalkan banyak penemuan yang lain, mirip menjadi implementasi komersial pertama dari memori virtual. Selama pengembangan AS400, IBM melaksanakan pendekatan pada lisensi MCP Burroughs untuk dilaksanakan pada perangkat keras AS400. Proposal ini sudah ditolak oleh administrasi Burroughs untuk melindungi produksi perangkat keras yang ada. MCP masih digunakan hari ini di Unisys ClearPath / garis komputer MCP.
UNIVAC, produsen komputer komersial pertama, menciptakan serangkaian sistem operasi EXEC. Seperti semua sistem main-frame terdahulu, ini yaitu sistem berorientasi batch yang mengontrol drum magnetik, disk, pembaca kartu dan printer line. Pada tahun 1970-an, UNIVAC menciptakan tata cara Real-Time Basic (RTB) untuk mendukung time sharing skala besar, juga dipolakan sesudah sistem Dartmouth BASIC.
General Electric dan MIT berbagi General Electric Comprehensive Operating Supervisor (GECOS), yang memperkenalkan desain ringed security privilege level. Setelah akuisisi oleh Honeywell namanya diubah menjadi General Comprehensive Operating System (GCOS).
Digital Equipment Corporation menyebarkan banyak metode operasi untuk aneka macam jalur komputer, tergolong tata cara time sharing TOPS-10 dan TOPS-20 untuk metode kelas 36-bit PDP-10. Sebelum penggunaan luas dari UNIX, TOPS-10 ialah suatu metode yang terkenal utamanya di universitas, dan di komunitas ARPANET terdahulu.
Pada simpulan tahun1960-an sampai final 1970-an, beberapa kesanggupan perangkat keras berevolusi yang memungkinkan software yang seperti atau software port melakukan pekerjaan di lebih dari satu sistem. Sistem terdahulu telah memakai microprogramming untuk mengimplementasikan fitur pada tata cara mereka dalam rangka untuk memungkinkan arsitektur dasar yang berlainan muncul menjadi sama dengan arsitektur lain dalam satu rangkaian. Faktanya sebagian besar sistem 360 sehabis 360/40 (kecuali 360/165 dan 360/168) telah mengimplementasi mikroprogram. Tapi beberapa dikala kemudian lainnya meraih kompatibilitas aplikasi yang terbukti lebih signifikan.
Investasi besar dalam perangkat lunak untuk tata cara tersebut dibuat semenjak tahun 1960-an menimbulkan sebagian besar produsen komputer orisinil untuk terus mengembangkan tata cara operasi yang kompatibel dengan perangkat keras. Sistem operasi mainframe terkemuka yang mendukung mencakup:
- Burroughs MCP – B5000, 1961 to Unisys Clearpath/MCP, present.
- IBM OS/360 – IBM System/360, 1966 to IBM z/OS, present.
- IBM CP-67 – IBM System/360, 1967 to IBM z/VM, present.
- UNIVAC EXEC 8 – UNIVAC 1108, 1967, to OS 2200 Unisys Clearpath Dorado, present.
Mikrokomputer
Mikrokomputer pertama tidak memiliki kesanggupan atau perlu tata cara operasi rumit yang telah dikembangkan untuk mainframe dan mini; tata cara operasi minimalis tersebut dikembangkan, acap kali diload dari ROM dan diketahui sebagai Monitor. Satu metode operasi berbasis disk awal yang terkenal ialah CP/M, yang mendukung pada banyak microcomputers terdahulu dan yang telah ditiru di MS-DOS, yang menjadi sangat terkenal sebagai sistem operasi yang dipilih untuk PC IBM (model IBM itu disebut IBM DOS atau PC DOS ), penerusnya membuat Microsoft. Apple Computer Inc tahun 80-an (kini Apple Inc) meninggalkan mikrokomputer seri Apple II yang terkenal untuk memperkenalkan komputer Apple Macintosh dengan Graphical User Interface (GUI) yang inovatif ke Mac OS.
Gambar 3 (kiri). PC-DOS ialah OS permulaan untuk komputer pribadi yang menampilkan antarmuka baris perintah.
(Perbesar)

Gambar 4 (kanan). Mac OS oleh Apple Komputer menjadi OS luas pertama yang mempunyai fitur GUI. Banyak fitur-fiturnya seperti jendela dan ikon lalu akan menjadi biasa di GUI.
Pengenalan CPU chip Intel 80386 dengan arsitektur 32-bit dan kemampuan paging, menawarkan komputer eksklusif dengan kesanggupan untuk menjalankan sistem operasi multitasking seperti minicomputer dan mainframe yang terdahulu. Microsoft menanggapi perkembangan ini dengan mempekerjakan Dave Cutler, yang telah berbagi metode operasi VMS untuk Digital Equipment Corporation. Dia akan memimpin pengembangan metode operasi Windows NT, yang tetap menjadi dasar untuk garis metode operasi Microsoft. Steve Jobs, rekan pendiri Apple Inc, memulai NeXT Computer Inc, yang mengembangkan sistem operasi NeXTSTEP seperti Unix. NeXTSTEP lalu akan diakuisisi dan dipakai oleh Apple Inc, bersama dengan arahan dari FreeBSD sebagai inti dari Mac OS X.
Proyek GNU dimulai oleh penggerak dan programmer Richard Stallman dengan tujuan mengganti perangkat lunak sempurna yang gratis menjadi sistem operasi UNIX. Saat proyek ini sangat sukses pada duplikasi fungsi berbagai bab UNIX, pengembangan GNU Hurd kernel terbukti tidak produktif. Pada tahun 1991 mahasiswa ilmu komputer Finlandia, Linus Torvalds, dengan kolaborasi dari relawan lewat Internet, merilis versi pertama dari kernel Linux. Kemudian bergabung dengan userland dan tata cara perangkat lunak GNU untuk membentuk suatu metode operasi yang sempurna. Sejak itu, variasi dari dua komponen utama biasanya telah disebut selaku “Linux” oleh industri perangkat lunak, suatu konvensi penamaan yang mana Stallman dan Free Software Foundation tetap menentangnya, malahan lebih suka nama “GNU/Linux”. Berkeley Software Distribution, yang diketahui sebagai BSD, ialah turunan UNIX yang didistribusikan oleh Universitas California, Berkeley, dimulai pada tahun 1970-an. Didistribusikan secara bebas dan porting untuk banyak minikomputer, alhasil juga digunakan pada PC, sebagian besar sebagai FreeBSD, NetBSD, dan OpenBSD.
Microsoft Windows
Microsoft Windows adalah keluarga milik sistem operasi yang paling lazim dipakai di komputer eksklusif. Ini yakni keluarga tata cara operasi yang paling biasa untuk komputer pribadi, dengan sekitar 90% dari pangsa pasar. Saat ini, sebagian besar keluarga Windows yang banyak dipakai adalah versi Windows XP, dirilis pada tanggal 25 Oktober 2001. Versi terbaru adalah Windows 7 untuk komputer pribadi dan Windows Server 2008 R2 untuk server.
Gambar 5. Sistem operasi Windows XP untuk komputer pribadi.
(Perbesar)
Berasal pada tahun 1981 sebagai add-on untuk metode operasi renta MS-DOS untuk PC IBM. Dirilis pada tahun 1985, Microsoft mendominasi dunia bisnis komputer langsung, dan melanjutkan untuk menetapkan sejumlah kriteria industri dan aplikasi biasa. Dimulai dengan Windows XP, semua model terbaru didasarkan pada kernel Windows NT. Arus versi Windows berlangsung pada prosesor x86 dan x86-64, walaupun versi usang adakala mendukung arsitektur lain.
Windows juga digunakan pada server, aplikasi pendukung mirip server web dan server database. Dalam bertahun-tahun terakhir, Microsoft sudah menghabiskan pemasaran yang signifikan serta uang penelitian & pengembangan untuk memperlihatkan bahwa Windows bisa menjalankan aplikasi perusahaan, yang mengakibatkan harga/catatan kinerja yang konsisten dan penerimaan yang signifikan dalam pasar perusahaan. Akan tetapi, penggunaan di server tidak begitu luas seperti komputer langsung, dan di sini Windows aktif bersaing dengan Linux dan BSD untuk pangsa pasar, sementara masih menangkap lebih banyak didominasi oleh beberapa account.
Mac OS X
Mac OS X ialah suatu garis dari sebagian tata cara operasi grafis pribadi yang dikembangkan, dipasarkan, dan dijual oleh Apple Inc, yang terakhir yakni pre-loaded pada dikala pengiriman semua komputer Macintosh. Mac OS X adalah penerus orisinil Mac OS, yang sudah menjadi metode operasi primer Apple semenjak tahun 1984. Tidak mirip pendahulunya, Mac OS X yaitu metode operasi UNIX yang dibangun di atas teknologi yang telah dikembangkan di NeXT lewat paruh kedua tahun 1980-an dan hingga Apple membeli perusahaan di awal 1997.
Gambar 6. Standar antarmuka pengguna Mac OS X
(Perbesar)
Sistem operasi ini pertama kali dirilis pada tahun 1999 berjulukan Mac OS X Server 1.0, dengan model berorientasi desktop (Mac OS X v10.0) berikutnya di bulan Maret 2001. Sejak itu, enam edisi “klien” dan “server” Mac OS X yang lebih terang sudah dirilis, yang paling terakhir yakni Mac OS X v10.6 , yang pertama kali dibuat tersedia pada tanggal 28 Agustus 2009. Releasenya Mac OS X dinamai kucing besar; versi Mac OS X yakni “Snow Leopard”.
Edisi server, Mac OS X Server, secara arsitektur identik dengan mitra desktopnya, tetapi umumnya berlangsung pada garis hardware Macintosh server milik Apple. Mac OS X Server meliputi manajemen kerja golongan dan perangkat lunak manajemen yang menyediakan jalan masuk simple ke layanan kunci jaringan, tergolong biro transfer mail, sebuah server Samba, sebuah LDAP server, sebuah nama domain server, dan lain-lain.
Unix dan tata cara operasi serupa Unix
Ken Thompson menulis B, utamanya menurut BCPL, yang dipakai untuk menulis Unix, menurut pengalamannya di proyek MULTICS. B digantikan oleh C, dan Unix menjelma kompleks, keluarga besar tata cara operasi yang terkait yang telah besar lengan berkuasa dalam setiap sistem operasi terbaru. The keluarga mirip Unix (Unix-like) yaitu beragam grup sistem operasi, dengan beberapa sub-kategori utama termasuk System V, BSD, dan GNU/Linux. Nama “UNIX” adalah merek dagang dari The Open Group yang perizinannya digunakan untuk tata cara operasi yang telah terbukti sesuai dengan definisi mereka. “Unix-like” umumnya dipakai untuk merujuk ke set besar tata cara operasi yang seperti Unix yang asli.
Gambar 7. Evolusi tata cara Unix
(Perbesar)
Sistem yang sama Unix berlangsung pada aneka macam arsitektur mesin. Mereka banyak dipakai untuk server dalam bisnis, serta workstation dalam bidang akademik dan lingkungan engineering. Unix varian gratis, mirip GNU/Linux dan BSD, yakni metode operasi yang populer di tempat-daerah tersebut.
Beberapa varian Unix mirip HP UX dan AIX IBM yang dirancang untuk berjalan hanya pada hardware vendor itu. Lainnya, mirip Solaris, dapat berlangsung di aneka macam jenis hardware, termasuk x86 server dan PC. Apple Mac OS X, sebuah kernel hibrida berbasis varian BSD berasal dari NeXTSTEP, Mach, dan FreeBSD, sudah menggantikan Apple Mac OS sebelumnya (non-Unix).
Interoperabilitas Unix dicari dengan mendirikan persyaratan POSIX. Standar POSIX dapat dipraktekkan pada setiap sistem operasi, meskipun pada mulanya dibentuk untuk aneka macam varian Unix.
BSD dan keturunannya
Sebuah subkelompok dari keluarga Unix ialah keluarga Berkeley Software Distribution, yang termasuk FreeBSD, NetBSD, dan OpenBSD. Sistem-metode operasi yang paling kerap ditemukan pada webserver, walaupun mereka juga dapat berfungsi sebagai OS komputer eksklusif. Internet berutang banyak atas keberadaan BSD, alasannya banyak protokol kini yang biasa dipakai oleh komputer untuk melaksanakan koneksi, mengantardan mendapatkan data melalui jaringan yang diimplementasikan secara luas dan disempurnakan di BSD. WWW (World Wide Web) juga yang pertama memberikan pada sejumlah komputer yang melaksanakan suatu metode operasi berbasis pada BSD yang disebut NextStep.
Gambar 8. Server pertama World Wide Web yang berlangsung dalam NeXTSTEP, berbasis BSD.
(Perbesar)
BSD berakar pada Unix. Pada tahun 1974, Universitas California, Berkeley menginstall metode Unix pertama. Seiring waktu, mahasiswa dan staf di departemen ilmu komputer di sana mulai menambahkan program gres untuk membuat sesuatu menjadi lebih gampang, seperti editor teks. Ketika Berkely mendapatkan komputer VAX gres pada tahun 1978 dengan Unix yang sudah terinstal, mahasiswa mengganti Unix lebih banyak untuk mengambil keuntungan dari kemungkinan hardware komputer. Defense Advanced Research Projects Agency dari Departemen Pertahanan Amerika mengamati, dan menetapkan untuk mendanai proyek tersebut. Banyak sekolah, perusahaan, dan organisasi pemerintah memperhatikan dan mulai untuk memakai versi Unix Berkeley, bukan yang resmi yang didistribusikan oleh AT&T. Steve Jobs, sehabis meninggalkan Apple Inc pada tahun 1985, membentuk NeXT Inc, sebuah perusahaan yang memproduksi komputer high-end yang berjalan pada kombinasi BSD yang disebut NeXTSTEP. Salah satu komputer tersebut dipakai oleh Tim Berners-Lee selaku server web pertama untuk membuat World Wide Web.
Pengembang mirip Keith Bostic mendorong proyek tersebut untuk mengganti isyarat non-free yang berasal dari Bell Labs. Setelah hal ini final dijalankan, AT&T menggugat. Akhirnya, setelah dua tahun sengketa aturan, proyek BSD maju, dan melahirkan sejumlah derivatif bebas, seperti FreeBSD dan NetBSD. Namun, penungguan dua tahun sudah mempersiapkan panggung untuk dua proyek yang risikonya akan teratasi baik BSD dan Unix: GNU dan Linux.
Plan 9
Ken Thompson, Dennis Ritchie, dan Douglas McIlroy di Bell Labs merancang dan mengembangkan bahasa pemrograman C untuk membangun tata cara operasi Unix. Programmer di Bell Labs melanjutkan untuk mengembangkan Plan 9 dan Inferno, yang dirancang untuk lingkungan terdistribusi terbaru. Plan 9 dirancang dari permulaan untuk menjadi sistem operasi jaringan, dan memiliki grafis built-in, tidak mirip Unix, yang menambahkan fitur ini untuk perancangan yang hendak tiba. Saat ini dirilis di bawah Lisensi Publik Lucent. Inferno dijual ke Vita Nuova Holdings dan telah dirilis di bawah lisensi GPL/MIT.
Gambar 9. Plan 9
Linux dan GNU
Linux yakni nama generik untuk anggota dalam keluarga tata cara operasi yang dapat ditemukan mulai dari superkomputer hingga jam tangan. Karena komponennya ialah open source, semua orang mampu membaca dan memodifikasi kodenya. Karena itu, telah dimodifikasi untuk berbagai macam elektronika. Hal ini cuma dipakai 0,5-2% dari semua jumlah komputer eksklusif, namun ialah raksasa diam di dunia ponsel, server, dan embedded system. Linux sudah menggantikan Unix di banyak daerah, dan dipakai pada 10 superkomputer paling berpengaruh di dunia.
Gambar 10. Ubuntu, distribusi lazim desktop Linux
(Perbesar)
Proyek GNU ialah kerja sama massa programmer yang berusaha untuk membuat sebuah sistem operasi yang sepenuhnya bebas dan terbuka yang seperti dengan Unix namun dengan instruksi yang betul-betul orisinil. Dimulai pada tahun 1983 oleh Richard Stallman, dan bertanggung jawab atas sebagian besar bagian varian Linux. Untuk argumentasi ini, Linux sering disebut GNU/Linux. Ribuan buah perangkat lunak untuk hampir semua sistem operasi berlisensi di bawah GNU General Public License. Sementara itu, kernel Linux dimulai sebagai proyek sisi Linus Torvalds, seorang mahasiswa dari Finlandia. Pada tahun 1991, Torvalds mulai bekerja di atasnya, dan diposting info perihal proyek di newsgroup untuk siswa komputer dan programer. Ia mendapatkan gelombang pinjaman dan sukarelawan yang balasannya membuat suatu kernel sarat . Programmer dari GNU memperhatikannya, dan anggota dari kedua proyek bekerja untuk mengintegrasikan bagian GNU yang telah selesaiselesai dalam kernel linux untuk membuat metode operasi penuh.
Sistem Operasi Google Chrome
Chrome ialah sebuah sistem operasi berbasis kernel Linux dan didesain oleh Google. Ini sedang dalam pengembangan, dan penggunaannya ditujukan ke arah tipe tertentu dari netbook. sasaran pengguna komputer Chrome yang menghabiskan sebagian besar waktu mereka di internet-secara teknis hanya web browser tanpa aplikasi lain, dan bergantung pada aplikasi internet yang digunakan dalam web browser untuk menyelesaikan tugas-tugas mirip pengolah kata dan menyaksikan media.
Gambar 11. Sebuah rancangan yang dibutuhkan dari Google Chrome OS (
Perbesar)
Lainnya
metode operasi lama yang masih digunakan di ceruk pasar adalah OS/2 dari IBM dan Microsoft; Mac OS, non-Unix prekursor ke Apple Mac OS X; BeOS; XTS-300. Beberapa, utamanya RISC OS, MorphOS dan AmigaOS 4 terus dikembangkan selaku platform minoritas bagi masyarakat antusias dan aplikasi seorang ahli. OpenVMS dibuat dari DEC, masih dalam pengembangan aktif oleh Hewlett-Packard. Namun metode operasi lain yang dipakai nyaris secara eksklusif dalam dunia akademis, untuk metode operasi pendidikan atau untuk melaksanakan penelitian perihal konsep metode operasi. Sebuah acuan khas dari metode yang memenuhi kedua tugas tersebut yakni MINIX, sedangkan untuk acuan Singularity dipakai murni untuk penelitian.
Komponen dari sebuah sistem operasi semuanya ada untuk menciptakan bagian-bagian komputer yang berbeda melakukan pekerjaan bareng . Semua perangkat lunak — dari database keuangan hingga editor film — butuh metode operasi untuk menggunakan perangkat keras, apakah itu sesederhana mirip mouse atau keyboard atau kompleks mirip koneksi internet.
Antarmuka pengguna (User Interface)
Setiap komputer yang menerima semacam input dari manusia memerlukan user interface, yang memungkinkan seseorang untuk berinteraksi dengan komputer. Sementara perangkat seperti keyboard, mouse dan touchscreen yaitu hardwarenya, user interface yaitu perangkat lunak untuk itu. Dua bentuk yang paling umum dari user interface memiliki sejarah menjadi Command-line interface, di mana perintah komputer diketik baris demi baris, dan user interface grafikal, di mana lingkungan visual (paling kerap dengan windows, tombol, dan ikon ) hadir ketika ini.
Gambar 12. Sebuah pola baris perintah. Setiap perintah diketik setelah ‘prompt’, dan kemudian outputnya muncul di bawah. Perintah prompt dikala ini di bab bawah.
(Perbesar)
Graphical User Interfaces (GUI)
Sebagian besar metode komputer terbaru mendukung antarmuka pengguna grafikal/GUI, dan sering menyertakannya mereka. Dalam beberapa tata cara komputer, seperti implementasi asli dari Microsoft Windows dan Mac OS, GUI diintegrasikan ke dalam kernel .
Meskipun secara teknis GUI bukan layanan tata cara operasi, menggabungkan pemberian untuk semuanya di dalam kernel tata cara operasi mampu memungkinkan GUI menjadi lebih responsif dengan meminimalkan jumlah switch konteks yang diharapkan GUI untuk menjalankan fungsi outputnya. Sistem operasi yang lain adalah modular, memisahkan subsistem grafis dari kernel dan Sistem Operasi. Pada 1980-an UNIX, VMS dan sebagainya mempunyai sistem operasi yang dibangun dengan cara ini. GNU/Linux dan Mac OS X juga dibangun dengan cara ini. Rilis Modern dari Microsoft Windows seperti Windows Vista menerapkan subsistem grafis yang sebagian besar dalam user-space, tetapi model graphics drawing routines antara Windows NT 4.0 dan Windows Server 2003 sebagian besar ada dalam ruang kernel. Windows 9x memiliki sedikit perbedaan antara antarmuka dan kernel.

Gambar 13. Sebuah contoh dari GUI. Program mengambil bentuk gambar pada layar, dan file, folder, dan aplikasi berbentuk ikon dan simbol. Sebuah mouse dipakai sebagai navigasi komputer.
(Perbesar)
Banyak metode operasi komputer yang memungkinkan pengguna untuk menginstal atau menciptakan user interface yang mereka harapkan. Sistem Window X dalam relevansinya dengan GNOME atau KDE lazimnya yakni setup pada pada umumnya Unix dan sistem Unix-like (BSD, GNU/Linux, Solaris). Sejumlah pengganti shell Windows telah dirilis untuk Microsoft Windows, yang memperlihatkan alternatif tergolong shell Windows, tetapi shell itu sendiri tidak dapat dipisahkan dari Windows.
Banyak GUI berbasis Unix telah eksis dari waktu ke waktu, sebagian besar berasal dari X11. Kompetisi di antara berbagai vendor Unix (HP, IBM, Sun) menimbulkan banyak fragmentasi, walaupun upaya untuk standarisasi pada 1990-an untuk COSE dan CDE gagal sebagian besar alasannya banyak sekali argumentasi, akibatnya redup oleh adopsi GNOME dan KDE. Sebelum toolkit berbasis perangkat lunak bebas yang dan lingkungan desktop, Motif ialah kombinasi toolkit/desktop lazim (dan merupakan dasar bagi CDE dikembangkan).
GUI berevolusi dari waktu ke waktu. Sebagai teladan, Windows sudah mengganti antarmuka pengguna mereka yang nyaris setiap kali model utama baru Windows dilepaskan, dan GUI Mac OS berubah secara dramatis dengan pengenalan Mac OS X pada tahun 1999.
Kernel
Dengan santunan dari firmware dan driver perangkat , tata cara operasi menawarkan tingkat yang paling dasar atas kendali semua perangkat keras komputer. Ia mengontrol saluran memori untuk acara-acara di RAM, memilih program mana yang menerima susukan ke sumber daya perangkat keras, men-setup atau mereset state operasi CPU untuk pengoperasian yang maksimal setiap dikala, dan mengontrol data untuk penyimpanan non-volatile jangka panjang dengan sistem file pada media seperti disk, tape, flash memory, dll.
Gambar 14. Kernel menghubungkan perangkat lunak aplikasi dengan perangkat keras komputer. (
Perbesar)
Eksekusi Program
Sistem operasi bertindak sebagai interface antara aplikasi dan perangkat keras. Pengguna berinteraksi dengan perangkat keras dari “sisi lain”. Sistem operasi yaitu satu set layanan yang menyederhanakan pengembangan aplikasi. Mengeksekusi program melibatkan penciptaan suatu proses oleh sistem operasi. Kernel membuat suatu proses dengan menetapkan memori dan sumber daya lainnya, menetapkan prioritas untuk proses tersebut (dalam metode multi-tasking), loading isyarat program ke dalam memori, dan melaksanakan acara. Program ini lalu berinteraksi dengan pengguna dan/atau perangkat lain dan melakukan fungsi yang ditujukan.
Interupsi (Interrupts)
Interupsi yaitu sentra untuk metode operasi, alasannya menawarkan cara yang efisien untuk metode operasi untuk berinteraksi dan bereaksi terhadap lingkungannya. Alternatifnya —sistem operasi “mengamati” aneka macam sumber masukan bagi acara (polling) yang membutuhkan tindakan — mampu didapatkan dalam sistem yang lebih bau tanah dengan tumpukan yang sungguh kecil (50 atau 60 byte), namun tidak lazimdalam tata cara modern dengan tumpukan cukup besar. Pemrograman berbasis interrupt secara eksklusif disokong oleh CPU yang paling modern. Interupsi menunjukkan suatu komputer dengan cara menyimpan secara otomatis konteks register setempat, dan melakukan aba-aba tertentu dalam merespon event. Bahkan dasar komputer sungguh mendukung hardware interrupts, dan memungkinkan programmer untuk menentukan instruksi yang dapat dilaksanakan dikala event terjadi.
Ketika interrupt diterima, hardware komputer secara otomatis menghentikan acara apa pun yang sedang berjalan, menyimpan statusnya, dan melakukan instruksi komputer sebelumnya yang terkait dengan interupsi; ini mampu disamakan dengan menempatkan bookmark dalam sebuah buku dikala menyikapi panggilan telepon. Dalam sistem operasi modern, interrupt dihandel oleh kernel sistem operasi. Interupsi mampu berasal dari salah satu perangkat keras komputer atau dari acara yang sedang bekerja.
Ketika sebuah perangkat keras memicu interupsi, kernel metode operasi memutuskan bagaimana menangani event ini, secara umum dengan menjalankan beberapa isyarat pembuatan. Jumlah isyarat yang berlangsung bergantung pada prioritas interrupt (contohnya: seseorang lazimnya merespon alarm detektor asap sebelum menjawab telepon). Pengolahan interupsi perangkat keras yaitu tugas yang biasanya didelegasikan kepada perangkat lunak yang disebut driver perangkat (device driver), yang mampu berupa bab dari kernel sistem operasi, bab dari program lain, atau keduanya. Device driver kemudian mampu memberikan isu untuk sebuah acara yang sedang berlangsung dengan banyak sekali cara.
Program juga bisa mengakibatkan interrupt pada tata cara operasi. Jika suatu program ingin mengakses hardware misalnya, mampu meng-interrupt kernel tata cara operasi, yang menjadikan kontrol kembali ke kernel. Kernel lalu akan memproses ajakan tersebut. Jika suatu program ingin sumber daya embel-embel (atau ingin menunjukkan sumber daya) mirip memori, ia akan mengakibatkan interrupt untuk mendapatkan perhatian kernel.
Mode terproteksi, modus supervisor, dan virtual mode
CPU Modern mendukung beberapa mode operasi. CPU yang memiliki kesanggupan ini memakai setidaknya dua mode: modus terproteksi dan mode supervisor. Mode supervisor dipakai oleh kernel sistem operasi tingkat rendah untuk peran-peran yang memerlukan terusan tidak terlarang terhadap perangkat keras, seperti mengontrol bagaimana memori ditulis dan dihapus, dan komunikasi dengan perangkat seperti kartu grafis. Modus perlindungan, sebaliknya, dipakai untuk hampir segala sesuatu lainnya. Aplikasi beroperasi dalam modus terproteksi, dan hanya dapat memakai perangkat keras dengan berkomunikasi dengan kernel, yang mengendalikan segala sesuatu dalam mode supervisor. CPU mungkin memiliki cara lain yang sama dengan modus yang dilindungi juga, mirip mode virtual untuk menjiplak jenis prosesor yang lebih renta, mirip selaku prosesor 16-bit pada 32-bit prosesor, atau prosesor 32-bit pada 64-bit.

Gambar 15. Cincin privilege untuk x86 yang tersedia dalam modus terproteksi. Sistem operasi menentukan proses mana yang berlangsung dalam modus masing-masing.
(Perbesar)
Ketika komputer pertama kali dilakukan, maka secara otomatis akan berlangsung dalam mode supervisor. Beberapa acara pertama berlangsung di komputer, selaku BIOS, bootloader dan tata cara operasi memiliki saluran tak terbatas ke perangkat keras – dan ini diharapkan alasannya adalah, menurut definisi, menginisialisasi lingkungan yang dilindungi hanya dapat dilaksanakan di luar. Namun, saat metode operasi melewati kendali ke acara lain, hal itu menempatkan CPU ke dalam modus terproteksi.
Dalam modus terproteksi, program mungkin memiliki susukan terbatas ke set isyarat CPU. Sebuah acara pengguna mampu meninggalkan modus terproteksi cuma alasannya dipicu interrupt, menjadikan kontrol untuk kembali ke kernel. Dengan cara ini sistem operasi dapat mempertahankan kendali langsung atas hal-hal seperti perangkat keras dan terusan ke memori.
Istilah “protected mode resource” lazimnya merujuk terhadap satu atau lebih register CPU, yang berisi isu bahwa program yang berjalan tidak diperkenankan untuk mengubahnya. Usaha-usaha untuk mengganti sumber daya ini lazimnya mengakibatkan beralihnya ke modus supervisor, dimana sistem operasi dapat menanggulangi percobaan operasi ilegal program ini (contohnya, dengan menutup acara tersebut).
Manajemen Memori
suatu kernel tata cara operasi multiprogramming mesti bertanggung jawab untuk mengurus seluruh tata cara memori yang sedang dipakai oleh acara. Hal ini untuk memastikan bahwa program tidak mengusik memori yang telah dipakai oleh program lain. Ketika time share program, setiap acara harus memiliki jalan masuk independen ke memori.
Manajemen memori kooperatif, digunakan oleh banyak sistem operasi terdahulu yang mengasumsikan bahwa semua program memakai manajemen memori kernel secara sukarela, dan tidak melampaui memori yang dialokasikan untuk mereka. Sistem administrasi memori ini nyaris tidak pernah terlihat lagi, karena program sering mengandung bug yang mampu menyebabkan mereka melebihi batas penggunaan jatah memori yang dialokasikan. Jika sebuah acara gagal dapat mengakibatkan memori yang digunakan oleh satu acara atau lebih akan terpengaruh atau di-overwrite. Program jahat, atau virus dapat dengan sengaja mengganti memori program lain atau mungkin mensugesti operasi dari metode operasi itu sendiri. Dengan manajemen memori kooperatif, hanya diharapkan satu acara berbuat jahat untuk membuat metode crash.
Perlindungan memori memungkinkan kernel untuk membatasi proses mengakses ke memori komputer. Berbagai tata cara pemberian memori mulai eksis, tergolong segmentasi memori dan paging. Semua tata cara memerlukan beberapa tingkat dari dukungan perangkat keras (seperti 80286 MMU) yang tidak ada di semua komputer.
Dalam kedua segmentasi dan paging, mode protektif tertentu meregister spesifikasi ke CPU alamat memori apa yang mesti mampu diakses oleh acara yang sedang berlangsung. Upaya untuk mengakses alamat lain akan memicu interrupt yang akan menjadikan CPU untuk memasukkan kembali modus supervisor, menempatkan kernel dalam komando. Ini disebut pelanggaran segmentasi atau seg-V untuk singkatnya, dan alasannya keduanya susah untuk menentukan hasil yang memiliki arti untuk operasi semacam itu, dan alasannya biasanya merupakan tanda acara yang jahat, kernel secara umum akan berupaya untuk menuntaskan acara yang menyerang itu, dan akan melaporkan errornya.
Windows 3.1-Me memiliki beberapa tingkat santunan memori, tetapi acara-program dengan gampang bisa menyingkir dari keperluan untuk menggunakannya. Sebuah kesalahan perlindungan lazim yang dibuat memperlihatkan pelanggaran segmentasi telah terjadi, tetapi sistem akan sering crash juga.
Memori virtual
Penggunaan alamat memori virtual (seperti paging atau segmentasi) mempunyai arti kernel dapat menentukan memori apa yang masing-masing acara mampu menggunakan pada waktu tertentu, yang memungkinkan metode operasi untuk menggunakan lokasi memori yang sama untuk banyak peran.
Jika sebuah program mencoba mengakses memori maka tidak dalam jangkauan memori yang dapat diakses dikala ini, namun tetap saja sudah dialokasikan untuk itu, kernel akan diinterupsi dengan cara yang sama ketika program ini melebihi memori yang dialokasikan. Dalam UNIX, interupsi semacam ini disebut sebagai page fault.
Gambar 16. Banyak metode operasi mampu “menipu” program menggunakan memori tersebar di seluruh hard disk dan RAM seolah-olah itu yaitu salah satu penggalan lanjutan memori yang disebut memori virtual.
(Perbesar)
Ketika kernel mendeteksi page fault biasanya akan menyesuaikan rentang memori virtual dari acara yang dipicu itu, menunjukkan jalan masuk ke memori yang diminta. Hal ini menunjukkan kernel kuasa kebebasan lebih dimana memori aplikasi tertentu disimpan, atau bahkan apakah ia telah betul-betul telah dialokasikan.
Dalam sistem operasi modern, memori yang lebih jarang diakses mampu disimpan sementara pada disk atau media lain untuk membuat ruang yang ditawarkan untuk digunakan oleh program lain. Ini disebut swapping, selaku kawasan memori yang dapat digunakan oleh beberapa acara, dan isi area memori mampu ditukarkan atau dipertukarkan tergantung ajakan.
Multitasking
Multitasking mengacu pada melakukan beberapa program komputer independen pada komputer yang sama, memperlihatkan kesan bahwa itu adalah melakukan peran pada waktu yang sama. Karena pada umumnya komputer dapat melaksanakan paling banyak satu atau dua hal pada satu waktu, ini lazimnya dijalankan lewat time-sharing, yang mempunyai arti bahwa setiap program menggunakan pembagian waktu komputer untuk mengeksekusi.
Sebuah kernel sistem operasi berisi bagian dari perangkat lunak yang disebut scheduler yang memilih berapa banyak waktu yang mau digunakan untuk mengeksekusi setiap program, dan di mana urutan kontrol hukuman harus dilalui program tersebut. Kontrol akan diteruskan ke proses oleh kernel, yang memungkinkan program untuk jalan masuk ke CPU dan memori. Kemudian, kontrol dikembalikan ke kernel lewat beberapa mekanisme, sehingga acara lain diperbolehkan untuk memakai CPU. Ini disebut passing of control antara kernel dan aplikasi yang disebut context switch.
Sebuah model sebelumnya yang mana mengatur alokasi waktu untuk acara yang disebut multitasking kooperatif. Dalam model ini, dikala kontrol akan diteruskan ke program oleh kernel, hal tersebut mengeksekusi selama yang diharapkan sebelum secara eksplisit mengembalikan kontrol ke kernel. Ini berarti bahwa program yang berbahaya atau tidak berfungsi tidak hanya mencegah program lain untuk memakai CPU, tetapi mampu membuat hang seluruh tata cara jikalau memasuki sebuah loop tak terbatas.
Sistem operasi terbaru memperluas konsep hak usul aplikasi (preemptive) untuk device driver dan arahan kernel, sehingga tata cara operasi memiliki kendali usul apalagi dulu atas internal run-times.
Filosofi tersebut menertibkan multitasking usul untuk memutuskan semua program diberikan waktu yang terstruktur pada CPU. Ini mempunyai arti bahwa semua acara harus dibatasi dalam berapa banyak waktu yang diizinkan untuk memakai CPU tanpa ada gangguan. Untuk meraih hal ini, kernel sistem operasi modern menggunakan waktu interrupsinya. Sebuah timer modus perlindungan diatur oleh kernel yang memicu kembali ke modus supervisor setelah waktu yang diputuskan telah berlalu.
Pada banyak sistem operasi single user, multitasking kooperatif sangatlah cukup, komputer rumah umumnya melaksanakan sejumlah kecil program yang telah diuji dengan baik. Windows NT merupakan versi pertama Microsoft Windows yang memastikan multitasking preemptive, namun tidak mencapai pasar home user sampai Windows XP, (alasannya adalah Windows NT ditargetkan pada para profesional.)
Akses disk dan tata cara file
Akses ke data yang disimpan pada disk adalah fitur utama dari semua sistem operasi. Komputer menyimpan data pada disk menggunakan file, yang terorganisir dengan cara tertentu untuk memungkinkan terusan lebih singkat, keandalan yang lebih tinggi, dan menciptakan penggunaan lebih baik dari ruang drive yang tersedia. Cara khusus di mana file tersebut disimpan pada disk yang disebut metode berkas (file system), dan yang memungkinkan file memiliki nama dan atribut. Hal ini juga memungkinkan mereka untuk disimpan dalam hirarki direktori atau folder yang dikontrol dalam suatu pohon direktori.
Sistem operasi terdahulu lazimnya mendukung satu jenis disk drive dan cuma satu jenis metode file. File sistem sebelumnya sungguh terbatas dalam kapasitas mereka, kecepatan, dan dalam jenis nama file dan struktur direktori yang mampu mereka gunakan. Keterbatasan ini sering merefleksikan kekurangan dalam sistem operasi yang mereka rancang, sehingga sangat susah bagi sebuah tata cara operasi untuk mendukung lebih dari satu tata cara file.
Gambar 17. Filesystem memungkinkan pengguna dan acara untuk mengatur dan menyortir file di komputer, seringkali melalui penggunaan direktori (atau “folder”)
(Perbesar)
Sementara banyak sistem operasi sederhana mendukung jangkauan yang terbatas pada opsi untuk mengakses tata cara penyimpanan, sistem operasi seperti UNIX dan GNU/Linux mendukung teknologi yang dikenal selaku tata cara file virtual atau VFS (virtual file system). Suatu tata cara operasi seperti UNIX mendukung beragam perangkat penyimpanan, tanpa memperhatikan rancangan atau tata cara file mereka yang akan diakses melalui antarmuka pemrograman aplikasi (API/application programming interface) lazim. Hal ini menciptakan program tidak butuhuntuk memiliki pengetahuan tentang perangkat yang mereka kanal. suatu VFS memungkinkan metode operasi untuk menyediakan acara dengan terusan yang tidak terbatas pada jumlah perangkat dengan aneka macam sistem berkas yang tak terbatas yang terinstall melalui penggunaan device driver dan file driver metode khusus.
Sebuah perangkat penyimpanan yang terhubung mirip hard drive diakses melalui device driver. Driver perangkat mengerti bahasa khusus drive dan mampu menerjemahkan bahasa tersebut menjadi bahasa tolok ukur yang digunakan oleh metode operasi untuk mengakses semua drive disk. Pada UNIX, ini ialah bahasa block device.
Ketika kernel memiliki driver yang sempurna di tempatnya, kemudian dapat mengakses isi dari disk drive dalam format baku, yang mungkin berisi satu tata cara file atau lebih. Sebuah driver metode file digunakan untuk menerjemahkan perintah yang digunakan untuk mengakses setiap metode file tertentu ke dalam satu set perintah standar yang mampu digunakan metode operasi untuk mengatakan dengan semua tata cara file. Program lalu dapat menangani tata cara file menurut nama file, dan direktori/folder, yang terkandung dalam struktur hirarkis. Mereka mampu membuat, meniadakan, terbuka, dan menutup file, serta mengumpulkan berbagai informasi tentangnya, termasuk hak susukan, ukuran, ruang kosong, dan tanggal penciptaan dan adaptasi.
Berbagai perbedaan antara file sistem membuat pertolongan semua tata cara file menjadi sukar. Memperbolehkan abjad di nama file, case sensitive, dan adanya berbagai jenis atribut file menciptakan implementasi antarmuka tunggal untuk setiap tata cara berkas menjadi peran yang menyeramkan. Sistem operasi cenderung mengusulkan memakai (dan juga pinjaman native) metode file yang khusus dirancang untuk mereka, misalnya, NTFS pada Windows dan ext3 dan ReiserFS di GNU/Linux. Namun, dalam prakteknya, drive pihak ketiga umumnya tersedia untuk menunjukkan pemberian untuk file yang paling banyak dipakai di sebagian besar metode operasi sistem biasa (misalnya, NTFS tersedia di GNU/Linux lewat NTFS-3g, dan ext2/3 dan ReiserFS tersedia dalam Windows melalui FS-driver dan rfstool ).
Dukungan untuk metode file sungguh beraneka ragam di antara sistem operasi yang modern walaupun ada beberapa tata cara file lazim yang hampir semua tata cara operasi mendukung dan mencakup drivernya. Sistem operasi beraneka ragam pada pertolongan metode berkas dan pada format disk yang mampu mereka instal. Dalam Windows setiap metode file lazimnya terbatas dalam aplikasi pada media tertentu, contohnya untuk CD harus menggunakan ISO9660 atau UDF, dan juga pada Windows Vista, NTFS yaitu file system yang hanya mampu diinstal pada tata cara operasi tersebut. Hal ini memungkinkan menginstal GNU/Linux ke banyak sekali jenis metode file. Tidak seperti tata cara operasi lain, GNU/Linux dan UNIX memungkinkan metode file apa saja mampu digunakan tanpa memperhatikan media daerah menyimpannya, apakah itu hard drive, disk (CD, DVD…), USB key, atau bahkan terkandung dalam file yang terletak di sistem file lain.
Driver perangkat (device drivers)
Sebuah driver perangkat / device driver yaitu jenis khusus perangkat lunak komputer yang dikembangkan untuk memungkinkan interaksi dengan perangkat keras. Biasanya ini merupakan suatu antarmuka untuk berkomunikasi dengan perangkat, melalui bus komputer tertentu atau komunikasi subsistem perangkat keras yang terhubung, menunjukkan perintah kepada dan/atau menerima data dari perangkat, dan di ujung lain, diharapkan antarmuka untuk operasi sistem dan aplikasi perangkat lunak. Ini yaitu program hardware-dependent komputer khusus yang mana juga membuat sistem operasi menentukan acara lain yang dilaksanakan, biasanya sistem operasi atau paket aplikasi perangkat lunak atau program komputer yang berlangsung dibawah kernel metode operasi, untuk berinteraksi secara transparan dengan perangkat keras, dan umumnya menawarkan syarat kebutuhan penanganan interupsi untuk keperluan antarmuka perangkat keras time-dependent yang asinkron.
Tujuan kunci rancangan dari driver perangkat adalaha abstraksi. Setiap model perangkat keras (bahkan dalam kelas perangkat yang serupa) adalah berlawanan. versi yang lebih gres juga dirilis oleh produsen yang menawarkan performa yang lebih tangguh atau lebih baik dan versi-model baru sering diatur dengan cara yang berlawanan. Komputer dan sistem operasi mereka tidak mampu diperlukan untuk mengenali bagaimana mengontrol setiap perangkat, baik kini dan di kurun depan. Untuk menangani persoalan ini, metode operasi dasarnya mendikte bagaimana setiap jenis perangkat harus dikontrol. Fungsi driver perangkat ini lalu menerjemahkan perintah fungsi panggilan metode operasi ke panggilan perangkat tertentu. Dalam teori perangkat gres, yang mana dikendalikan dengan cara baru, harus berfungsi dengan benar kalau driver yang sesuai tersedia. Driver gres ini akan memastikan bahwa perangkat timbul untuk beroperasi mirip umumdari sudut pandang sistem operasi.
Dalam versi Windows sebelum Vista dan model Linux sebelum 2.6, semua hukuman driver adalah kooperatif, yang memiliki arti bahwa jika driver memasuki infinite loop akan membekukan sistem. revisi lebih gres dari metode operasi ini memadukan kernel preemption, dimana kernel menginterrupt driver untuk menunjukkan tugas, dan lalu memisahkan diri dari proses sampai menerima respons dari device driver, atau memberinya lebih banyak tugas untuk dikerjakan.
Jaringan
Saat ini sebagian besar tata cara operasi mendukung banyak sekali protokol, perangkat keras, dan aplikasi jaringan untuk mereka gunakan. Ini bermakna bahwa komputer yang menjalankan tata cara operasi berlawanan mampu berpartisipasi dalam jaringan biasa untuk membuatkan sumber daya mirip komputer, file, printer, dan scanner baik memakai koneksi kabel atau nirkabel. Jaringan intinya mampu memungkinkan metode operasi komputer untuk mengakses sumber daya dari komputer remote untuk mendukung fungsi yang serupa bila sumber daya tersebut terhubung pribadi ke komputer lokal. Ini meliputi seluruhnya mulai dari komunikasi sederhana, untuk menggunakan metode file jaringan atau bahkan mengembangkan grafis atau perangkat keras bunyi komputer lain. Beberapa layanan jaringan membolehkan sumber daya dari komputer untuk diakses secara transparan, seperti SSH yang memungkinkan pengguna jaringan mengakses pribadi ke antarmuka baris perintah komputer.
Jaringan klien/server melibatkan sebuah program pada komputer di suatu daerah yang terhubung lewat jaringan ke komputer lain, yang disebut server. Server menunjukkan (atau host) aneka macam layanan untuk komputer dan pengguna jaringan lainnya. Layanan ini biasanya diberikan melalui port atau access point yang telah dinomori melalui alamat jaringan server. Setiap nomor port lazimnya dihubungkan dengan maksimum satu acara yang berjalank, yang bertanggung jawab untuk menangani permintaan ke port tersebut. Sebuah daemon, ketika menjadi acara pengguna, pada gilirannya mampu mengakses sumber daya perangkat keras lokal pada komputer tersebut dengan mengirimkan seruan ke kernel sistem operasi.
Banyak metode operasi mendukung satu vendor tertentu atau lebih atau protokol jaringan terbuka, contohnya, SNA pada IBM metode, DECnet pada tata cara dari Digital Equipment Corporation, dan protokol khusus Microsoft (SMB) pada Windows. Protokol khusus untuk peran-peran tertentu mungkin juga disokong mirip NFS untuk mengakses file. Protokol seperti ESound, atau esd dapat dengan gampang diperluas lewat jaringan untuk menyediakan bunyi dari aplikasi setempat, pada sound hardware sebuah metode remote.
Keamanan
Sebuah komputer yang aman tergantung pada beberapa teknologi yang bekerja sebagaimana mestinya. Sebuah metode operasi modern menawarkan akses ke sejumlah sumber daya, yang tersedia untuk perangkat lunak yang berjalan pada sistem, dan perangkat eksternal seperti jaringan melalui kernel.
Sistem operasi harus mampu membedakan antara usul yang harus diizinkan untuk diproses, dan lain-lain yang dihentikan diproses. Sementara beberapa tata cara cuma dapat membedakan antara “hak istimewa” dan ” hak non-istimewa”, tata cara biasanya mempunyai bentuk identitas pemohon, mirip nama pengguna. Untuk menciptakan identitas mungkin ada proses otentikasi. Seringkali nama pengguna mesti dikutip, dan masing-masing username memiliki sebuah password. Metode yang lain untuk otentikasi, mirip kartu magnetik atau data biometrik, mungkin dipakai selaku gantinya. Dalam beberapa masalah, utamanya koneksi dari jaringan, sumber daya dapat diakses tanpa otentikasi sama sekali (seperti membaca file lewat network share). Juga tercakup oleh desain identitas pemohon adalah otorisasi; pelayanan dan sumber daya tertentu yang mampu diakses oleh pemohon saat login ke tata cara yang terikat pada akun user pemohon atau pada banyak sekali kelompok konfigurasi user yang dimiliki pemohon.
Tambahannya untuk mengizinkan/melarang model keselamatan, metode dengan tingkat keselamatan yang tinggi juga akan menawarkan opsi audit. Hal ini akan memungkinkan pelacakan ajakan untuk susukan kepada sumber daya (seperti, “siapa yang sudah membaca file ini?”). Keamanan internal, atau keamanan dari program yang sudah berjalan cuma memungkinkan bila semua seruan yang mungkin berbahaya harus dikerjakan melalui interupsi ke kernel tata cara operasi. Jika acara dapat mengakses hardware secara pribadi dan sumber daya, mereka tidak dapat dijamin aman.
Keamanan eksternal melibatkan usul dari luar komputer, mirip login di konsol yang terhubung atau berbagai jenis koneksi jaringan. Permintaan eksternal sering melalui device driver ke kernel sistem operasi, di mana mereka dapat diantarkan ke aplikasi, atau dijalankan secara eksklusif. Keamanan tata cara operasi telah usang menjadi perhatian karena data yang sungguh sensitif berada pada komputer, baik yang bersifat komersial dan militer. Departemen Pertahanan Amerika Serikat (Department of Defense / DoD) menciptakan Trusted Computer System Evaluation Criteria (TCSEC) yang ialah standar yang menetapkan standar dasar untuk menilai efektivitas keselamatan. Hal ini menjadi sangat penting untuk para pembuat tata cara operasi, karena TCSEC dipakai untuk memeriksa, mengklasifikasi dan memilih metode komputer yang dipertimbangkan untuk pengolahan, penyimpanan dan pengambilan gosip sensitif atau diam-diam.
Layanan jaringan meliputi penawaran mirip file sharing, layanan cetak, email, website, dan file transfer protokol (FTP), sebagian besar yang mampu membahayakan keselamatan. Di garis depan keselamatan yakni perangkat keras yang diketahui sebagai firewall atau sistem intrusi deteksi/pencegahan. Pada tingkat tata cara operasi, ada sejumlah firewall perangkat lunak yang tersedia, serta sistem intrusi deteksi/pencegahan. Sebagian besar tata cara operasi modern menyediakan perangkat lunak firewall, yang diaktifkan secara default. Sebuah perangkat lunak firewall dapat dikonfigurasi untuk mengijinkan atau menolak lalu lintas jaringan ke atau dari layanan atau aplikasi yang berjalan pada sistem operasi. Oleh alasannya adalah itu, seseorang mampu menginstal dan melakukan layanan yang tidak aman, seperti Telnet atau FTP, dan tidak mesti terancam oleh suatu pelanggaran keselamatan alasannya adalah firewall akan menolak semua lalu lintas yang menjajal untuk menyambung ke layanan pada port tersebut.
Strategi alternatif, dan hanya taktik sandbox yang tersedia dalam tata cara yang tidak menyanggupi standar virtualisasi Popek dan Goldberg, yakni sistem operasi yang tidak melaksanakan acara-program pengguna selaku instruksi native, tetapi mengemulasikan prosesor atau menawarkan host untuk tata cara berbasis instruksi-p seperti Java.
Keamanan internal sangat relevan untuk metode multi-user, yang memungkinkan setiap pengguna metode untuk memiliki file eksklusif yang mana pengguna lain tidak mampu menghancurkan atau membacanya. Keamanan internal juga penting jikalau audit dipakai, alasannya adalah acara bisa memiliki peluang mem-bypass sistem operasi, tergolong melewati audit.
Sebuah metode operasi real-time / waktu nyata (RTOS) adalah metode operasi multitasking yang ditujukan untuk aplikasi dengan deadline tetap (komputasi real-time). aplikasi tersebut termasuk beberapa tata cara embedded kecil, mesin pengendali kendaraan beroda empat, robot industri, pesawat ruang angkasa, kendali industri, dan beberapa tata cara komputasi skala-besar.
Contoh tata cara operasi real-time skala besar sebelumnya ialah sebuah Fasilitas Pengolahan Transaksi yang dikembangkan oleh American Airlines dan IBM untuk Sistem Reservasi Sabre Airline.
Sistem embedded memiliki deadline yang tetap memakai metode operasi real-time mirip VxWorks, PikeOS, eCos, QNX, MontaVista Linux dan RTLinux. Windows CE ialah tata cara operasi real-time yang membagi API yang seperti untuk desktop Windows, namun tidak membagi basis aba-aba desktop Windows.
Beberapa tata cara embedded menggunakan tata cara operasi seperti Symbian OS, Palm OS, BSD, dan GNU/Linux, walaupun sistem operasi tersebut tidak mendukung komputasi real-time.
Pengembangan metode operasi ialah salah satu dari banyak pilihan terlibat dan teknis untuk kegemaran komputasi. Sebuah tata cara operasi kegemaran diklasifikasikan sebagai salah satu yang sudah ditulis dari permulaan (tidak didasarkan pada tata cara yang lain) dan mempunyai beberapa pengembang yang bekerja di waktu luang mereka. Pembangunan umumnya dimulai dengan tata cara operasi yang ada. Hobi yaitu pengembangan mereka sendiri, atau mereka berinteraksi dalam sebuah kalangan individu yang relatif kecil dan tidak terencana yang mempunyai semua kesamaan suasana dengan basis aba-aba yang serupa. Contoh suatu sistem operasi hobi tergolong Syllable dan ReactOS.
Keanekaragaman metode operasi dan portabilitas
Perangkat lunak aplikasi lazimnya ditulis untuk digunakan pada sistem operasi tertentu, dan kadang kala bahkan untuk hardware tertentu. Ketika port aplikasi berjalan di OS lain, fungsi yang dibutuhkan oleh aplikasi tersebut mungkin diimplementasikan secara berlainan oleh OS (nama-nama fungsi, makna argumen, dll) yang memerlukan aplikasi untuk disesuaikan, diubah, atau dipertahankan.
Biaya dalam mendukung keanekaragaman metode operasi mampu dihindari dengan menulis aplikasi terhadap platform perangkat lunak seperti Java, atau Qt untuk web browser. Abstraksi ini sudah menanggung biaya pembiasaan terhadap tata cara operasi tertentu dan sistem library mereka.
Pendekatan lain adalah untuk vendor metode operasi untuk mengadopsi standar. Misalnya, POSIX dan lapisan abstraksi OS menawarkan kesamaan yang meminimalisir biaya port.
- ^ Stallings, p. 6.
- ^ Dhotre, p. 1
- ^ “Operating System Market Share“. Net Applications.
- ^ Hansen, pp. 4-7
- ^ “Global Web Stats“. W3Counter, Awio Web Services. September 2009. Retrieved 2009-10-24.
- ^ “Operating System Market Share“. Net Applications. October 2009. Retrieved November 5, 2009.
- ^ “Top 5 Operating Systems on October 09“. StatCounter. October 2009. Retrieved November 5, 2009.
- ^ “Operating System Share by Groups for Sites in All Locations January 2009“.
- ^ “Behind the IDC data: Windows still No. 1 in server operating systems“. ZDNet. 2010-02-26.
- ^ Poisson, Ken. “Chronology of Personal Computer Software“. Retrieved on 2008-05-07. Last checked on 2009-03-30.
- ^ “My OS is less hobby than yours“. Osnews. December 21, 2009. Retrieved December 21, 2009.
- Auslander, Marc A.; Larkin, David C.; Scherr, Allan L. (1981). The evolution of the MVS Operating System. IBM J. Research & Development. http://www.research.ibm.com/journal/rd/255/auslander.pdf
- Deitel, Harvey M.; Deitel, Paul; Choffnes, David. Operating Systems. Pearson/Prentice Hall. ISBN 978-0-13-092641-8.
- Bic, Lubomur F.; Shaw, Alan C. (2003). Operating Systems.. Pearson: Prentice Hall.
- Dhotre, I.A. (2009). Operating Systems.. Technical Publications.
- Stallings (2005). Operating Systems, Internals and Design Principles. Pearson: Prentice Hall.
- Silberschatz, Avi; Galvin, Peter; Gagne, Greg (2008). Operating Systems Concepts. John Wiley & Sons. ISBN 0-470-12872-0.
- Hansen, Per Birch, ed (2001). Classic Operating Systems. Springer. pp. 597. ISBN 038795113X.