2.1 Pengertian Sistem Operasi Komputer
Secara umum, Sistem Operasi adalah software pada lapisan pertama yang ditaruh pada memori komputer pada saat komputer dinyalakan. Sedangkan software-software lainnya dijalankan setelah Sistem Operasi berjalan, dan Sistem Operasi akan melakukan layanan inti umum untuk software-software itu. Layanan inti umum tersebut seperti akses ke disk, manajemen memori, skeduling task, dan antar-muka user. Sehingga masing-masing software tidak perlu lagi melakukan tugas-tugas inti umum tersebut, karena dapat dilayani dan dilakukan oleh Sistem Operasi. Bagian kode yang melakukan tugas-tugas inti dan umum tersebut dinamakan
dengan "kernel" suatu Sistem Operasi.
Singkatnya OS membentuk suatu platform agar aplikasi-aplikasi dapat berjalan di atasnya.
2.2 Sejarah Sistem Operasi Komputer
Jika kita melakukan kilas balik sejarah OS, kita perlu mundur kurang lebih 60 tahun yang lalu. Apakah ada OS? Ternyata tidak, sebuah mesin dapat berjalan tanpa adanya OS, sebuah program dapat langsung dijalankan pada sebuah mesin. Setidaknya itu cara kerja yang banyak terdapat pada jaman mulai dikembangkannya komputer sekitar tahun 1950 (yang juga disebut dengan abstraksi hardware). Salah satu contoh program yang berjalan tanpa OS adalah CMOS Setup.
Pada tahun 1960-an, IBM mulai memperkenalkan komputer mainframe dengan OS OS/36. Diikuti dengan Unix yang dikembangkan pada tahun 1969 oleh sebuah grup karyawan dari AT&T.
Lompatan besar berikutnya ditandai dengan munculnya OS PC-DOS dan MS-DOS oleh IBM dan Microsoft. Apple Macintosh (sekrang Apple Inc) turut meramaikan suasanya dengan mengeluarkan Mac OS. Sementara itu OS Unix melahirkan pengembangan-pengembangan baru. Pada tahun 1991, Linus Torvalds memperkenalkan Linux. Microsoft dan secara konsisten terus mengeluarkan OS berbasis Windows, dengan produk-produk fenomenal seperti Windows 98, Windows NT, Windows XP, dan seterusnya. Hingga akhirnya, hari ini kita dapat menemukan pilihan OS yang cukup beragam, dan pilihan-pilihan tersebut bisa jadi semakin bertambah pada masa yang akan datang.
2.3 Macam-Macam Sistem Operasi
2.3.1 Windows
Keluarga OS Microsoft Windows merupakan OS yang popular untuk komputer desktop dan juga dapat digunakan sebagai server, seperti web server ataupun database server. Kelahiran Windows diawali dengan OS MS-DOS. Windows sendiri pada awalnya bukan merupakan OS, Windows versi 1.0, versi 2.x, dan versi 3.x, merupakan software 16 bit tambahan yang berjalan di atas OS MS-DOS atau variannya.
Versi selanjutnya Windows seperti Windows NT merupakan OS secara penuh yang tidak tergantung lagi pada sistem operasi MS-DOS.
Dengan berbasis kernel Windows NT inilah, Windows terus dikembangkan menghasilkan Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, dan Windows versi yang akan datang yang saat ini disebut dengan Windows 7.
2.3.2 Unix/Linux
OS keluarga Unix/Linux popular digunakan sebagai server dalam dunia bisnis, dan sebagai workstation dalam dunia pendidikan dan lingkungan engineering. Untuk penggunaan sebagai komputer desktop, OS Linux popular di kalangan developer dan beberapa komunitas. Beberapa varian Unix lainnya didesain berjalan hanya pada hardware vendor tersebut seperti AIX yang berjalan pada mesin IBM, dan HP-UX yang berjalan pada mesin Hewlett Packard. Varian lainnya seperti Solaris, dapat berjalan pada beragam jenis hardware, termasuk x86 dan PC.
Tersedia beragam distribusi (atau sering disebut distro) Linux, yang merupakan keluarga Unix. Beberapa pilihan distro adalah Red Hat, SuSE, Fedora, Ubuntu, Knoppix, dan lain sebagainya. Beberapa distro merupakan turunan dari distro lain. Mac OS X Dikeluarkan oleh Apple Inc, Mac OS X v10.5 dikenal dengan nama Leopard. Awalnya dikenal dengan nama Mac OS (tanpa X) yang diperkenalkan kali pertama pada tahun 2001. Karakter “X” sendiri berarti angka 10 dalam penomoran Romawi, yang dimaksudkan sebagai generasi penerus Mac OS versi sebelumnya yang dikenal dengan Mac OS 8 dan Mac OS 9. Tetapi, juga bukan kebetulan kalau Mac OS sebenarnya berbasis Unix karena menggunakan kernel BSD. Hal yang popular dalam Mac OS adalah tampilan GUI yang memikat, OS ini sendiri hanya diperuntukkan berjalan pada komputer Macintosh.
2.3.3 Embedded System
Jenis OS lainnya adalah embedded system, yaitu sistem komputer yang didesain secara khusus untuk keperluan tertentu. Pada embedded system yang sederhana, tidak ada perbe-daan antara sistem operasi dan aplikasi. Sebuah contoh embedded system adalah perangkat keras router, yang dilengkapi dengan elemen-elemen seperti micro-processor, RAM, dan flash memory di dalamnya.
2.4 Komponen Dasar Sistem Operasi
2.4.1 Managemen Proses
Proses adalah sebuah program yang sedang dijalankan (eksekusi). Suatu proses memerlukan sumber daya pada saat ekseskusi, misalnya berupa CPU Time, memori, berkas, dan peranti I/O.
Sistem operasi bertanggung jawab terhadap akhitfitas yang berhubungan dengan manajemen proses. Misalnya dalam hal:
a. Pembuatan dan penghapusan proses.
b. Penundaan dan pelanjutan proses.
c. Penyedia mekanisme untuk Sinkronisasi dan komunikasi antar proses, juga untuk penanganan Deadlock.
2.4.2 Managemen Memori Utama
Memori merupakan tempat penyimpanan intruksi atau data dari program. Umumnya main memori bersifat tidak permanen sehingga isinya akan hilang jika komputer dimatikan. Secara hirarkis, pemrosesan tercepat pada sistem komputer dilakukan di register, lalu CPU cache, Random Access Memory (RAM), dan terakhir adalah pada disk storage. Semuanya merupakan jenis memory yang harus dikelola OS. Perhatikan bahwa disk storage juga merupakan salah satu jenis memory, karena dapat digunakan sebagai virtual memory yang menangani proses-proses yang berjalan.
Sistem operasi bertanggung jawab untuk aktivitas berikut:
a. Melacak pemakaian memori (siapa dan berapa besar?)
b. Memilih program mana yang dapat di load ke memori ketika bisa digunakan.
c. Alokasi dan dealokasi memori sesuai yang dibutuhkan.
2.4.3 Managemen File
File atau berkas adalah kumpulan informasi yang berhubungan (sesuai dengan pembuatan file tersebut). Biasanya file atau berkas merepresentasikan program dan data.
Dalam managemen File, OS bertanggung jawab untuk:
a. Pembuatan dan penghapusan file.
b. Pembuatan dan penghhapusan direktori.
c. Mendukung primitif untuk manipulasi berkas dan direktori.
d. Memetakan file/berkas pada sisitem sekunder.
e. Backup berkas.
2.4.4 Managemen I/O
Sistem I/O terdiri dari:
a. Sistem buffer: menampung sementara data dari/ke piranti I/O.
b. Spooling: melakukan penjadwalan pemakaian I/O sistem supaya lebih efisien.
c. Antarmuka device-driver yang umum: menyediakan device driver yang umum agar sistem operasi dapat seragam (buka, baca, tulis, tutup).
d. Drivers untuk spesifik perangkat keras: menyediakan driver untuk melakukan operasi rinci/detail untuk perangkat keras tertentu.
2.4.5 Jaringan
Pada awal dikenalnya PC masalah jaringan bukanlah hal penting, tetapi saat ini sebuah komputer rasanya tidak lengkap tanpa adanya network card yang terpasang, ditambah lagi dengan penggunaan jaringan wireless yang praktis dan semakin banyak digunakan. Karena itu sebuah OS dewasa ini harus mampu menangani jaringan dengan dukungan berbagai macam protokol jarringan yang tersedia, terutama protokol TCP/IP yang saat ini paling banyak digunakan.
Dengan adanya jaringan juga memungkinkan komputer yang walaupun berbeda OS dapat berkomunikasi satu sama lain dan melakukan sharing resource.
2.4.6 Command-Interpreter System
Sistem operasi menunggu intruksi dari pengguna (Command driven). Program yang membaca intruksi dan mengartikan keinginan pengguna, umumnya disebut dengan Control-Card Interpreter, command-line Interpreter, dan UNIX shell.
Command-Interpreter sangat berfariasi dari sistem operasi yang satu ke sistem operasi yang lain dan disesuaikan dengan tujuan dan teknologi I/O peranti yang ada.
2.4.7 Sistem Proteksi (Security)
Erat kaitannya dengan jaringan, maka security juga merupakan hal penting yang harus dimiliki OS. Hal ini diakibatkan karena dengan adanya jaringan semakin mempermudah proses komunikasi dan distribusi file antarkomputer.
Dapat diibaratkan dengan adanya jaringan, maka komputer Anda seperti rumah dengan pintu dan jendela yang terbuka agar tamu dapat masuk berkunjung. Dalam keadaan seperti itu, perlu dijaga dari sisi keamanan agar tidak kedatangan tamu tak diundang, misalnya dengan memasang kawat nyamuk untuk mencegah nyamuk masuk. Implementasi “kawat nyamuk” ini di dalam OS dapat berupa otentifi kasi user, hak akses resource, penanganan port, dan firewall. Salah satu pendapat yang keliru menyangkut masalah security adalah kekebalan OS terhadap virus, jika saat ini mayoritas virus menyerang OS Windows, tidak berarti OS lain tidak dapat terkena virus.
Pada prinsipnya, virus sama dengan software biasa, karena itu jika virus diciptakan sesuai dengan target OS tertentu, maka jadilah virus tersebut sebuah aplikasi yang berjalan pada OS yang dituju, entah OS tersebut adalah Linux, Mac OS X, Windows, ataupun OS lainnya.
Lalu mengapa virus lebih banyak menyerang OS Windows? Hal ini tidak lepas dari market OS pada komputer desktop yang saat ini didominasi Windows, tetapi juga tidak dapat dipungkiri sistem operasi seperti Unix/Linux memiliki environment yang relatif lebih susah ditembus oleh virus, walau tidak berarti dijamin bebas virus.
2.5 Layanan Sistem Operasi
Layanan-layanan yang diberikan oleh sistem operasi antara lain:
- Eksekusi Program, yaitu meload program ke memori dan menjalankannya.
- Operasi I/O. Pengguna tidak bisa mengoprasikan I/O secara langsung, maka sistem operasi bisa menyediakan layanan atau mekanisme untuk menjalankan I/O.
- Manipulasi sistem berkas. Yang dimaksudkan adalah membaca, menulis, membuat dan menghabus file.
- Komunikasi: Pertukaran informasi dapat dilakukan melalui shared memori atau message passing.
- Deteksi error. Sistem operasi dapat mempertahankan sestabilan dengan mendekteksi error dan jika bisa, memperbaikinya.
- Alokasi sumber daya: mengalokasikan sumber daya kepada beberapa pengguna atau tugas yang dijalankan pada saat bersama.
- Accounting: menentukan berapa banyak dan berapa lama user menggunakan sumber daya sistem.
- Proteksi. Menjaga semua akses ke sumber daya sistem terkontrol.
2.6 Kernel
Istilah kernel sering digunakan pada OS Unix/Linux dan keluarganya, tetapi sebenarnya kernel digunakan dan terdapat dalam setiap OS. Apa yang disebut kernel itu sendiri merupakan komponen pusat yang menghubungkan antara software aplikasi dan hardware komputer. Di dalam OS, kernel merupakan core atau intinya. Secara arsitektur desain, kernel dibagi atas:
a. Monolithic Kernel. Mengintegrasikan banyak fungsi di dalam kernel serta menyediakan lapisan abstraksi hardware secara penuh.
b. Microkernel. Menyediakan sedikit fungsi dari abstraksi hardware dan menggunakan aplikasi yang berjalan di atasnya (server) untuk melakukan beberapa fungsi lainnya.
c. Hybrid Kernel. Microkernel yang dimodifi kasi, dengan tambahan fungsi-fungsi untuk meningkatkan performa.
d. Exokernel. Menyediakan abstraksi hardware secara minimal, sehingga program dapat mengakses hardware secara langsung.
2.7 Pertimbangan Dalam Pemilihan Sistem Operasi
OS sebagai sebuah bisnis software yang paling vital bagi pengguna komputer saat ini tidak pelak lagi merupakan sebuah bisnis dengan persaingan yang ketat. Timbul satu pertanyaan, yaitu OS apa yang paling cocok untuk diinstal, dengan adanya berbagai pilihan OS dan ketatnya kompetisi?
Permasalahan OS memang tidak terbatas menginstal dan mengganti OS, kecuali jika memang sudah menjadi tujuan Anda melakukan riset OS atau sekadar hobi. Tetapi untuk penggunaan jangka panjang, harus ada sederet pertimbangan penting dan krusial yang harus dipikirkan.
Beberapa pertimbangan antara lain adalah:
a. Kegunaan.
Kita akan mengambil sebuah contoh sederhana, seorang mahasiswa memutuskan untuk membeli komputer agar dapat berlatih dan mengerjakan tugas-tugas kuliah. Dalam hal ini, kegunaan atau fungsi komputer dan OS untuk mahasiswa tersebut tentunya harus disesuaikan dengan lingkungan kampus. Kegunaan yang berbeda mungkin akan terjadi jika seseorang bergerak di bidang desain dan grafik memutuskan membeli komputer, barang kali akan dibutuhkan GUI yang memikat. Sementara jika Anda membutuhkan seperangkat komputer dan OS dengan tingkat security yang tinggi seperti pembangunan web server, maka Anda akan fokus dengan hal-hal yang terkait dengan keamanan, patch, dan ancaman-ancaman dari luar.
b. Biaya
Kegunaan harus juga disesuaikan dengan biaya atau budget yang tersedia. Biaya tidak hanya diperhitungkan dalam jangka pendek seperti pembelian hardware dan software, tetapi juga untuk jangka panjang. Misalnya berapa biaya perawatan, pergantian, upgrade, training jika diperlukan, dan lain sebagainya.
c. Pengguna
Siapapun yang menggunakan OS dan komputer, pada awalnya selalu memerlukan proses belajar. Mungkin bukan suatu permasalahan jika penggunanya hanya satu atau beberapa orang, tetapi bayangkan sebuah kantor dengan ratusan karyawan tiba-tiba harus menggunakan OS dan aplikas yang baru. Adaptasi pengguna menimbulkan permasalahanwaktu yang digunakan untuk proses belajar dan adaptasi, tidak sebatas menggunakan, tetapi juga bagaimana menangani permasalahan-permasalahan yang dapat terjadi padalingkungan OS yang baru.
d. Dukungan
Bagi vendor dan pengembang OS, dukungan merupakan tugas vital yang perlu dipertahankan agar pengguna tetap merasa terjamin untuk terus menggunakan OS. Dukungan juga diperlukan dari pengembang-pengembang software, software dengan dukungan berbagai OS tentu memilik pangsa pasar yang lebih luas. Jelaslah bahwa memilih OS yang baru, entah dengan maksud membangun sistem dari awal ataupun migrasi, bukanlah ha mudah terutama untuk skala yang cukup besar. Tetapi dengan memahami OS dan pilihan-pilihannya, Anda telah memiliki dasar yang kuat untuk menentukan OS yang sesuai dengan kebutuhan Anda. Ada juga kalanya Anda memutuskan harus menggunakan dua atau lebih OS, pemecahannya bisa dengan menggunakan dua atau lebih unit komputer, ataupun menginstal dua atau lebih OS di dalam satu mesin komputer. Salah satu penyedia virtualization software adalah Vmware, yang mengizinkan Anda menginstal dan menjalankan berbagai OS pada satu fisik mesin komputer yang sama.
Tentu saja terdapat konsekuensi yang harus dibayar untuk mewujudkan hal tersebut, misalnya spesifikasi hardware yang relatif tinggi, dan kenyamanan Anda dalam menggunakan berbagai OS di dalam komputer yang sama.
sumber :
http://trisnowlaharwetan.wordpress.com/2008/10/11/perang-operating-system
http://id.wikipedia.org/wiki/Sistem_operasi
Bahan-bahan bab 2, konsep dasar sistem operasi.