Anda di halaman 1dari 16

BAB II

GAMBARAN UMUM

2.1. Sistem Operasi

2.1.1 Pengertian

Sistem operasi adalah suatu program yang mengontrol eksekusi

program aplikasi dan berfungsi sebagai interface antara pengguna

komputer dengan hardware komputer. Program sistem yang paling

penting adalah sistem operasi. Sistem operasi menyembunyikan detail

hardware dari pemrogram dan menyediakan interface yang mudah

bagi pengguna dalam menggunakan sebuah sistem.

2.1.2 Tujuan dan Fungsi Sistem Operasi

Sistem operasi berfungsi sebagai mediator, yang membuatnya

menjadi lebih mudah bagi pemrogram dan program aplikasi dalam

mengakses dan menggunakan fasilitas dan layanan. Secara umum

layanan tersebut meliputi bidang-bidang: pembuatan program,

eksekusi program, akses ke perangkat Input/Output (I/O), akses

terkontrol ke file, deteksi error dan respons, dan accounting.

Sedangkan tujuan sistem operasi adalah untuk kemudahan, efisiensi

dan kemampuan berkembang.

Komputer adalah kumpulan sumber daya yang berfungsi untuk

pemindahan, penyimpanan, dan pengolahan data serta untuk

mengontrol fungsi tersebut. Sistem operasi bertanggung jawab atas

10
11

pengaturan sumber daya tersebut dan memiliki mekanisme

kendali yang tidak biasa, yaitu :

1. Sistem operasi berfungsi dengan cara yang sama seperti software

komputer biasa, merupakan suatu program yang dieksekusi oleh

prosesor.

2. Sering kali sistem operasi mengeluarkan kontrol dan harus

bergantung pada prosesor untuk memungkinkannya memperoleh

kembali kontrol.

Seperti program komputer lainnya, sistem operasi memiliki

instruksi untuk prosesor. Perbedaan pentingnya adalah terdapat di

dalam tujuan programnya. Sistem operasi mengarahkan prosesor

dalam menggunakan sumber daya sistem lainnya dan dalam

pengalokasian eksekusi program lainnya.

Sebagian sistem operasi berada di dalam memori utama. Bagian

tersebut meliputi kernel dan nucleus, yang berisi fungsi-fungsi yang

paling sering dipakai dalam sistem operasi. Pada saat tertentu,

digunakan untuk menyimpan program lain dan data. Alokasi sumber

daya (memori utama) ini dikendalikan secara bersama oleh sistem

operasi dan hardware manajemen memori yang terdapat di dalam

prosesor. Sistem operasi membuat keputusan kapan suatu perangkat

I/O dapat digunakan oleh program yang sedang dieksekusi dan tujuan

akses kontrol dan pemakai file. Prosesor sendiri merupakan sumber


12

daya, dan sistem operasi harus menentukan jumlah waktu prosesor

yang diberikan kepada eksekusi program pengguna tertentu.

Sistem operasi yang penting akan selalu berkembang dengan

alasan: upgrade hardware serta hardware jenis baru, layanan baru,

dan perbaikan. Kebutuhan untuk mengubah suatu sistem operasi

menyebabkan persyaratan tertentu pada rancangannya. Dengan kata

lain konstruksi sistem harus bersifat modular, dengan interface antar

modul yang ditentukan secara jelas dan bahwa sistem harus

didokumentasikan dengan baik.

2.1.3 Evolusi Sistem Operasi

1. Pengolahan Serial

Pada komputer lama, mulai akhir 1940-an hingga

pertengahan 1950-an seorang pemrogram berinteraksi langsung

dengan hardware komputer; pada saat itu belum ada sistem operasi.

Mesin dijalankan dari sebuah console yang berisi peraga cahaya,

switch, beberapa jenis perangkat input dan printer. Sistem lama

memiliki dua masalah besar yaitu scheduling (penjadwalan) dan set

up time (waktu set up).

2. Sistem Batch sederhana

Mesin-mesin lama sangat mahal sehingga sangat penting

untuk memaksimalakan utilisasi. Waktu yang terbuang yang

diakibatkan penjadwalan dan waktu set up tidak dapat diterima.

Untuk meningkatkan utilisasi, dibuat konsep sistem operasi batch.


13

Konsep sistem operasi batch tersebut muncul saat pertama

kalinya pada pertengahan 1950-an. Inti gagasan yang berada di

balik teknik sistem operasi batch adalah penggunaan potongan

software yang dikenal sebagai monitor. Dengan menggunakan

sistem operasi seperti itu, pengguna tidak memiliki lagi akses

langsung ke mesin. Pengguna men-delegasi-kan job yang

