Pengetahuan Perihal Sistem Operasi Yang Perlu Anda Pahami

Di Berita 66 views

Sistem operasi [dalam bahasa Inggris: operating system atau OS] yaitu perangkat lunak pada komputer yang mengatur jalannya jadwal yang berbeda yang memakai perangkat keras komputer tersebut, dan mengatur cara pengguna mengendalikan komputer. Sistem Operasi juga merupakan bidang studi dalam Ilmu Komputer Terapan. Sistem operasi ditemukan pada hampir semua perangkat yang berisi komputer dengan beberapa jadwal — dari telepon seluler dan konsol video game hingga superkomputer dan server web. Sistem operasi yaitu platform dua sisi, membawa konsumen (sisi pertama) dan pengembang jadwal (sisi kedua) gotong royong dalam satu pasar. Beberapa sistem operasi modern yang terkenal untuk komputer pribadi diantaranya Microsoft Windows, Mac OS X, dan Linux.

Ringkasan

Karena komputer-komputer terdahulu sering dibangun hanya satu tugas, ibarat kalkulator, tidak terdapat sistem operasi pada bentuk mereka yang modern dan lebih kompleks hingga tahun 1960-an. Saat komputer berevolusi menjadi perangkat yang sanggup menjalankan jadwal yang berbeda berturut-turut, programer mulai memasukkan library dari jadwal umum (dalam bentuk kode komputer) ke komputer untuk menghindari duplikasi dan mempercepat proses. Akhirnya, komputer mulai dibangun biar secara otomatis beralih dari satu kiprah ke kiprah berikutnya. Penciptaan library runtime untuk mengelola pemrosesan dan kecepatan pencetakan tiba berikutnya, yang berevolusi menjadi jadwal yang bisa menafsirkan banyak sekali jenis bahasa pemrograman menjadi kode mesin. Ketika komputer pribadi buatan perusahaan ibarat Apple Inc, Atari, IBM dan Amiga menjadi terkenal pada 1980-an, vendor mulai menambahkan fitur ibarat penjadwalan pemeliharaan perangkat lunak dan perangkat keras.
Suatu sistem operasi sanggup dibagi menjadi beberapa belahan yang berbeda. Salah satu belahan yang paling penting yaitu kernel, yang mengontrol proses tingkat rendah yang rata-rata pengguna biasanya tidak sanggup melihatnya: mengendalikan bagaimana memori membaca dan menulis, urutan proses yang dijalankan, bagaimana informasi yang diterima dan dikirim oleh perangkat ibarat monitor, keyboard dan mouse, dan menetapkan bagaimana menginterpretasikan informasi yang diterima oleh jaringan. User interface yaitu belahan dari sistem operasi yang berinteraksi dengan pengguna komputer secara langsung, yang memungkinkan mereka untuk mengontrol dan memakai program. Antarmuka pengguna terkadang grafikal dengan ikon dan desktop, atau tekstual, dengan baris perintah. Fitur lain yang serupa yaitu antarmuka pemrograman aplikasi, yang merupakan sebuah set layanan dan  kode library yang memungkinkan aplikasi berinteraksi satu sama lain, serta sistem operasi itu sendiri. Tergantung pada sistem operasi, banyak komponen tidak sanggup dianggap sebagai belahan yang sebenarnya. Sebagai contoh, Windows menganggap antarmuka pengguna untuk menjadi belahan dari sistem operasi, sedangkan banyak versi Linux tidak.
Sejarah

Pada awal 1950-an, sebuah komputer hanya sanggup mengeksekusi satu jadwal pada satu waktu. Setiap user sanggup memakai satu-satunya komputer dan akan tiba pada waktu yang bersiklus dengan jadwal dan data pada kartu kertas dan tape berlubang. Program ini akan dimasukkan ke dalam mesin, dan mesin akan mulai bekerja hingga jadwal selesai atau crash. Program umum bisa men-debug melalui panel depan beralih memakai switch dan lampu panel. Dikatakan bahwa Alan Turing yaitu seorang master ini pada awal mesin Manchester Mark 1, dan ia sudah menurunkan konsepsi primitif dari suatu sistem operasi dari prinsip-prinsip dari mesin Turing Universal.
Kemudian mesin tiba dengan library untuk software, yang akan dikaitkan dengan jadwal user untuk membantu operasi ibarat input dan output dan menghasilkan kode komputer dari  kode simbolis yang sanggup dibaca manusia. Ini yaitu asal mula dari sistem operasi modern. Namun, mesin tersebut masih menjalankan 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 gagasan awal dari suatu sistem operasi.
(Perbesar)

Mainframes
Di tahun 1950-an, banyak fitur-fitur utama dirintis di bidang sistem operasi, termasuk pengolahan batch, input/output interrupt, buffering, multitasking, spooling, dan library runtime. Fitur-fitur tersebut disertakan atau tidak dalam perangkat lunak aplikasi terdapat pada opsi aplikasi pemrograman, bukan di sistem operasi terpisah yang dipakai oleh semua aplikasi. Pada tahun 1959 Sistem Operasi SHARE dirilis sebagai utilitas terpadu untuk mainframe IBM 704 dan IBM 709.

Konsep OS tunggal ini meliputi seluruh garis produk yang sangat penting bagi keberhasilan System/360 dan, pada kenyataannya, sistem operasi mainframe IBM dikala ini yaitu keturunan jauh dari sistem aslinya; aplikasi yang ditulis untuk OS/360 masih sanggup berjalan pada mesin modern. Pada pertengahan 70-an, para MVS, keturunan OS/360 memperlihatkan implementasi pertama memakai RAM sebagai cache transparan untuk data.

Gambar 2. OS/360 diletakkan pada semua komputer mainframe IBM awal tahun 1964, termasuk komputer yang membantu NASA menempatkan insan di bulan
(Perbesar)

OS/360 juga memelopori konsep bahwa sistem operasi melacak semua sumber daya sistem yang digunakan, termasuk jadwal dan alokasi ruang data di memori utama dan ruang file dalam penyimpanan sekunder, dan penguncian file selama update. Ketika proses ini dilarang alasannya alasan apapun, semua sumber daya tersebut kembali diklaim oleh sistem operasi.

Sebuah sistem alternatif CP-67 memulai keseluruhan baris sistem operasi yang difokuskan pada konsep mesin virtual.

Control Data Corporation mengembangkan sistem operasi SCOPE pada tahun 1960, untuk pemrosesan batch. Dalam kerjasamanya dengan Universitas Minnesota, KRONOS dan kemudian sistem operasi NOS tersebut dikembangkan selama tahun 1970-an, yang mendukung batch simultan dan penggunaan time sharing. Seperti banyak sistem time sharing komersial, antarmukanya yaitu ekstensi dari sistem operasi Dartmouth BASIC, salah satu upaya merintis time sharing dan bahasa pemrograman. Pada final 1970-an, Control Data dan Universitas Illinois mengembangka sistem operasi PLATO, yang memakai panel display plasma dan jaringan time sharing jarak jauh. Plato sangat inovatif untuk dikala itu, meliputi real-time chatting, dan game grafis multi-user. Burroughs Corporation memperkenalkan B5000 pada tahun 1961 dengan sistem operasi MCP (Master Control Program). B5000 yaitu mesin stack yang dirancang untuk secara pribadi mendukung bahasa tingkat tinggi tanpa bahasa mesin atau assembler, dan memang MCP yaitu OS pertama yang ditulis secara khusus dalam bahasa tingkat tinggi – ESPOL , sebuah dialek dari ALGOL. MCP juga memperkenalkan banyak penemuan lainnya, ibarat menjadi implementasi komersial pertama dari memori virtual. Selama pengembangan AS400, IBM melaksanakan pendekatan pada lisensi MCP Burroughs untuk dijalankan pada perangkat keras AS400. Proposal ini telah ditolak oleh manajemen Burroughs untuk melindungi produksi perangkat keras yang ada. MCP masih dipakai hari ini di Unisys ClearPath / garis komputer MCP.

