Pendahuluan
Biasanya, istilah Sistem Operasi sering ditujukan kepada semua software yang masuk dalam satu paket dengan sistem komputer sebelum aplikasi-aplikasi software terinstall. Dalam Ilmu komputer,Sistem operasi atau dalam bahasa Inggris: operating system atau OS adalah perangkat lunak sistem yang bertugas untuk melakukan kontrol dan manajemen perangkat kerasn serta operasi-operasi dasar sistem, termasuk menjalankan software aplikasi seperti program-program pengolah kata dan browser web.
Secara umum, Sistem Operasi adalah software pada lapisan pertama yang ditempatkan pada memori 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
Kalau sistem komputer terbagi dalam lapisan-lapisan, maka Sistem Operasi adalah penghubung antara lapisan hardware dan lapisan software. Lebih jauh daripada itu, Sistem Operasi melakukan semua tugas-tugas penting dalam komputer, dan menjamin aplikasi-aplikasi yang berbeda dapat berjalan secara bersamaan dengan lancar. Sistem Operasi menjamin aplikasi software lainnya dapat menggunakan memori, melakukan input dan output terhadap peralatan lain, dan memiliki akses kepada sistem file. Apabila beberapa aplikasi berjalan secara bersamaan, maka Sistem Operasi mengatur skedule yang tepat, sehingga sedapat mungkin semua proses yang berjalan mendapatkan waktu yang cukup untuk menggunakan prosesor (CPU) serta tidak saling mengganggu.
Dalam banyak kasus, Sistem Operasi menyediakan suatu pustaka dari fungsi-fungsi standar, dimana aplikasi lain dapat memanggil fungsi-fungsi itu, sehingga dalam setiap pembuatan program baru, tidak perlu membuat fungsi-fungsi tersebut dari awal.
Sistem Operasi secara umum terdiri dari beberapa bagian:
- Kernel, yaitu inti dari sebuah Sistem Operasi
- Command Interpreter atau shell, yang bertugas membaca input dari pengguna
- Pustaka-pustaka, yaitu yang menyediakan kumpulan fungsi dasar dan standar yang dapat dipanggil oleh aplikasi lain
- Driver untuk berinteraksi dengan hardware eksternal, sekaligus untuk mengontrol mereka.
Sebagian Sistem Operasi hanya mengizinkan satu aplikasi saja yang berjalan pada satu waktu (misalnya DOS), tetapi sebagian besar Sistem Operasi baru mengizinkan beberapa aplikasi berjalan secara simultan pada waktu yang bersamaan. Sistem Operasi seperti ini disebut sebagai Multi-tasking Operating System (misalnya keluarga sistem operasi UNIX). Beberapa Sistem Operasi berukuran sangat besar dan kompleks, serta inputnya tergantung kepada input pengguna, sedangkan Sistem Operasi lainnya sangat kecil dan dibuat dengan asumsi bekerja tanpa intervensi manusia sama sekali. Tipe yang pertama sering disebut sebagai Desktop OS, sedangkan tipe kedua adalah Real-Time OS
Sebagai contoh, yang dimaksud sistem operasi itu antara lain adalah Windows, Linux, Free BSD, Solaris, palm, symbian, dan sebagainya.
SEJARAH PERKEMBANGAN SISTEM OPERASI
Menurut Tanenbaum, sistem operasi mengalami perkembangan yang sangat pesat, yang dapat dibagi
kedalam empat generasi:
• Generasi Pertama (1945-1955)
Generasi pertama merupakan awal perkembangan sistem komputasi elektronik sebagai pengganti
sistem komputasi mekanik, hal itu disebabkan kecepatan manusia untuk menghitung terbatas dan
manusia sangat mudah untuk membuat kecerobohan, kekeliruan bahkan kesalahan. Pada generasi ini
belum ada sistem operasi, maka sistem komputer diberi instruksi yang harus dikerjakan secara
langsung.
• Generasi Kedua (1955-1965)
Generasi kedua memperkenalkan Batch Processing System, yaitu Job yang dikerjakan dalam satu
rangkaian, lalu dieksekusi secara berurutan.Pada generasi ini sistem komputer belum dilengkapi
sistem operasi, tetapi beberapa fungsi sistem operasi telah ada, contohnya fungsi sistem operasi ialah
FMS dan IBSYS.
• Generasi Ketiga (1965-1980)
Pada generasi ini perkembangan sistem operasi dikembangkan untuk melayani banyak pemakai
sekaligus, dimana para pemakai interaktif berkomunikasi lewat terminal secara on-line ke komputer,
maka sistem operasi menjadi multi-user (di gunakan banyak pengguna sekali gus) dan
multi-programming (melayani banyak program sekali gus).
• Generasi Keempat (Pasca 1980an)
Dewasa ini, sistem operasi dipergunakan untuk jaringan komputer dimana pemakai menyadari
keberadaan komputer-komputer yang saling terhubung satu sama lainnya. Pada masa ini para
pengguna juga telah dinyamankan dengan Graphical User Interface yaitu antar-muka komputer yang
berbasis grafis yang sangat nyaman, pada masa ini juga dimulai era komputasi tersebar dimana
komputasi-komputasi tidak lagi berpusat di satu titik, tetapi dipecah dibanyak komputer sehingga
tercapai kinerja yang lebih baik.
Sistem Operasi saat ini
Sistem operasi-sistem operasi utama yang digunakan komputer sistem umum (termasuk PC, komputer personal) terbagi menjadi 3 kelompok besar:
- Keluarga Microsoft Windows - yang antara lain terdiri dari Windows Desktop Environment (versi 1.x hingga versi 3.x), Windows 9x (Windows 95, 98, dan Windows ME), dan Windows NT (Windows NT 3.x, Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows 7 (Seven) yang dirilis pada tahun 2009, dan Windows Orient yang akan dirilis pada tahun 2014)).
- Keluarga Unix yang menggunakan antarmuka sistem operasi POSIX, seperti SCO UNIX, keluarga BSD (Berkeley Software Distribution), GNU/Linux, MacOS/X (berbasis kernel BSD yang dimodifikasi, dan dikenal dengan nama Darwin) dan GNU/Hurd.
Sedangkan komputer Mainframe, dan Super komputer menggunakan banyak sekali sistem operasi yang berbeda-beda, umumnya merupakan turunan dari sistem operasi UNIX yang dikembangkan oleh vendor seperti IBM AIX, HP/UX, dll.
Layanan Sistem Operasi
Sebuah sistem operasi yang baik menurut Tanenbaum harus memiliki layanan sebagai berikut:
pembuatan program, eksekusi program, pengaksesan I/O Device, pengaksesan terkendali terhadap berkas
pengaksesan sistem, deteksi dan pemberian tanggapan pada kesalahan, serta akunting.
Pembuatan program yaitu sistem operasi menyediakan fasilitas dan layanan untuk membantu para
pemrogram untuk menulis program; Eksekusi Program yang berarti Instruksi-instruksi dan data-data harus dimuat ke memori utama, perangkat-parangkat masukan/ keluaran dan berkas harus di-inisialisasi,
serta sumber-daya yang ada harus disiapkan, semua itu harus di tangani oleh sistem operasi;
Pengaksesan I/O Device, artinya Sistem Operasi harus mengambil alih sejumlah instruksi yang rumit dan
sinyal kendali menjengkelkan agar pemrogram dapat berfikir sederhana dan perangkat pun dapat
beroperasi; Pengaksesan terkendali terhadap berkas yang artinya disediakannya mekanisme proteksi
terhadap berkas untuk mengendalikan pengaksesan terhadap berkas; Pengaksesan sistem artinya pada
pengaksesan digunakan bersama (shared system); Fungsi pengaksesan harus menyediakan proteksi
terhadap sejumlah sumber-daya dan data dari pemakai tak terdistorsi serta menyelesaikan konflik-konflik
dalam perebutan sumber-daya; Deteksi dan Pemberian tanggapan pada kesalahan, yaitu jika muncul
permasalahan muncul pada sistem komputer maka sistem operasi harus memberikan tanggapan yang
menjelaskan kesalahan yang terjadi serta dampaknya terhadap aplikasi yang sedang berjalan; dan
Akunting yang artinya Sistem Operasi yang bagus mengumpulkan data statistik penggunaan beragam sumber-daya dan memonitor parameter kinerja.
Layanan inti umum
Seiring dengan berkembangnya Sistem Operasi, semakin banyak lagi layanan yang menjadi layanan inti umum. Kini, sebuah OS mungkin perlu menyediakan layanan network dan koneksitas internet, yang dulunya tidak menjadi layanan inti umum. Sistem Operasi juga perlu untuk menjaga kerusakan sistem komputer dari gangguan program perusak yang berasal dari komputer lainnya, seperti virus. Daftar layanan inti umum akan terus bertambah.
Program saling berkomunikasi antara satu dengan lainnya dengan Antarmuka Pemrograman Aplikasi, Application Programming Interface atau disingkat dengan API. Dengan API inilah program aplikasi dapat berkomunikasi dengan Sistem Operasi. Sebagaimana manusia berkomunikasi dengan komputer melalui Antarmuka User,
program juga berkomunikasi dengan program lainnya melalui API.
Walaupun demikian API sebuah komputer tidaklah berpengaruh sepenuhnya pada program-program yang dijalankan diatas platform operasi tersebut.Contohnya bila program yang dibuat untuk windows 3.1 bila dijalankan pada windows 95 dan generasi setelahnya akan terlihat perbedaan yang mencolok antara window program tersebut dengan program yang lain.
Proses
Prosesor mengeksekusi program-program komputer. Prosesor adalah sebuah chip dalam sistem komputer yang menjalankan instruksi-instruksi program komputer. Dalam setiap detiknya prosesor dapat menjalankan jutaan instruksi.
Program adalah sederetan instruksi yang diberikan kepada suatu komputer. Sedangkan proses adalah suatu bagian dari program yang berada pada status tertentu dalam rangkaian eksekusinya. Di dalam bahasan Sistem Operasi, kita lebih sering membahas proses dibandingkan dengan program. Pada Sistem Operasi modern, pada satu saat tidak seluruh program dimuat dalam memori, tetapi hanya satu bagian saja dari program tersebut. Sedangkan bagian lain dari program tersebut tetap beristirahat di media penyimpan disk. Hanya pada saat dibutuhkan saja, bagian dari program tersebut dimuat di memory dan dieksekusi oleh prosesor. Hal ini sangat menghemat pemakaian memori.
Beberapa sistem hanya menjalankan satu proses tunggal dalam satu waktu, sedangkan yang lainnya menjalankan multi-proses dalam satu waktu. Padahal sebagian besar sistem komputer hanya memiliki satu prosesor, dan sebuah prosesor hanya dapat menjalankan satu instruksi dalam satu waktu. Maka bagaimana sebuah sistem prosesor tunggal dapat menjalankan multi-proses? Sesungguhnya pada granularity yang sangat kecil, prosesor hanya menjalankan satu proses dalam satu waktu, kemudian secara cepat ia berpindah menjalankan proses lainnya, dan seterusnya. Sehingga bagi penglihatan dan perasaan pengguna manusia, seakan-akan prosesor menjalankan beberapa proses secara bersamaan.
Setiap proses dalam sebuah sistem operasi mendapatkan sebuah PCB (Process Control Block) yang memuat informasi tentang proses tersebut, yaitu: sebuah tanda pengenal proses (Process ID) yang unik dan menjadi nomor identitas, status proses, prioritas eksekusi proses dan informasi lokasi proses dalam memori. Prioritas proses merupakan suatu nilai atau besaran yang menunjukkan seberapa sering proses harus dijalankan oleh prosesor. Proses yang memiliki prioritas lebih tinggi, akan dijalankan lebih sering atau dieksekusi lebih dulu dibandingkan dengan proses yang berprioritas lebih rendah. Suatu sistem operasi dapat saja menentukan semua proses dengan prioritas yang sama, sehingga setiap proses memiliki kesempatan yang sama. Suatu sistem operasi dapat juga merubah nilai prioritas proses tertentu, agar proses tersebut akan dapat memiliki kesempatan lebih besar pada eksekusi berikutnya (misalnya: pada proses yang sudah sangat terlalu lama menunggu eksekusi, sistem operasi menaikkan nilai prioritasnya).
Status Proses
Jenis status yang mungkin dapat disematkan pada suatu proses pada setiap sistem operasi dapat berbeda-beda. Tetapi paling tidak ada 3 macam status yang umum, yaitu:
- Ready, yaitu status dimana proses siap untuk dieksekusi pada giliran berikutnya
- Running, yaitu status dimana saat ini proses sedang dieksekusi oleh prosesor
- Blocked, yaitu status dimana proses tidak dapat dijalankan pada saat prosesor siap/bebas
Fungsi Dasar
Sistem komputer pada dasarnya terdiri dari empat komponen utama, yaitu perangkat-keras, program
aplikasi, sistem-operasi, dan para pengguna. Sistem operasi berfungsi untuk mengatur dan mengawasi
penggunaan perangkat keras oleh berbagai program aplikasi serta para pengguna.
Sistem operasi berfungsi ibarat pemerintah dalam suatu negara, dalam arti membuat kondisi komputer
agar dapat menjalankan program secara benar. Untuk menghindari konflik yang terjadi pada saat
pengguna menggunakan sumber-daya yang sama, sistem operasi mengatur pengguna mana yang dapat
mengakses suatu sumber-daya. Sistem operasi juga sering disebut resource allocator. Satu lagi fungsi
penting sistem operasi ialah sebagai program pengendali yang bertujuan untuk menghindari kekeliruan
(error) dan penggunaan komputer yang tidak perlu.
Tujuan Mempelajari Sistem Operasi
Tujuan mempelajari sistem operasi agar dapat merancang sendiri serta dapat memodifikasi sistem yang
telah ada sesuai dengan kebutuhan kita, agar dapat memilih alternatif sistem operasi, memaksimalkan
penggunaan sistem operasi dan agar konsep dan teknik sistem operasi dapat diterapkan pada
aplikasi-aplikasi lain.
Sasaran Sistem Operasi
Sistem operasi mempunyai tiga sasaran utama yaitu kenyamanan -- membuat penggunaan komputer
menjadi lebih nyaman, efisien -- penggunaan sumber-daya sistem komputer secara efisien, serta mampu
berevolusi -- sistem operasi harus dibangun sehingga memungkinkan dan memudahkan pengembangan,
pengujian serta pengajuan sistem-sistem yang baru.
PELAYANAN SISTEM OPERASI
- Eksekutif Program : meload program ke memory dan menajalankannya (run)
- Operasi I/O : pengguna tidak bisa mengontrol I/O secara langsung (untuk efisiensi dan keamanan, sistem harus bisa menyediakan mekanisme untuk operasi I/O
- Manipulasi sistem berkas: membaca, menulis, membuat, dan menghapus
- Komunikasi : pertukaran informasi, dapat dilakukan melalui shared memory atau messqage passing
- Deteksi error : mempertahankan kestabilan dengan mendeteksi error (pada CPU, perangkat keras memory, I/O, program pengguna) dan jika bisa, memperbaikinya
MACAM-MACAM SISTEM OPERASI
Berikut adalah beberapa contoh dari macam – macam sistem operasi :
No | Nama Sistem Operasi | Pengembang | Tahun |
1 | Nextstep | NeXT | 1985 |
2 | OPENSTEP | NeXT dan Sun Microsystems | 1993 |
3 | Mac OS 8 | Apple Inc. | 1997 |
4 | Mac OS 8.1 | Apple Inc. | 1998 |
5 | Mac OS 8.6 | Apple Inc. | 1999 |
6 | Mac OS 9 | Apple Inc. | 1999 |
7 | Mac OS X Hera | Apple Inc. | 1999 |
8 | Mac OS X Kodiak | Apple Inc. | 2000 |
9 | Mac OS X Cheetah | Apple Inc. | 2001 |
10 | Mac OS X Puma | Apple Inc. | 2001 |
11 | Mac OS X Jaguar | Apple Inc. | 2002 |
12 | Mac OS X Panther | Apple Inc. | 2003 |
13 | Mac OS X Tiger | Apple Inc. | 2005 |
14 | Mac OS X Leopard | Apple Inc. | 2007 |
15 | Mac OS X Snow Leopard | Apple Inc. | 2009 |
16 | MS-DOS | Microsoft Inc. | 1980 |
17 | Windows 1.0 | Microsoft Inc. | 1985 |
18 | Windows 2.0 | Microsoft Inc. | 1988 |
19 | Windows 3.0 | Microsoft Inc. | 1990 |
20 | Windows 3.1 | Microsoft Inc. | 1992 |
21 | Windows 95 | Microsoft Inc. | 1995 |
22 | Windows 98 | Microsoft Inc. | 1998 |
23 | Windows 98 SE | Microsoft Inc. | 1999 |
24 | Windows Me | Microsoft Inc. | 2000 |
25 | Windows 2000 | Microsoft Inc. | 2000 |
26 | Windows NT 3.5 | Microsoft Inc. | 1994 |
27 | Windows NT 3.5.1 | Microsoft Inc. | 1995 |
28 | Windows NT 4.0 | Microsoft Inc. | 1996 |
29 | Windows XP | Microsoft Inc. | 2001 |
30 | Windows Server 2003 | Microsoft Inc. | 2003 |
31 | Windows Vista | Microsoft Inc. | 2006 |
32 | Windows Home Server | Microsoft Inc. | 2007 |
33 | Windows Server 2008 | Microsoft Inc. | 2008 |
34 | Windows 7 | Microsoft Inc. | 2009 |
35 | Debian 5.0 “Lenny” | Debian Project | 1993 |
36 | Fedora 11 | Fedora Project | 2003 |
37 | Gentoo Linux 2008.0 | Gentoo Foundation | 2008 |
38 | Red Hat Linux | Red Hat | 1995 |
39 | Mandriva Linux 2009.1 | Mandriva | 2009 |
40 | openSUSE | openSUSE Project | 1994 |
41 | Slax 6 | Tomáš Matějíček | 2008 |
42 | Ubuntu | Canonical Ltd. / Ubuntu Foundation | 2004 |
43 | Solaris 1.x | Sun Microsystems | 1991 |
44 | Solaris 2.0 | Sun Microsystems | 1992 |
45 | Solaris 2.1 | Sun Microsystems | 1993 |
46 | Solaris 2.5 | Sun Microsystems | 1995 |
47 | Solaris 7 | Sun Microsystems | 1998 |
48 | Solaris 8 | Sun Microsystems | 2000 |
49 | Solaris 9 | Sun Microsystems | 2003 |
50 | Solaris 10 | Sun Microsystems | 2005 |
51 | Unix | AT&T Bell Labs | 1969 |
52 | Plan 9 from Bell Labs | Bell Labs | 1992 |
53 | Google Chrome OS | Google Inc. | 2009 |
REFERENSI
0 komentar:
Posting Komentar