tersimpan di dalam kartu atau pita kepada operator komputer yang

akan melakukan batch job itu secara sekuential dan menaruh

seluruh batch pada perangkat input yang akan digunakan oleh

monitor. Monitor menangani masalah penjadwalan. Suatu batch

job diantrikan dan job dieksekusi secepat mungkin, dengan tanpa

waktu idle. Pada setiap job, instruksi dimasukkan ke dalam bentuk

primitive Job Control Language (JCL). JCL merupakan bahasa

pemrograman khusus untuk menyediakan instruksi bagi monitor.

Monitor atau sistem operasi batch hanya merupakan program

komputer. Monitor mengandalkan kemampuan prosesor dalam

membaca instruksi berbagai bagian memori utama agar secara

bergantian mengambil dan melepaskan kendali. Untuk

menghindari chaos sistem operasi juga membutuhkan feature

hardware lain seperti: proteksi memori, timer, privileged

instructions dan interrupt.

Dengan memakai sistem operasi batch, waktu mesin secara

bergantian melakukan eksekusi program pengguna dan eksekusi


14

program monitor. Di sini terdapat dua pengorbanan: sebagin

memori utama diberikan kepada monitor dan sebagian waktu

mesin dipakai oleh monitor. Kedua pengorbanan tersebut

merupakan bentuk-bentuk overhead. Walaupun adanya overhead

tersebut, sistem batch sederhana akan meningkatkan utilisasi

komputer.

3. Sistem Batch Multiprogrammed

Walaupun dengan menggunakan pengurutan program secara

otomatik yang dihasilkan oleh sistem operasi batch sederhana,

prosesor masih sering berada dalam keadaan idle. Masalahnya

adalah perangkat-perangkat I/O cukup lambat apabila

dibandingkan dengan kecepatan prosesor.

Hal yang tidak efisien ini tidak perlu terjadi. diketahui bahwa

terdapat memori yang cukup untuk menampung sistem operasi

(resident monitor) dan sebuah program pengguna. Anggap terdapat

ruang untuk sistem operasi dan dua program pengguna. Sekarang,

pada saat sebuah job perlu menunggu I/O, prosesor dapat beralih

ke job lainnya, yang mempunyai kemungkinan besar tidak sedang

menunggu I/O. Selain itu, kita dapat memperbesar memori untuk

menampung tiga, empat, atau lebih program dan dapat beralih di

antara program-program itu. Proses tersebut dikenal sebgai

multiprogramming atau multitasking. Proses tersebut menjadi tema

utama sistem operasi modern.


15

Sistem operasi multiprogramming cukup canggih apabila

dibandingkan dengan sistem operasi tunggal atau uniprogramming.

Agar siap beroperasi, beberapa job itu harus selalu berada di

memori utama, yang memerlukan sejenis manajemen memori.

Apabila beberapa job berada dalam keadaan siap beroperasi,

prosesor harus mengambil keputusan job mana yang akan

beroperasi. Pengambilan keputusan ini memerlukan algoritma

penjadwalan.

4. Sistem Time-Sharing

Dengan menggunakan multiprogramming, pengolahan batch

dapat menjadi efisien. Akan tetapi untuk job yang jumlahnya

banyak, sangat diperlukan suatu mode di mana pengguna dapat

berinteraksi secra langsung dengan komputer. Saat ini, persyaratan

fasilitas komputasi interaktif dapat dipenuhi dengan pemakaian

micro computer terdedikasi.

Seperti halnya multiprogramming yang mengizinkan

prosesor untuk menangani beberapa batch job sekaligus,

multiprogramming dapat digunakan untuk menangani beberapa job

interaktif. Tekniknya dikenal sebagai time sharing, karena waktu

prosesor dapat dibagi-pakai oleh sejumlah pengguna. Dalam

sebuah sistem time-sharing, beberapa pengguna secara bersamaan

mengakses sistem dengan melalui terminal, dengan sistem operasi

yang mengilirkan eksekusi setiap program pengguna dalam sebuah


16

burst pendek atau kuantum komputasi. Baik batch multi-

programming maupun time-sharing menggunakan multi-

programming.

Time-sharing dan multiprogramming menimbulkan masalah

baru pada sistem operasi. Apabila terdapat sejumlah job di dalam

memori, job-job itu harus diproteksi agar tidak saling mengganggu

satu dengan yang lain, misalnya dengan saling mengubah data.

Untuk pengguna interaktif yang berjumlah banyak, sistem file

harus diproteksi sehingga hanya pengguna yang berhak memiliki

akses ke file tertentu.

2.1.4 Hasil-Hasil Utama