UNIVAC, produsen komputer komersial pertama, menghasilkan serangkaian sistem operasi EXEC. Seperti semua sistem main-frame terdahulu, ini yaitu sistem berorientasi batch yang mengatur drum magnetik, disk, pembaca kartu dan printer line. Pada tahun 1970-an, UNIVAC menghasilkan sistem Real-Time Basic (RTB) untuk mendukung time sharing skala besar, juga dipolakan sesudah sistem Dartmouth BASIC.

General Electric dan MIT mengembangkan General Electric Comprehensive Operating Supervisor (GECOS), yang memperkenalkan konsep ringed security privilege level. Setelah akuisisi oleh Honeywell namanya diubah menjadi General Comprehensive Operating System (GCOS).

Digital Equipment Corporation mengembangkan banyak sistem operasi untuk banyak sekali jalur komputer, termasuk sistem time sharing TOPS-10 dan TOPS-20 untuk sistem kelas 36-bit PDP-10. Sebelum penggunaan luas dari UNIX, TOPS-10 yaitu sebuah sistem yang terkenal terutama di universitas, dan di komunitas ARPANET terdahulu.

Pada final tahun1960-an hingga final 1970-an, beberapa kemampuan perangkat keras berevolusi yang memungkinkan software yang ibarat atau software port bekerja di lebih dari satu sistem. Sistem terdahulu sudah memakai microprogramming untuk mengimplementasikan fitur pada sistem mereka dalam rangka untuk memungkinkan arsitektur dasar yang berbeda muncul menjadi sama dengan arsitektur lain dalam satu rangkaian. Faktanya sebagian besar sistem 360 sesudah 360/40 (kecuali 360/165 dan 360/168) telah mengimplementasi mikroprogram. Tapi beberapa dikala kemudian lainnya mencapai kompatibilitas aplikasi yang terbukti lebih signifikan.