Sistem operasi merupakan salah satu software yang paling

kompleks. Kompleksitas ini menggambarkan tantangan untuk

mengatasi kesulitan dan dalam beberapa hal merupakan persaingan

agar dapat memenuhi tujuan-tujuan kemudahan, efisiensi, dan

kemampuan untuk berkembang. Terdapat lima buah perolehan

intelektual dalam pengembangan sistem operasi, yaitu:

1. Proses

2. Manajemen memori

3. Proteksi informasi dan keamanan

4. Panjadwalan dan manajemen sumber daya

5. Struktur sistem
17

Setiap perolehan di atas ditandai oleh prinsip-prinsip atau

abstraksi, yang dikembangkan untuk mengatasi masalah kesulitan

dalam praktik. Dengan menggabungkannya, kelima bidang tersebut

akan mendapatkan rancangan penting dan masalah-masalah

implementasi sistem operasi modern.

2.1.5 Karakteristik Sistem Operasi Modern

Selama beberapa tahun, telah terjadi evolusi gradual struktur

dan kemampuan sistem operasi. Namun, dalam beberapa tahun

terakhir ini sejumlah elemen-elemen rancangan yang baru telah

diperkenalkan baik ke dalam sistem operasi yang baru maupun versi

baru sistem operasi yang telah ada untuk membuat perubahan besar

dalam sifat sistem operasi. Salah satu di antara driver hardware yang

penting adalah mesin multiprosesor, yang kecepatannya sangat

meningkat, penyambungan jaringan kerja yang berkecepatan tinggi,

dan peningkatan ukuran bermacam-macam perangkat penyimpan

memori. Di bidang aplikasi, aplikasi multimedia, akses internet dan

web, dan komputasi client/server telah memberikan pengaruhnya

terhadap rancangan sistem operasi.

Kecepatan perubahan dalam kebutuhan akan sistem operasi

tidak hanya memerlukan modifikasi atau perbaikan arsitektur yang

telah ada saja, namun cara-cara baru dalam mengorganisasikan sistem

operasi. Berbagai pendekatan dan elemen rancangan telah dicoba baik

pada sistem operasi eksperimental maupun sistem operasi komersial.


18

Namun pendekatan dan elemen rancangan itu pada dasarnya dapat

digolongkan menjadi:

1. Arsitektur microkernel

2. Multithreading

3. Multiprocessing simetris

4. Sistem operasi terdistribusi

5. Rancangan berorientasi objek

Sampai saat ini, sebagian besar sistem operasi ber-feature kernel

monolitik berukuran besar. Umumnya apa yang dianggap sebagai

fungsionalitas sistem operasi disediakan dalam kernel-kernel yang

besar ini, termasuk di dalamnya penjadwalan, sistem file, jaringan

kerja, driver-driver perangkat, manajemen memori, dan lain-lain.

Layanan OS lainnya disediakan oleh proses, kadang-kadang disebut

server yang beroperasi pada mode pengguna dan diperlukan seperti

aplikasi lainnya oleh microkernel. Pendekatan microkernel

menyederhanakan implementasi, memberikan fleksibilitas dan sangat

cocok untuk lingkungan terdistribusi. Pada dasarnya, microkernel

berinteraksi dengan proses server local dan jauh (remote) dengan cara

yang sama, yang memberikan fasilitas pembentukan sistem

terdistribusi.

Inovasi yang terbaru dalam rancangan sistem operasi adalah

pemakaian teknologi berorientasi objek. Rancangan berorientasi objek

memberikan disiplin ke proses tentang penambahan pengembangan


19

modular ke kernel yang kecil. Pada tingkat sistem operasi, struktur

berbasis objek memungkinkan pemrogram untuk menyesuaikan

sistem operasi tanpa menganggu integritas sistem. Orientasi objek

juga memudahkan pembuatan tool terdistribusi dan sistem operasi

terdistribusi sangat besar.

2.2. Sejarah dan Perkembangan Sistem Operasi Linux

Sejarah Linux diawali dari pengembangan sistem yang bernama

UNIX oleh Ken Thompson dan Dennis Ritchie yang berasal dari AT&T

Bell Labs, pada tahun 1968. Karena tujuan UNIX adalah sistem operasi

yang multi user dan multi tasking, maka UNIX ditulis ulang dengan

menggunakan bahasa C (sebelumnya menggunakan bahasa B). Hal ini

memungkinkan untuk di-develop ke berbagai platform hardware tanpa perlu

harus menuliskan kode yang spesifik. Sehingga develop itu masih terus

bertahan sampai saat ini.

Bell melisensikan sistem operasi ini kebeberapa institusi, salah

satunya ke departemen Ilmu Komputer Universitas Berkeley California,

yang akhirnya menghasilkan beberapa cloning UNIX dengan kode BSD

(Berkeley Software Distribution) Professor Andrew Tanenbaum telah

mengembangan sistem operasi Unix yang dapat berjalan pada personal

computer (PC) yaitu MINIX (Mini UNIX). Namun sistem ini tidak

memiliki seluruh fungsi UNIX yang diinginkan mahasiswa saat itu,

terutama untuk mahasiswa bernama Linus Trovalds.


20

Linux muncul pada tahun 1991 yang dikembangkan oleh mahasiswa

yang bernama Linus Trovalds dengan tujuan membuat sistem operasi gratis

dengan kemapuan seperti UNIX tetapi kompatibel dengan PC. September

1991, Linux diluncurkan pertama kali dengan panjang source code 10.239

baris versi 0.01. Perkembangan berikutnya adalah versi 0.95 yang dianggap

rilis paling penting, karena mampu menjalankan X Windows System. Pada

tanggal 9 Mei 1996, TUX diresmikan sebagai maskot Linux yang dibuat

oleh Larry Ewing sesuai dengan pernyataan “Linus likes penguins”. Nama

TUX sendiri diambil dari Trovalds Unix untuk menghormati Linus Trovalds

sebagai pengembang Linux.

Pada awalnya Linux diluncurkan dibawah lisensi yang melarang

komersialitas. Tetapi pada perkembangannya, Linus Trovalds mengubah

lisensinya menjadi GNU General Public License (GPL). Lisensi

mengijinkan distribusi atau bahkan penjualan versi Linux yang sudah

dimodifikasi tetapi dengan catatan bahwa semua distribusi tersebut harus

dibawah lisensi GNU GPL dan harus dengan source code programnya.

Sistem Operasi Linux terus berkembang dan menempati sebagai OS

yang banyak diminati, Linux telah berhasil mendapatkan cukup banyak

popularitas karena fitur unik seperti perangkat lunak bebas dan mendukung

pengembangan sumber terbuka. Sistem operasi Linux adalah salah satu OS

populer digunakan dengan pengembangan open source pendukung

perangkat lunak gratis. Awalnya dirancang untuk mikroprosesor Intel 80386,


21

Linux sekarang berjalan pada berbagai arsitektur komputer dan telah

menyebar secara luas.

Kebanyakan perangkat lunak, aplikasi dan utilitas di dalam distribusi

Linux datang dari Free Software Foundation (FSF) dan proyek GNU.

Proyek GNU adalah usaha untuk menulis sistem operasi portabel dan

canggih yang menyerupai UNIX. Seperti yang disebutkan dalam sejarah

Linux diatas, apa yang dibangun oleh Linus hanyalah kernel pada Linux

tanpa dilengkapi perangkat lunak dan perangkat lain pada sistem operasi

Linux.

Linux sekarang merupakan alternatif sistem operasi yang jauh lebih

murah jika dibandingkan dengan sistem operasi komersial (misalnya

Windows). Linux mempunyai perkembangan yang sangat cepat. Hal ini

dapat dimungkinkan karena Linux dikembangkan oleh beragam kelompok

orang. Keragaman ini termasuk tingkat pengetahuan, pengalaman serta letak

geografis. Karena kernel Linux dikembangkan dengan usaha yang

independent, banyak aplikasi yang tersedia, sebagai contoh C Compiler

menggunakan gcc dari Free Software Foundation GNU’s Project. Compiler

ini banyak digunakan pada lingkungan Hewlett-Packard dan Sun.

Linux bisa didapatkan dalam berbagai distribusi (sering disebut

Distro). Distro adalah bundel dari kernel Linux, beserta sistem dasar Linux,

program instalasi, tools basic dan program-program lain yang bermanfaat

sesuai dengan tujuan pembuatan distro. Ada banyak sekali distro Linux,

diantaranya :
22

1. Debian, distribusi yang mengutamakan kestabilan dan kehandalan,

meskipun mengorbankan aspek kemudahan dan kemutakhiran program.

Debian menggunakan .deb dalam paket instalasi programnya.

2. Ubuntu, sistem operasi open source yang menggunakan Debian sebagai

fondasinya dan dirilis secara berkala (setiap enam bulan), fokus utama

sistem operasi Ubuntu adalah para pengguna dan kemudahan

penggunaan (sesuai dengan "Just Work" TM).

3. RedHat, distribusi yang paling populer, minimal di Indonesia. RedHat

merupakan distribusi pertama yang instalasi dan pengoperasiannya

mudah.