Investasi besar dalam perangkat lunak untuk sistem tersebut dibuat semenjak tahun 1960-an mengakibatkan sebagian besar produsen komputer orisinil untuk terus mengembangkan sistem 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 mempunyai kemampuan atau perlu sistem operasi rumit yang telah dikembangkan untuk mainframe dan mini; sistem operasi minimalis tersebut dikembangkan, terkadang diload dari ROM dan dikenal sebagai Monitor. Satu sistem operasi berbasis disk awal yang terkenal yaitu 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 (versi IBM itu disebut IBM DOS atau PC DOS ), penerusnya membuat Microsoft. Apple Computer Inc tahun 80-an (sekarang 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 yaitu OS awal 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 ibarat jendela dan ikon kemudian akan menjadi biasa di GUI.
Pengenalan CPU chip Intel 80386 dengan arsitektur 32-bit dan kemampuan paging, menyediakan komputer pribadi dengan kemampuan untuk menjalankan sistem operasi multitasking ibarat minicomputer dan mainframe yang terdahulu. Microsoft menanggapi kemajuan ini dengan mempekerjakan Dave Cutler, yang telah mengembangkan sistem operasi VMS untuk Digital Equipment Corporation. Dia akan memimpin pengembangan sistem operasi Windows NT, yang tetap menjadi dasar untuk garis sistem operasi Microsoft. Steve Jobs, rekan pendiri Apple Inc, memulai NeXT Computer Inc, yang mengembangkan sistem operasi NeXTSTEP ibarat Unix. NeXTSTEP kemudian akan diakuisisi dan dipakai oleh Apple Inc, bersama dengan kode dari FreeBSD sebagai inti dari Mac OS X.

Proyek GNU dimulai oleh penggagas dan programmer Richard Stallman dengan tujuan mengganti perangkat lunak tepat yang gratis menjadi sistem operasi UNIX. Saat proyek ini sangat sukses pada duplikasi fungsi banyak sekali belahan UNIX, pengembangan GNU Hurd kernel terbukti tidak produktif. Pada tahun 1991 mahasiswa ilmu komputer Finlandia, Linus Torvalds, dengan kerja sama dari relawan melalui Internet, merilis versi pertama dari kernel Linux. Kemudian bergabung dengan userland dan sistem perangkat lunak GNU untuk membentuk sebuah sistem operasi yang sempurna. Sejak itu, kombinasi dari dua komponen utama biasanya telah disebut sebagai “Linux” oleh industri perangkat lunak, sebuah konvensi penamaan yang mana Stallman dan Free Software Foundation tetap menentangnya, malahan lebih suka nama “GNU/Linux”. Berkeley Software Distribution, yang dikenal sebagai BSD, yaitu turunan UNIX yang didistribusikan oleh Universitas California, Berkeley, dimulai pada tahun 1970-an. Didistribusikan secara bebas dan porting untuk banyak minikomputer, hasilnya juga dipakai pada PC, sebagian besar sebagai FreeBSD, NetBSD, dan OpenBSD.
Sistem Operasi

Microsoft Windows
Microsoft Windows yaitu keluarga milik sistem operasi yang paling umum dipakai di komputer pribadi. Ini yaitu keluarga sistem operasi yang paling umum untuk komputer pribadi, dengan sekitar 90% dari pangsa pasar. Saat ini, sebagian besar keluarga Windows yang banyak dipakai yaitu versi Windows XP, dirilis pada tanggal 25 Oktober 2001. Versi terbaru yaitu 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 sistem operasi renta MS-DOS untuk PC IBM. Dirilis pada tahun 1985, Microsoft mendominasi dunia bisnis komputer pribadi, dan melanjutkan untuk menetapkan sejumlah standar industri dan aplikasi biasa. Dimulai dengan Windows XP, semua versi modern didasarkan pada kernel Windows NT. Arus versi Windows berjalan pada prosesor x86 dan x86-64, meskipun versi usang kadang kala mendukung arsitektur lain.

Windows juga dipakai pada server, aplikasi pendukung ibarat server web dan server database. Dalam beberapa tahun terakhir, Microsoft telah menghabiskan pemasaran yang signifikan serta uang penelitian & pengembangan untuk memperlihatkan bahwa Windows bisa menjalankan aplikasi perusahaan, yang menjadikan harga/catatan kinerja yang konsisten dan penerimaan yang signifikan dalam pasar perusahaan. Namun, penggunaan di server tidak begitu luas ibarat komputer pribadi, 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 yaitu sebuah garis dari sebagian sistem operasi grafis pribadi yang dikembangkan, dipasarkan, dan dijual oleh Apple Inc, yang terakhir yaitu pre-loaded pada dikala pengiriman semua komputer Macintosh. Mac OS X yaitu penerus orisinil Mac OS, yang telah menjadi sistem operasi primer Apple semenjak tahun 1984. Tidak ibarat pendahulunya, Mac OS X yaitu sistem operasi UNIX yang dibangun di atas teknologi yang telah dikembangkan di NeXT melalui 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 versi 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 telah dirilis, yang paling terakhir yaitu 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 yaitu “Snow Leopard”.

Edisi server, Mac OS X Server, secara arsitektur identik dengan kawan desktopnya, tetapi biasanya berjalan pada garis hardware Macintosh server milik Apple. Mac OS X Server meliputi manajemen kerja kelompok dan perangkat lunak manajemen yang menyediakan jalan masuk simple ke layanan kunci jaringan, termasuk biro transfer mail, sebuah server Samba, sebuah LDAP server, sebuah nama domain server, dan lain-lain.

Unix dan sistem operasi serupa Unix
Ken Thompson menulis B, terutama berdasarkan BCPL, yang dipakai untuk menulis Unix, berdasarkan pengalamannya di proyek MULTICS. B digantikan oleh C, dan Unix bermetamorfosis kompleks, keluarga besar sistem operasi yang terkait yang telah besar lengan berkuasa dalam setiap sistem operasi modern. The keluarga ibarat Unix (Unix-like) yaitu bermacam-macam grup sistem operasi, dengan beberapa sub-kategori utama termasuk System V, BSD, dan GNU/Linux. Nama “UNIX” yaitu merek dagang dari The Open Group yang perizinannya dipakai untuk sistem operasi yang telah terbukti sesuai dengan definisi mereka. “Unix-like” umumnya dipakai untuk merujuk ke set besar sistem operasi yang ibarat Unix yang asli.

Gambar 7. Evolusi sistem Unix
(Perbesar)

Sistem yang serupa Unix berjalan pada banyak sekali arsitektur mesin. Mereka banyak dipakai untuk server dalam bisnis, serta workstation dalam bidang akademik dan lingkungan engineering. Unix varian gratis, ibarat GNU/Linux dan BSD, yaitu sistem operasi yang terkenal di daerah-daerah tersebut.

Beberapa varian Unix ibarat HP UX dan AIX IBM yang dirancang untuk berjalan hanya pada hardware vendor itu. Lainnya, ibarat Solaris, sanggup berjalan di banyak sekali jenis hardware, termasuk x86 server dan PC. Apple Mac OS X, sebuah kernel bibit unggul berbasis varian BSD berasal dari NeXTSTEP, Mach, dan FreeBSD, telah menggantikan Apple Mac OS sebelumnya (non-Unix).

Interoperabilitas Unix dicari dengan mendirikan standar POSIX. Standar POSIX sanggup diterapkan pada setiap sistem operasi, meskipun pada awalnya dibuat untuk banyak sekali varian Unix.

BSD dan keturunannya
Sebuah subkelompok dari keluarga Unix yaitu keluarga Berkeley Software Distribution, yang termasuk FreeBSD, NetBSD, dan OpenBSD. Sistem-sistem operasi yang paling sering ditemukan pada webserver, meskipun mereka juga sanggup berfungsi sebagai OS komputer pribadi. Internet berutang banyak atas keberadaan BSD, alasannya banyak protokol kini yang umum dipakai oleh komputer untuk melaksanakan koneksi, mengirim dan mendapatkan data melalui jaringan yang diimplementasikan secara luas dan disempurnakan di BSD. WWW (World Wide Web) juga yang pertama memperlihatkan pada sejumlah komputer yang menjalankan sebuah sistem operasi berbasis pada BSD yang disebut NextStep.

Gambar 8. Server pertama World Wide Web yang berjalan dalam NeXTSTEP, berbasis BSD.
(Perbesar)

BSD berakar pada Unix. Pada tahun 1974, Universitas California, Berkeley menginstall sistem Unix pertama. Seiring waktu, mahasiswa dan staf di departemen ilmu komputer di sana mulai menambahkan jadwal gres untuk membuat sesuatu menjadi lebih mudah, ibarat editor teks. Ketika Berkely mendapatkan komputer VAX gres pada tahun 1978 dengan Unix yang telah terinstal, mahasiswa mengubah Unix lebih banyak untuk mengambil laba dari kemungkinan hardware komputer. Defense Advanced Research Projects Agency dari Departemen Pertahanan Amerika memperhatikan, 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, sesudah meninggalkan Apple Inc pada tahun 1985, membentuk NeXT Inc, sebuah perusahaan yang memproduksi komputer high-end yang berjalan pada variasi BSD yang disebut NeXTSTEP. Salah satu komputer tersebut dipakai oleh Tim Berners-Lee sebagai server web pertama untuk membuat World Wide Web.

Pengembang ibarat Keith Bostic mendorong proyek tersebut untuk mengganti kode non-free yang berasal dari Bell Labs. Setelah hal ini selesai dilakukan, AT&T menggugat. Akhirnya, sesudah dua tahun sengketa hukum, proyek BSD maju, dan melahirkan sejumlah derivatif bebas, ibarat FreeBSD dan NetBSD. Namun, penungguan dua tahun telah menyiapkan panggung untuk dua proyek yang hasilnya 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 sistem operasi Unix. Programmer di Bell Labs melanjutkan untuk mengembangkan Plan 9 dan Inferno, yang dirancang untuk lingkungan terdistribusi modern. Plan 9 dirancang dari awal untuk menjadi sistem operasi jaringan, dan mempunyai grafis built-in, tidak ibarat Unix, yang menambahkan fitur ini untuk perancangan yang akan datang. 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 yaitu nama generik untuk anggota dalam keluarga sistem operasi yang sanggup ditemukan mulai dari superkomputer hingga jam tangan. Karena komponennya yaitu open source, siapa saja sanggup membaca dan memodifikasi kodenya. Karena itu, telah dimodifikasi untuk banyak sekali macam elektronik. Hal ini hanya dipakai 0,5-2% dari semua jumlah komputer pribadi, tetapi merupakan raksasa membisu di dunia ponsel, server, dan embedded system. Linux telah menggantikan Unix di banyak tempat, dan dipakai pada 10 superkomputer paling kuat di dunia.

Gambar 10. Ubuntu, distribusi umum desktop Linux
(Perbesar)

Proyek GNU merupakan kerja sama massa programmer yang berusaha untuk membuat sebuah sistem operasi yang sepenuhnya bebas dan terbuka yang ibarat dengan Unix namun dengan kode yang benar-benar asli. Dimulai pada tahun 1983 oleh Richard Stallman, dan bertanggung jawab atas sebagian besar belahan varian Linux. Untuk alasan 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 informasi wacana proyek di newsgroup untuk siswa komputer dan programer. Ia mendapatkan gelombang dukungan dan sukarelawan yang hasilnya membuat sebuah kernel penuh. Programmer dari GNU memperhatikannya, dan anggota dari kedua proyek bekerja untuk mengintegrasikan belahan GNU yang telah selesaiselesai dalam kernel linux untuk membuat sistem operasi penuh.

Sistem Operasi Google Chrome
Chrome yaitu 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 dipakai dalam web browser untuk menuntaskan tugas-tugas ibarat pengolah kata dan melihat media.

Gambar 11. Sebuah desain yang diharapkan dari Google Chrome OS
(Perbesar)

Lainnya

sistem operasi usang yang masih dipakai di ceruk pasar yaitu OS/2 dari IBM dan Microsoft; Mac OS, non-Unix prekursor ke Apple Mac OS X; BeOS; XTS-300. Beberapa, terutama RISC OS, MorphOS dan AmigaOS 4 terus dikembangkan sebagai platform minoritas bagi masyarakat antusias dan aplikasi spesialis. OpenVMS dibuat dari DEC, masih dalam pengembangan aktif oleh Hewlett-Packard. Namun sistem operasi lain yang dipakai hampir secara pribadi dalam dunia akademis, untuk sistem operasi pendidikan atau untuk melaksanakan penelitian wacana konsep sistem operasi. Sebuah pola khas dari sistem yang memenuhi kedua kiprah tersebut yaitu MINIX, sedangkan untuk pola Singularity dipakai murni untuk penelitian.

Komponen

Komponen dari suatu sistem operasi semuanya ada untuk membuat bagian-bagian komputer yang berbeda bekerja bersama. Semua perangkat lunak — dari database keuangan hingga editor film — butuh sistem operasi untuk memakai perangkat keras, apakah itu sesederhana ibarat mouse atau keyboard atau kompleks ibarat koneksi internet.

Antarmuka pengguna (User Interface)

Setiap komputer yang mendapatkan semacam input dari insan membutuhkan user interface, yang memungkinkan seseorang untuk berinteraksi dengan komputer. Sementara perangkat ibarat keyboard, mouse dan touchscreen yaitu hardwarenya, user interface yaitu perangkat lunak untuk itu. Dua bentuk yang paling umum dari user interface mempunyai sejarah menjadi Command-line interface, di mana perintah komputer diketik baris demi baris, dan user interface grafikal, di mana lingkungan visual (paling sering dengan windows, tombol, dan ikon ) hadir dikala ini.

Gambar 12. Sebuah pola baris perintah. Setiap perintah diketik sesudah ‘prompt’, dan kemudian outputnya muncul di bawah. Perintah prompt dikala ini di belahan bawah.
(Perbesar)

Graphical User Interfaces (GUI)
Sebagian besar sistem komputer modern mendukung antarmuka pengguna grafikal/GUI, dan sering menyertakannya mereka. Dalam beberapa sistem komputer, ibarat implementasi orisinil dari Microsoft Windows dan Mac OS, GUI diintegrasikan ke dalam kernel .

Meskipun secara teknis GUI bukan layanan sistem operasi, menggabungkan dukungan untuk semuanya di dalam kernel sistem operasi sanggup memungkinkan GUI menjadi lebih responsif dengan mengurangi jumlah switch konteks yang dibutuhkan GUI untuk menjalankan fungsi outputnya. Sistem operasi lainnya yaitu 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 ibarat Windows Vista menerapkan subsistem grafis yang sebagian besar dalam user-space, namun versi graphics drawing routines antara Windows NT 4.0 dan Windows Server 2003 sebagian besar ada dalam ruang kernel. Windows 9x mempunyai sedikit perbedaan antara antarmuka dan kernel.

Gambar 13. Sebuah pola 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 sistem operasi komputer yang memungkinkan pengguna untuk menginstal atau membuat user interface yang mereka inginkan. Sistem Window X dalam hubungannya dengan GNOME atau KDE biasanya yaitu setup pada kebanyakan Unix dan sistem Unix-like (BSD, GNU/Linux, Solaris). Sejumlah pengganti shell Windows telah dirilis untuk Microsoft Windows, yang memperlihatkan alternatif termasuk shell Windows, tapi shell itu sendiri tidak sanggup dipisahkan dari Windows.

Banyak GUI berbasis Unix telah eksis dari waktu ke waktu, sebagian besar berasal dari X11. Kompetisi di antara banyak sekali vendor Unix (HP, IBM, Sun) mengakibatkan banyak fragmentasi, meskipun upaya untuk standarisasi pada 1990-an untuk COSE dan CDE gagal sebagian besar alasannya banyak sekali alasan, hasilnya redup oleh adopsi GNOME dan KDE. Sebelum toolkit berbasis perangkat lunak bebas yang dan lingkungan desktop, Motif merupakan kombinasi toolkit/desktop umum (dan merupakan dasar bagi CDE dikembangkan).

GUI berevolusi dari waktu ke waktu. Sebagai contoh, Windows telah merubah antarmuka pengguna mereka yang hampir setiap kali versi utama gres Windows dilepaskan, dan GUI Mac OS berubah secara dramatis dengan pengenalan Mac OS X pada tahun 1999.

Kernel
Dengan proteksi dari firmware dan driver perangkat , sistem operasi menyediakan tingkat yang paling dasar atas kontrol semua perangkat keras komputer. Ia mengatur jalan masuk memori untuk program-program di RAM, menentukan jadwal mana yang mendapatkan jalan masuk ke sumber daya perangkat keras, men-setup atau mereset state operasi CPU untuk pengoperasian yang optimal setiap saat, dan mengatur data untuk penyimpanan non-volatile jangka panjang dengan sistem file pada media ibarat 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 jadwal melibatkan penciptaan suatu proses oleh sistem operasi. Kernel membuat sebuah proses dengan menetapkan memori dan sumber daya lainnya, menetapkan prioritas untuk proses tersebut (dalam sistem multi-tasking), loading kode jadwal ke dalam memori, dan melaksanakan program. Program ini kemudian berinteraksi dengan pengguna dan/atau perangkat lain dan melaksanakan fungsi yang ditujukan.

Interupsi (Interrupts)
Interupsi yaitu sentra untuk sistem operasi, alasannya memberikan cara yang efisien untuk sistem operasi untuk berinteraksi dan bereaksi terhadap lingkungannya. Alternatifnya —sistem operasi “mengamati” banyak sekali sumber masukan bagi acara (polling) yang memerlukan tindakan — sanggup ditemukan dalam sistem yang lebih renta dengan tumpukan yang sangat kecil (50 atau 60 byte), tetapi tidak biasa dalam sistem modern dengan tumpukan cukup besar. Pemrograman berbasis interrupt secara langsung didukung oleh CPU yang paling modern. Interupsi memberikan sebuah komputer dengan cara menyimpan secara otomatis konteks register lokal, dan menjalankan kode tertentu dalam menanggapi event. Bahkan dasar komputer sangat mendukung hardware interrupts, dan memungkinkan programmer untuk menentukan kode yang sanggup dijalankan ketika event terjadi.

Ketika interrupt diterima, hardware komputer secara otomatis menghentikan jadwal apa pun yang sedang berjalan, menyimpan statusnya, dan menjalankan kode komputer sebelumnya yang terkait dengan interupsi; ini sanggup disamakan dengan menempatkan bookmark dalam sebuah buku dikala merespon panggilan telepon. Dalam sistem operasi modern, interrupt dihandel oleh kernel sistem operasi. Interupsi sanggup berasal dari salah satu perangkat keras komputer atau dari jadwal yang sedang bekerja.

Ketika sebuah perangkat keras memicu interupsi, kernel sistem operasi menetapkan bagaimana menangani event ini, secara umum dengan menjalankan beberapa kode pengolahan. Jumlah kode yang berjalan bergantung pada prioritas interrupt (misalnya: seseorang biasanya menanggapi alarm detektor asap sebelum menjawab telepon). Pengolahan interupsi perangkat keras yaitu kiprah yang biasanya didelegasikan kepada perangkat lunak yang disebut driver perangkat (device driver), yang sanggup berupa belahan dari kernel sistem operasi, belahan dari jadwal lain, atau keduanya. Device driver kemudian sanggup memberikan informasi untuk sebuah jadwal yang sedang berjalan dengan banyak sekali cara.

Program juga bisa memicu interrupt pada sistem operasi. Jika sebuah jadwal ingin mengakses hardware misalnya, sanggup meng-interrupt kernel sistem operasi, yang mengakibatkan kontrol kembali ke kernel. Kernel kemudian akan memproses seruan tersebut. Jika sebuah jadwal ingin sumber daya pemanis (atau ingin memberikan sumber daya) ibarat memori, ia akan memicu interrupt untuk mendapatkan perhatian kernel.

Mode terproteksi, modus supervisor, dan virtual mode
CPU Modern mendukung beberapa mode operasi. CPU yang mempunyai kemampuan ini memakai setidaknya dua mode: modus terproteksi dan mode supervisor. Mode supervisor dipakai oleh kernel sistem operasi tingkat rendah untuk tugas-tugas yang membutuhkan jalan masuk tidak terlarang terhadap perangkat keras, ibarat mengendalikan bagaimana memori ditulis dan dihapus, dan komunikasi dengan perangkat ibarat kartu grafis. Modus proteksi, sebaliknya, dipakai untuk hampir segala sesuatu yang lain. Aplikasi beroperasi dalam modus terproteksi, dan hanya sanggup memakai perangkat keras dengan berkomunikasi dengan kernel, yang mengendalikan segala sesuatu dalam mode supervisor. CPU mungkin mempunyai cara lain yang serupa dengan modus yang dilindungi juga, ibarat mode virtual untuk memalsukan jenis prosesor yang lebih tua, ibarat sebagai 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 berjalan dalam modus masing-masing.
(Perbesar)

Ketika komputer pertama kali dijalankan, maka secara otomatis akan berjalan dalam mode supervisor. Beberapa jadwal pertama berjalan di komputer, sebagai BIOS, bootloader dan sistem operasi mempunyai jalan masuk tak terbatas ke perangkat keras – dan ini dibutuhkan karena, berdasarkan definisi, menginisialisasi lingkungan yang dilindungi hanya sanggup dilakukan di luar. Namun, ketika sistem operasi melewati kontrol ke jadwal lain, hal itu menempatkan CPU ke dalam modus terproteksi.

Dalam modus terproteksi, jadwal mungkin mempunyai jalan masuk terbatas ke set isyarat CPU. Sebuah jadwal pengguna sanggup meninggalkan modus terproteksi hanya alasannya dipicu interrupt, mengakibatkan kontrol untuk kembali ke kernel. Dengan cara ini sistem operasi sanggup mempertahankan kontrol pribadi atas hal-hal ibarat perangkat keras dan jalan masuk ke memori.

Istilah “protected mode resource” biasanya merujuk kepada satu atau lebih register CPU, yang berisi informasi bahwa jadwal yang berjalan tidak diperkenankan untuk mengubahnya. Usaha-usaha untuk mengubah sumber daya ini biasanya mengakibatkan beralihnya ke modus supervisor, dimana sistem operasi sanggup menangani percobaan operasi ilegal jadwal ini (misalnya, dengan menutup jadwal tersebut).

Manajemen Memori
sebuah kernel sistem operasi multiprogramming harus bertanggung jawab untuk mengelola seluruh sistem memori yang sedang dipakai oleh program. Hal ini untuk memastikan bahwa jadwal tidak mengganggu memori yang sudah dipakai oleh jadwal lain. Ketika time share program, setiap jadwal harus mempunyai jalan masuk independen ke memori.

Manajemen memori kooperatif, dipakai oleh banyak sistem operasi terdahulu yang mengasumsikan bahwa semua jadwal memakai manajemen memori kernel secara sukarela, dan tidak melebihi memori yang dialokasikan untuk mereka. Sistem manajemen memori ini hampir tidak pernah terlihat lagi, alasannya jadwal sering mengandung bug yang sanggup mengakibatkan mereka melebihi batas penggunaan jatah memori yang dialokasikan. Jika suatu jadwal gagal sanggup mengakibatkan memori yang dipakai oleh satu jadwal atau lebih akan terpengaruh atau di-overwrite. Program jahat, atau virus sanggup dengan sengaja mengubah memori jadwal lain atau mungkin mempengaruhi operasi dari sistem operasi itu sendiri. Dengan manajemen memori kooperatif, hanya dibutuhkan satu jadwal berbuat jahat untuk membuat sistem crash.

Perlindungan memori memungkinkan kernel untuk membatasi proses mengakses ke memori komputer. Berbagai metode proteksi memori mulai eksis, termasuk segmentasi memori dan paging. Semua metode membutuhkan 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 harus sanggup diakses oleh jadwal yang sedang berjalan. Upaya untuk mengakses alamat lain akan memicu interrupt yang akan mengakibatkan CPU untuk memasukkan kembali modus supervisor, menempatkan kernel dalam komando. Ini disebut pelanggaran segmentasi atau seg-V untuk singkatnya, dan alasannya keduanya sulit untuk menentukan hasil yang bermakna untuk operasi semacam itu, dan alasannya biasanya merupakan tanda jadwal yang jahat, kernel secara umum akan berusaha untuk mengakhiri jadwal yang menyerang itu, dan akan melaporkan errornya.

Windows 3.1-Me mempunyai beberapa tingkat proteksi memori, namun program-program dengan gampang bisa menghindari kebutuhan untuk menggunakannya. Sebuah kesalahan proteksi umum yang diproduksi memperlihatkan pelanggaran segmentasi telah terjadi, namun sistem akan sering crash juga.

Memori virtual 
Penggunaan alamat memori virtual (seperti paging atau segmentasi) berarti kernel sanggup menentukan memori apa yang masing-masing jadwal sanggup memakai pada waktu tertentu, yang memungkinkan sistem operasi untuk memakai lokasi memori yang sama untuk banyak tugas.

Jika sebuah jadwal mencoba mengakses memori maka tidak dalam jangkauan memori yang sanggup diakses dikala ini, tapi tetap saja telah dialokasikan untuk itu, kernel akan diinterupsi dengan cara yang sama dikala jadwal ini melebihi memori yang dialokasikan. Dalam UNIX, interupsi semacam ini disebut sebagai page fault.

Gambar 16. Banyak sistem operasi sanggup “menipu” program menggunakan memori tersebar di seluruh hard disk dan RAM seperti itu yaitu salah satu potongan lanjutan memori yang disebut memori virtual.
(Perbesar)

Ketika kernel mendeteksi page fault umumnya akan menyesuaikan rentang memori virtual dari jadwal yang dipicu itu, memberikan jalan masuk ke memori yang diminta. Hal ini memberikan kernel kuasa kebebasan lebih dimana memori aplikasi tertentu disimpan, atau bahkan apakah ia telah benar-benar telah dialokasikan.

Dalam sistem operasi modern, memori yang lebih jarang diakses sanggup disimpan sementara pada disk atau media lain untuk membuat ruang yang disediakan untuk dipakai oleh jadwal lain. Ini disebut swapping, sebagai tempat memori yang sanggup dipakai oleh beberapa program, dan isi area memori sanggup ditukarkan atau dipertukarkan tergantung permintaan.

Multitasking
Multitasking mengacu pada menjalankan beberapa jadwal komputer independen pada komputer yang sama, memberikan kesan bahwa itu yaitu melaksanakan kiprah pada waktu yang sama. Karena kebanyakan komputer sanggup melaksanakan paling banyak satu atau dua hal pada satu waktu, ini biasanya dilakukan melalui time-sharing, yang berarti bahwa setiap jadwal memakai pembagian waktu komputer untuk mengeksekusi.

Sebuah kernel sistem operasi berisi belahan dari perangkat lunak yang disebut scheduler yang menentukan berapa banyak waktu yang akan dipakai untuk mengeksekusi setiap program, dan di mana urutan kontrol sanksi harus dilalui jadwal tersebut. Kontrol akan diteruskan ke proses oleh kernel, yang memungkinkan jadwal untuk jalan masuk ke CPU dan memori. Kemudian, kontrol dikembalikan ke kernel melalui beberapa mekanisme, sehingga jadwal 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 jadwal yang disebut multitasking kooperatif. Dalam model ini, ketika kontrol akan diteruskan ke jadwal oleh kernel, hal tersebut mengeksekusi selama yang diinginkan sebelum secara eksplisit mengembalikan kontrol ke kernel. Ini berarti bahwa jadwal yang berbahaya atau tidak berfungsi tidak hanya mencegah jadwal lain untuk memakai CPU, tetapi bisa membuat hang seluruh sistem jikalau memasuki sebuah loop tak terbatas.

Sistem operasi modern memperluas konsep hak seruan aplikasi (preemptive) untuk device driver dan kode kernel, sehingga sistem operasi mempunyai kontrol seruan terlebih dahulu atas internal run-times.

Filosofi tersebut mengatur multitasking seruan untuk memastikan semua jadwal diberikan waktu yang teratur pada CPU. Ini berarti bahwa semua jadwal harus dibatasi dalam berapa banyak waktu yang diizinkan untuk memakai CPU tanpa ada gangguan. Untuk mencapai hal ini, kernel sistem operasi modern memakai waktu interrupsinya. Sebuah timer modus proteksi diatur oleh kernel yang memicu kembali ke modus supervisor sesudah waktu yang ditentukan telah berlalu.

Pada banyak sistem operasi single user, multitasking kooperatif sangatlah cukup, komputer rumah umumnya menjalankan sejumlah kecil jadwal yang telah diuji dengan baik. Windows NT merupakan versi pertama Microsoft Windows yang menegaskan multitasking preemptive, tapi tidak mencapai pasar home user hingga Windows XP, (karena Windows NT ditargetkan pada para profesional.)

Akses disk dan sistem file
Akses ke data yang disimpan pada disk yaitu fitur utama dari semua sistem operasi. Komputer menyimpan data pada disk memakai file, yang terstruktur dengan cara tertentu untuk memungkinkan jalan masuk lebih cepat, keandalan yang lebih tinggi, dan membuat penggunaan lebih baik dari ruang drive yang tersedia. Cara khusus di mana file tersebut disimpan pada disk yang disebut sistem berkas (file system), dan yang memungkinkan file mempunyai nama dan atribut. Hal ini juga memungkinkan mereka untuk disimpan dalam hirarki direktori atau folder  yang diatur dalam sebuah pohon direktori.

Sistem operasi terdahulu umumnya mendukung satu jenis disk drive dan hanya satu jenis sistem file. File sistem sebelumnya sangat terbatas dalam kapasitas mereka, kecepatan, dan dalam jenis nama file dan struktur direktori yang bisa mereka gunakan. Keterbatasan ini sering mencerminkan keterbatasan dalam sistem operasi yang mereka rancang, sehingga sangat sulit bagi sebuah sistem operasi untuk mendukung lebih dari satu sistem file.

Gambar 17. Filesystem memungkinkan pengguna dan jadwal untuk mengatur dan menyortir file di komputer, seringkali melalui penggunaan direktori (atau “folder”)
(Perbesar)

Sementara banyak sistem operasi sederhana mendukung jangkauan yang terbatas pada pilihan untuk mengakses sistem penyimpanan, sistem operasi ibarat UNIX dan GNU/Linux mendukung teknologi yang dikenal sebagai sistem file virtual atau VFS (virtual file system). Suatu sistem operasi ibarat UNIX mendukung bermacam-macam perangkat penyimpanan, tanpa memperhatikan rancangan atau sistem file mereka yang akan diakses melalui antarmuka pemrograman aplikasi (API/application programming interface) umum. Hal ini membuat jadwal tidak perlu untuk mempunyai pengetahuan wacana perangkat yang mereka akses. sebuah VFS memungkinkan sistem operasi untuk menyediakan jadwal dengan jalan masuk yang tidak terbatas pada jumlah perangkat dengan banyak sekali sistem berkas yang tak terbatas yang terinstall melalui penggunaan device driver dan file driver sistem khusus.

Sebuah perangkat penyimpanan yang terhubung ibarat hard drive diakses melalui device driver. Driver perangkat memahami bahasa khusus drive dan bisa menerjemahkan bahasa tersebut menjadi bahasa standar yang dipakai oleh sistem operasi untuk mengakses semua drive disk. Pada UNIX, ini yaitu bahasa block device.

Ketika kernel mempunyai driver yang tepat di tempatnya, kemudian sanggup mengakses isi dari disk drive dalam format baku, yang mungkin berisi satu sistem file atau lebih. Sebuah driver sistem file dipakai untuk menerjemahkan perintah yang dipakai untuk mengakses setiap sistem file tertentu ke dalam satu set perintah standar yang sanggup dipakai sistem operasi untuk berbicara dengan semua sistem file. Program kemudian sanggup menangani sistem file berdasarkan nama file, dan direktori/folder, yang terkandung dalam struktur hirarkis. Mereka sanggup membuat, menghapus, terbuka, dan menutup file, serta mengumpulkan banyak sekali informasi tentangnya, termasuk hak akses, ukuran, ruang kosong, dan tanggal penciptaan dan modifikasi.

Berbagai perbedaan antara file sistem membuat dukungan semua sistem file menjadi sulit. Memperbolehkan huruf di nama file, case sensitive, dan adanya banyak sekali jenis atribut file membuat implementasi antarmuka tunggal untuk setiap sistem berkas menjadi kiprah yang menakutkan. Sistem operasi cenderung merekomendasikan memakai (dan juga dukungan native) sistem file yang khusus dirancang untuk mereka, misalnya, NTFS pada Windows dan ext3 dan ReiserFS di GNU/Linux. Namun, dalam prakteknya, drive pihak ketiga biasanya tersedia untuk memberikan dukungan untuk file yang paling banyak dipakai di sebagian besar sistem operasi sistem umum (misalnya, NTFS tersedia di GNU/Linux melalui NTFS-3g, dan ext2/3 dan ReiserFS tersedia dalam Windows melalui FS-driver dan rfstool ).

Dukungan untuk sistem file sangat bervariasi di antara sistem operasi yang modern meskipun ada beberapa sistem file umum yang hampir semua sistem operasi mendukung dan meliputi drivernya. Sistem operasi bervariasi pada dukungan sistem berkas dan pada format disk yang sanggup mereka instal. Dalam Windows setiap sistem file biasanya terbatas dalam aplikasi pada media tertentu, contohnya untuk CD harus memakai ISO9660 atau UDF, dan juga pada Windows Vista, NTFS yaitu file system yang hanya sanggup diinstal pada sistem operasi tersebut. Hal ini memungkinkan menginstal GNU/Linux ke banyak sekali jenis sistem file. Tidak ibarat sistem operasi lain, GNU/Linux dan UNIX memungkinkan sistem file apa saja sanggup dipakai tanpa memperhatikan media tempat 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 sebuah antarmuka untuk berkomunikasi dengan perangkat, melalui bus komputer tertentu atau komunikasi subsistem perangkat keras yang terhubung, memberikan perintah kepada dan/atau mendapatkan data dari perangkat, dan di ujung lain, dibutuhkan antarmuka untuk operasi sistem dan aplikasi perangkat lunak. Ini yaitu jadwal hardware-dependent komputer khusus yang mana juga membuat sistem operasi menentukan jadwal lain yang dijalankan, biasanya sistem operasi atau paket aplikasi perangkat lunak atau jadwal komputer yang berjalan dibawah kernel sistem operasi, untuk berinteraksi secara transparan dengan perangkat keras, dan biasanya menyediakan syarat kebutuhan penanganan interupsi untuk kebutuhan antarmuka perangkat keras time-dependent yang asinkron.

Tujuan kunci desain dari driver perangkat adalaha abstraksi. Setiap model perangkat keras (bahkan dalam kelas perangkat yang sama) yaitu berbeda. model yang lebih gres juga dirilis oleh produsen yang memberikan performa yang lebih handal atau lebih baik dan model-model gres sering dikontrol dengan cara yang berbeda. Komputer dan sistem operasi mereka tidak sanggup diharapkan untuk mengetahui bagaimana mengontrol setiap perangkat, baik kini dan di masa depan. Untuk mengatasi problem ini, sistem operasi dasarnya mendikte bagaimana setiap jenis perangkat harus dikontrol. Fungsi driver perangkat ini kemudian menerjemahkan perintah fungsi panggilan sistem operasi ke panggilan perangkat tertentu. Dalam teori perangkat baru, yang mana dikendalikan dengan cara baru, harus berfungsi dengan benar jikalau driver yang cocok tersedia. Driver gres ini akan memastikan bahwa perangkat muncul untuk beroperasi ibarat biasa dari sudut pandang sistem operasi.

Dalam versi Windows sebelum Vista dan versi Linux sebelum 2.6, semua sanksi driver yaitu kooperatif, yang berarti bahwa jikalau driver memasuki infinite loop akan membekukan sistem. revisi lebih gres dari sistem operasi ini menggabungkan kernel preemption, dimana kernel menginterrupt driver untuk memberikan tugas, dan kemudian memisahkan diri dari proses hingga mendapatkan respons dari device driver, atau memberinya lebih banyak kiprah untuk dilakukan.

Jaringan
Saat ini sebagian besar sistem operasi mendukung banyak sekali protokol, perangkat keras, dan aplikasi jaringan untuk mereka gunakan. Ini berarti bahwa komputer yang menjalankan sistem operasi berbeda sanggup berpartisipasi dalam jaringan umum untuk menyebarkan sumber daya ibarat komputer, file, printer, dan scanner baik memakai koneksi kabel atau nirkabel. Jaringan intinya sanggup memungkinkan sistem operasi komputer untuk mengakses sumber daya dari komputer remote untuk mendukung fungsi yang sama jikalau sumber daya tersebut terhubung langsung ke komputer lokal. Ini meliputi semuanya mulai dari komunikasi sederhana, untuk memakai sistem file jaringan atau bahkan menyebarkan grafis atau perangkat keras bunyi komputer lain. Beberapa layanan jaringan mengizinkan sumber daya dari komputer untuk diakses secara transparan, ibarat SSH yang memungkinkan pengguna jaringan mengakses langsung ke antarmuka baris perintah komputer.

Jaringan klien/server melibatkan sebuah jadwal pada komputer di suatu tempat yang terhubung melalui jaringan ke komputer lain, yang disebut server. Server memperlihatkan (atau host) banyak sekali layanan untuk komputer dan pengguna jaringan lainnya. Layanan ini biasanya diberikan melalui port atau access point yang telah dinomori melewati alamat jaringan server. Setiap nomor port biasanya dihubungkan dengan maksimum satu jadwal yang berjalank, yang bertanggung jawab untuk menangani seruan ke port tersebut. Sebuah daemon, dikala menjadi jadwal pengguna, pada gilirannya sanggup mengakses sumber daya perangkat keras lokal pada komputer tersebut dengan mengirimkan seruan ke kernel sistem operasi.

Banyak sistem operasi mendukung satu vendor tertentu atau lebih atau protokol jaringan terbuka, misalnya, SNA pada IBM sistem, DECnet pada sistem dari Digital Equipment Corporation, dan protokol khusus Microsoft (SMB) pada Windows. Protokol khusus untuk tugas-tugas tertentu mungkin juga didukung ibarat NFS untuk mengakses file. Protokol ibarat ESound, atau esd sanggup dengan gampang diperluas melalui jaringan untuk menyediakan bunyi dari aplikasi lokal, pada sound hardware sebuah sistem remote.

Keamanan
Sebuah komputer yang kondusif tergantung pada beberapa teknologi yang bekerja sebagaimana mestinya. Sebuah sistem operasi modern menyediakan jalan masuk ke sejumlah sumber daya, yang tersedia untuk perangkat lunak yang berjalan pada sistem, dan perangkat eksternal ibarat jaringan melalui kernel.

Sistem operasi harus bisa membedakan antara seruan yang harus diizinkan untuk diproses, dan lain-lain yang tidak boleh diproses. Sementara beberapa sistem hanya sanggup membedakan antara “hak istimewa” dan ” hak non-istimewa”, sistem umumnya mempunyai bentuk identitas pemohon, ibarat nama pengguna. Untuk membuat identitas mungkin ada proses otentikasi. Seringkali nama pengguna harus dikutip, dan masing-masing username mempunyai sebuah password. Metode lainnya untuk otentikasi, ibarat kartu magnetik atau data biometrik, mungkin dipakai sebagai gantinya. Dalam beberapa kasus, khususnya koneksi dari jaringan, sumber daya sanggup diakses tanpa otentikasi sama sekali (seperti membaca file melalui network share). Juga tercakup oleh konsep identitas pemohon yakni otorisasi; pelayanan dan sumber daya tertentu yang sanggup diakses oleh pemohon dikala login ke sistem yang terikat pada akun user pemohon atau pada banyak sekali kelompok konfigurasi user yang dimiliki pemohon.

Tambahannya untuk mengizinkan/melarang model keamanan, sistem dengan tingkat keamanan yang tinggi juga akan memperlihatkan pilihan audit. Hal ini akan memungkinkan pelacakan seruan untuk jalan masuk terhadap sumber daya (seperti, “siapa yang telah membaca file ini?”). Keamanan internal, atau keamanan dari jadwal yang sudah berjalan hanya memungkinkan jikalau semua seruan yang mungkin berbahaya harus dilakukan melalui interupsi ke kernel sistem operasi. Jika jadwal sanggup mengakses hardware secara langsung dan sumber daya, mereka tidak sanggup dijamin aman.

Keamanan eksternal melibatkan seruan dari luar komputer, ibarat login di konsol yang terhubung atau beberapa jenis koneksi jaringan. Permintaan eksternal sering melewati device driver ke kernel sistem operasi, di mana mereka sanggup dikirimkan ke aplikasi, atau dilakukan secara langsung. Keamanan sistem operasi telah usang menjadi perhatian alasannya data yang sangat sensitif berada pada komputer, baik yang bersifat komersial dan militer. Departemen Pertahanan Amerika Serikat (Department of Defense / DoD) membuat Trusted Computer System Evaluation Criteria (TCSEC) yang merupakan standar yang menetapkan persyaratan dasar untuk menilai efektivitas keamanan. Hal ini menjadi sangat penting untuk para pembuat sistem operasi, alasannya TCSEC dipakai untuk mengevaluasi, mengklasifikasi dan menentukan sistem komputer yang dipertimbangkan untuk pengolahan, penyimpanan dan pengambilan informasi sensitif atau rahasia.

Layanan jaringan meliputi penawaran ibarat file sharing, layanan cetak, email, situs web, dan file transfer protokol (FTP), sebagian besar yang sanggup membahayakan keamanan. Di garis depan keamanan yaitu perangkat keras yang dikenal sebagai firewall atau sistem intrusi deteksi/pencegahan. Pada tingkat sistem operasi, ada sejumlah firewall perangkat lunak yang tersedia, serta sistem intrusi deteksi/pencegahan. Sebagian besar sistem operasi modern menyediakan perangkat lunak firewall, yang diaktifkan secara default. Sebuah perangkat lunak firewall sanggup dikonfigurasi untuk mengizinkan atau menolak kemudian lintas jaringan ke atau dari layanan atau aplikasi yang berjalan pada sistem operasi. Oleh alasannya itu, seseorang sanggup menginstal dan menjalankan layanan yang tidak aman, ibarat Telnet atau FTP, dan tidak harus terancam oleh suatu pelanggaran keamanan alasannya firewall akan menolak semua kemudian lintas yang mencoba untuk menyambung ke layanan pada port tersebut.

Strategi alternatif, dan hanya taktik sandbox yang tersedia dalam sistem yang tidak memenuhi persyaratan virtualisasi Popek dan Goldberg, yaitu sistem operasi yang tidak menjalankan program-program pengguna sebagai kode native, tapi mengemulasikan prosesor atau menyediakan host untuk sistem berbasis kode-p ibarat Java.

Keamanan internal sangat relevan untuk sistem multi-user, yang memungkinkan setiap pengguna sistem untuk mempunyai file pribadi yang mana pengguna lain tidak sanggup merusak atau membacanya. Keamanan internal juga penting jikalau audit digunakan, alasannya jadwal bisa berpotensi mem-bypass sistem operasi, termasuk melewati audit.
Sistem operasi real-time

Sebuah sistem operasi real-time / waktu faktual (RTOS) yaitu sistem operasi multitasking yang ditujukan untuk aplikasi dengan tenggat waktu tetap (komputasi real-time). aplikasi tersebut termasuk beberapa sistem embedded kecil, mesin pengendali mobil, robot industri, pesawat ruang angkasa, kontrol industri, dan beberapa sistem komputasi skala-besar.

Contoh sistem operasi real-time skala besar sebelumnya yaitu sebuah Fasilitas Pengolahan Transaksi yang dikembangkan oleh American Airlines dan IBM untuk Sistem Reservasi Sabre Airline.

Sistem embedded mempunyai tenggat waktu yang tetap memakai sistem operasi real-time ibarat VxWorks, PikeOS, eCos, QNX, MontaVista Linux dan RTLinux. Windows CE yaitu sistem operasi real-time yang membagi API yang ibarat untuk desktop Windows, tetapi tidak membagi basis kode desktop Windows.

Beberapa sistem embedded memakai sistem operasi ibarat Symbian OS, Palm OS, BSD, dan GNU/Linux, walaupun sistem operasi tersebut tidak mendukung komputasi real-time.
Pengembangan hobi

Pengembangan sistem operasi yaitu salah satu dari banyak pilihan terlibat dan teknis untuk hobi komputasi. Sebuah sistem operasi hobi diklasifikasikan sebagai salah satu yang telah ditulis dari awal (tidak didasarkan pada sistem yang lain) dan mempunyai beberapa pengembang yang bekerja di waktu luang mereka. Pembangunan biasanya dimulai dengan sistem operasi yang ada. Hobi yaitu pengembangan mereka sendiri, atau mereka berinteraksi dalam sebuah kelompok individu yang relatif kecil dan tidak terstruktur yang mempunyai semua kesamaan situasi dengan basis kode yang sama. Contoh sebuah sistem operasi hobi termasuk Syllable dan ReactOS.
Keanekaragaman sistem operasi dan portabilitas

Perangkat lunak aplikasi umumnya ditulis untuk dipakai 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 berbeda oleh OS (nama-nama fungsi, makna argumen, dll) yang membutuhkan aplikasi untuk disesuaikan, diubah, atau dipertahankan.

Biaya dalam mendukung keragaman sistem operasi sanggup dihindari dengan menulis aplikasi terhadap platform perangkat lunak ibarat Java, atau Qt untuk web browser. Abstraksi ini telah menanggung biaya penyesuaian terhadap sistem operasi tertentu dan sistem library mereka.

Pendekatan lain yaitu untuk vendor sistem operasi untuk mengadopsi standar. Misalnya, POSIX dan lapisan abstraksi OS menyediakan kesamaan yang mengurangi biaya port.
Referensi

  1. ^ Stallings, p. 6.
  2. ^ Dhotre, p. 1
  3. ^ “Operating System Market Share“. Net Applications.
  4. ^ Hansen, pp. 4-7
  5. ^ “Global Web Stats“. W3Counter, Awio Web Services. September 2009. Retrieved 2009-10-24.
  6. ^ “Operating System Market Share“. Net Applications. October 2009. Retrieved November 5, 2009.
  7. ^ “Top 5 Operating Systems on October 09“. StatCounter. October 2009. Retrieved November 5, 2009.
  8. ^ “Operating System Share by Groups for Sites in All Locations January 2009“.
  9. ^ “Behind the IDC data: Windows still No. 1 in server operating systems“. ZDNet. 2010-02-26.
  10. ^ Poisson, Ken. “Chronology of Personal Computer Software“. Retrieved on 2008-05-07. Last checked on 2009-03-30.
  11. ^ “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.
author
Penulis: 
    Perbandingan Vista Sp 1 Dengan Xp Sp 3
    Perbandingan Vista Sp 1 Dengan Xp Sp 3
    Microsoft bekerja terus-menerus meningkatkan performa, keamanan, dan
    Mudahnya Menulis Tag Html Dalam Post Blogspot, Hanya Tinggal Klik !!
    Mudahnya Menulis Tag Html Dalam Post Blogspot, Hanya Tinggal Klik !!
    Sampai dikala ini bergotong-royong masih banyak orang
    Cara Menginstall Windows Xp (Fresh Installation)
    Cara Menginstall Windows Xp (Fresh Installation)
    Windows XP yakni jajaran sistem operasi berbasis
    Beberapa Tipe Baterai Yang Dipakai Untuk Gadget Anda
    Beberapa Tipe Baterai Yang Dipakai Untuk Gadget Anda
    Hambatan terbesar pada teknologi gadget ialah baterai.

    Komentar ditutup.

    Baca Juga×

    Top