4. Slackware, merupakan distribusi yang pernah merajai di dunia Linux.

Hampir semua dokumentasi Linux disusun berdasarkan Slackware. Dua

hal penting dari Slackware adalah bahwa semua isinya (kernel, library

ataupun aplikasinya) adalah yang sudah teruji. Sehingga mungkin agak

tua tapi yang pasti stabil.

5. SuSE, distribusi yang sangat terkenal dengan YaST (Yet another Setup

Tools) untuk mengkonfigurasi sistem. SuSE merupakan distribusi

pertama dimana instalasinya dapat menggunakan bahasa Indonesia.

6. Mandrake, merupakan varian distro RedHat yang dioptimasi untuk

pentium. Komputer yang menggunakan pentium ke atas, umumnya

Linux bisa dijalankan lebih cepat dengan Mandrake.


23

7. WinLinux, distro yang dirancang untuk dipasang di atas partisi DOS.

Jadi untuk menjalankannya bisa di-klik dari Windows. WinLinux dibuat

seakan akan merupakan suatu program aplikasi under Windows.

2.3. Perbandingan Opensource dan Closesource

Kata opensource dikenal sejak tahun 1998 dalam sebuah rapat yang

diprakarsai oleh Netscape, yaitu perusahaan pengembang browser

Navigator. Sedangkan penggagasanya adalah Eric S. Raymond, Christine

Peterson, Todd Anderson, Larry Augustin, Jon Hall dan Sam Ockman

dengan pelopornya Richard Stallman.

Opensource adalah suatu sistem yang memberikan kode software

dalam dunia komputer khususnya dan teknologi informasi pada umumnya

yang memberikan kepada pengguna kode sumber dari software tersebut

sehingga orang lain bisa mengetahui dengan bahasa program apa software

tersebut dibuat dan apa kelebihan kekurangan dari software tersebut dengan

melihat kode yang ada. Sehingga dengan sistem ini akan menjadikan

software tersebut setidaknya sedikit sekali memiliki kekurangan

dikarenakan banyak yang melihat kode tersebut dan melakukan perbaikan

dan penyempurnaan.

Suatu program dengan lisensi opensource berarti program tersebut

membuka kode programnya untuk siapa saja yang ingin mempelajarinya,

caranya dengan menyatakan kode program kode program bersamaan dengan

distribusi paket program yang sudah jadi (hasil kompilasi). Dengan


24

pernyataan kode tersebut pengguna dapat melakukan modifikasi sesuai

keinginannya.

Program opensource tidak selalu tersedia gratis, ada juga biaya yang

harus dikeluarkan untuk membeli beberapa program yang dbutuhkan,

contoh dari beberapa program tersebut misalnya: Sistem Oprasi RedHat

Linux, program Linuxnya tetap harus dibeli dengan harga yang tidak terlalu

mahal.

Closesource adalah suatu program yang sangat tertutup untuk umum

sehingga orang lain tidak dapat mengetahui dengan apa program tersebut

dibuat dan bagaimana jika terjadi kesalahan pada software tersebut. Jika

terjadi kesalahan pada program, pengguna tersebut harus menghubungi

pihak yang bersangkutan dan tentu saja hal ini sangat mambuang waktu

yang lama dan membutuhkan biaya yang tidak sedikit.

Pada program closesource paket program tidak dapat didistribusikan

lagi selain oleh pembuat atau vendor dari program tersebut. Jika pun ada

yang mendistribusikan software tersebut maka dianggap sebagai

pembajakan software. Dengan kata lain closesource tidak dapat di

distribusikan secara bebas kecuali oleh vendor program tersebut. Sedangkan

software opensource dapat didistribusikan oleh siapapun dan dapat

digandakan secara bebas.


25

Berikut gambaran tentang software model pengembangan Opensource

dan model pengembangan Closesource :

Tabel 2.1 Model pengembangan Opensource dan Closesource software

Opensource Software Closesource Software

Bugs dan kelemahan software dapat Bugs dan kelemahan software

ditemukan dengan cepat. diketahui dari umpan balik dari

pengguna

Banyak tenaga yang terlibat Ada pihak tertentu sebagai

penanggung jawab software.

Tidak ada pihak tertentu yang terlibat Kualitas perbaikan software

sebagai penanggung jawab software. dijamin oleh pengembang

software

Programer cendrung untuk Tenaga ahli untuk masalah

menggunakan kode program untuk keamanan membutuhkan biaya

membangun sistem mereka sendiri. besar.

Informasi kelemahan software dapat Sulit untuk memberikan prioritas

diberikan kepada pihak luar. pada perbaikan yang harus

diberikan.

Anda mungkin juga menyukai