29 | B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i
2.1 TUJUAN DAN FUNGSI SISTEM OPERASI
Sistem Operasi adalah suatu progam yang mengontrol eksekusi program
aplikasi dan berfungsi sebagai interfasce antara pengguna komputer dengan
hardware komputer.Sistem operasi memilki tiga tujuan:
Kemudahan : Sistem Operasi membuat komputer menjadi lebih mudah
dipakai
Efisiensi : Sistem Operasi memungkinkan sumber daya sistem komputr
untuk digunakan dengan cara yang efisiensien.
Kemampuan berkembang : Sistem operasi harus disusun sedemikian
rupa sehingga memungkinkan penyembangan yang efektif,penyujian,dan
penerapan fungsi-fungsi sistem baru tanpa mengganggu layanan yang
telah ada.
Sekarang kita akan membahas ketiga aspek sistem operasi satu per satu.
30 | B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i
sebagai mediator,yang membuatnya menjadi lebih mudah bagi pemrograman
dan program aplikasi dalam mengakses dan menggunakan fasilitas dan
layanan.
Gambar 2.1 Lapisan – Lapisan dan
Gambar sebuah Sistem Komputer
Pembuatan Program :
Sistem operasi menyediakan
berbagai fasilitas dan layanan,seperti
sebagai editor dan debugger, untuk
membantu para pemrograman dalam membuat program.
Eksekusi program : Beberapa diperlukan task untuk melakukan
eksekusi sebuah program.
Access ke perangkat I/O : Setiap perangkat I/O masing-masing
membutuhkan instruksinya sendiri atau signal control untuk operasi.
Access terkontrol ke file : Dalam hal file, kontrol harus mencakup
pengertian yang tidak hanya sifat perangkat I/O saja (disk drive,tape
drive),namun juga format file yang terdapat pada media penyimpanan.
Deteksi error dan respons : Bermacam-macam error dapat terjadi pada
saat sistem komputer bekerja.
Accounting : Sistem operasi yang baik akan mengumpulkan statistik
pemakaian bermacam-macam sumber daya dan memonitor parameter
kinerja,seperti waktu respons.
B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i | 31
Sistem operasi berfungsi dengan cara yang sama seperti software
komputer biasa yaitu merupakan sesuatu program yang dieksekusi oleh
prosesor .
Sering kali sistem operasi mengeluarkan kontrol dan harus bergantung
pada prosesor untuk memungkinkannya memperoleh kembali kontrol.
Gambar 2.2
Sistem Operasi Sebagai
Manajer Sumber Sistem
Komputer
Sistem operasi yang penting akan selalu berkembang dengan alasan berikut
ini :
32 | B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i
hardware paging. Versi-versi yang lebih baru telah dimodifikasi dengan
menggunakan kemampuan paging. Disamping itu, pemakaian terminal
grafis dan terminal mode halaman yang menggantikan terminal mode
baris gulung dapat berpengaruh terhadap rancangan sistem operasi.
Misalnya, terminal seperti itu memungkinkan pengguna melihat beberapa
aplikasi sekaligus pada saat yang bersamaan dengan menggunakan
“Window” yang terdapat dilayar. Kelihatannya perangkat keras
memerlukan dukungan sistem operasi yang canggih.
Layanan baru : Untuk menjawab kebutuhan para pengguna atau para
manajer sistem, sistem operasi menambah penawaran layanan baru.
Misalnya, apabila ditemukan kesulitan dalam menjaga kinerja yang baik
bagi pengguna dengan memakai tool yang telah ada, ukuran dan control
yang baru ditambahkan kesistem operasi. Contoh lainnya adalah aplikasi
baru yang memerlukan pengguna window pada layar peraganya. Feature
ini memerlukan upgrade sistem operasi besar-besaran.
Perbaikan : Setiap sistem operasi memiliki fault. Fault-fault ini ditemukan
dalam periode waktu tertentu dan kemudian dilakukan perbaikan. Tentu
saja, perbaikan ini dapat menyebabkan fault baru.
B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i | 33
A. Pengolahan Serial
Pada komputer lama, mulai sejak,mulai akhir 1940-an hingga pertengahan
1950-an, seseorang programmer berinteraksi lansuang dengan hardware
komputer pada saat itu belum ada sistem operasi mesin dijalankan dari
sebuah console, yang berisi peraga cahaya, switch,beberapa perangkat input
,dan printer.program yang berbentuk kode mesin dimuatkan melalui perangkat
input (misalnya pembaca kartu). Apabila sebuah error menghentikan program,
kesalahan itu diindikasikan dengan lampu. Untuk menentukan penyebab
error, pemograman dapat melanjutkan pemeriksaan register dan memori
utama. Apabila selanjutnya program dapat berakhir secara normal, output
akan ditampilkan pada printer.
Sistem lama memiliki dua masalah besar, sebagai berikut :
Scheduling (Penjadwalan) : Umumnya instalasi menggunakan formulir
pemesanan waktu mesin. Biasanya, seorang pengguna harus
mendaftarkan dirinya untuk memesan blok waktu yang merupakan
kelipatan setengah jam, dan seterusnya.
Set Up Time (Waktu Setel Awal) : Sebuah program tunggal, yang
disebut job, dapat mencakup pemuatan kompiler serta program bahasa
tingkat tinggi(program sumber) kedalam memori, penyimpanan program
yang telah decompile(program objek), dan kemudian pemuatan dan
penggabungan program objek dengan fungsi yang umum.
Mode operasi seperti itu dapat dianggap sebagai pengolahan serial, yang
menggambarkan kenyataan bahwa para pengguna memiliki akses ke
komputer secara seri.
34 | B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i
disempurnakan dan diimplementasikan pada IBM 704 oleh beberapa
pelanggan IBM. Pada awal 1960-an, sejumlah vendor telah berhasil membuat
sistem operasi batch untuk sistem komputernya.IRSYS, sistem operasi IBM
untuk komputer 7090/7094, cukup berhasil karena pengaruh luasnya sistem
lainnya.
Pada setiap job, ontruksi dimasukkan ke dalam bentuk primitif job control
language (JCL). JCL merupakan bahasa pemograman.
Khusus untuk menyediakan instruksi bagi monitor. Sebuah contoh sederhana
adalah instruksi seorang pengguna yang memberikan sebuah program yang
ditulis dalam FORTRAN dan beberapa data yang akan digunakan oeh
B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i | 35
program. Setiap instruksi dn setiap item data berada di dalam kartu berlubang
yang terpisah atau record pita yang terpisah. Disamping baris-baris
FORTRAN dan data,jop mencakup jop control instruktion,yang ditandai
dengan awalan $. Format keseluruhan jop akan terlihat seperti dibawah ini:
$JOB
$FTN
Intruksi- intruksi FORTRAN
$LOAD
$RUN
Data
$SEND
Fitur hardware lain yang juga dibutuhkan untuk merealisasikan system batch
ini adalah :
36 | B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i
Privileged instruction : instruksi-instruksi tertentu ditandai privileged dan
hanya isa dieksekusi oleh monitor.
Interrupt : model komputer lama tidak memiliki kemampuan ini. Feature
ini menyebabkan sistem menjadi lebih fleksibel dalam melepaskan
kontrolnya ke program pengguna dan memperoleh kembali kontrol
tersebut dari program pengguna.
B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i | 37
eksekusi,sampai intruksi I/O tersebut selesai sebelum melanjutkannya
kembali.
Tiga job, JOB1, JOB2, JOB3, diserahkan untuk dieksekusi pada saat yang
bersamaan,dengan atribut yang diberikan pada Tabel 2.1.
38 | B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i
Tabel2.2 Efek-efek Multi programming utilisasi Sumber Daya
Uniprograming Multiprograming
Pemakaian Prosesor 17% 33%
Pemakaian Memori 30% 67%
Pemakaian Disk 33% 67%
Pemakaian Printer 33% 67%
Waktu Berjalan 30 Menit 30 Menit
Kecepatan throughput 6Job/Jam 6Job/Jam
Waktu Respons Rata Rata 18 Menit 18 Menit
Seperti pada sistem batch sederhana, sistem batch multi- programming harus
mengandalkan feature tertentu hardware komputer. Feature tambahan
terpenting terpenting yang bermanfaat bagi multiprogramming adalah
hardware yang mendukung interrupt I/O dan DMA. Dengan menggunakan
B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i | 39
interrupt-driver I/O atau DMA, prosesor dapat memberikan perintah I/O ke
sebuah job dan dilanjutkan dengan melakukan eksekusi job lainya pada saat
I/O sedang ditangani oleh pengontrol perangkat.Apabila operasi I/O selesai,
prosesor diinterrupt dan control dipindahkan ke program interrupt-handling
yang terdapat di dalam sistem operasiKemudian sistem operasiKemudian
sistem operasi menyerahkan controlnya ke job lainnya.
D. Sistem Time-Sharing
40 | B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i
Dalam sebuah sistem time-sharing, beberapa pengguna secara bersamaan
mengakses sistem dengan melalui terminal, dengan sistem operasi yang
menggilirkan eksekusi setiap program pengguna dalam sebuah burst pendek
atau kuantum komputasi. Jadi apabila terdapat n orang pengguna yang
secara aktif meminta layanan sekaligus, setiap penggun hanya akan
merasakan rata-rata 1/n kecepatan komputer efektif, tidak terhitung overhead
sistem operasi
Namun dengan waktu reaksi manusia yang relatif lambat, waktu respons pada
sistem yang dirancang dengan baik akan sebanding dengan waktu reaksi
manusia pada komputer yang terdedikasi. Baik batch multiprogramming
maupun time sharing menggunakan multiprogramming, perbedaannya yng
menonjol dapat dilihat pada Tabel 2.3.
JOB1: 15.000
JOB2: 20.000
JOB3: 5.000
JOB4: 10.000
B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i | 41
Pada keadaan awal, monitor memuatkan JOB1 dan memindahkan control
kepadanya (Gambar 2.8.a). kemudian monitor mengambil keputusan untuk
memberikan control ke JOB2. Karena JOB2 memerlukan memori lebih banyak
dibandingkan dengan JOB1,JOB1 harus dikeluarkan terlebih dahulu dan
kemudian JOB2 dimuatkan(Gambar 2.8.b). setelah itu, JOB3 dimuatkan untuk
dijalaankan. Namun, karena JOB3 lebih kecil daripada JOB2, JOB2 masih
dapat dipertahankan di dalam memori utama, yang akan menguranngi waktu
penulisan disk (Gambar 2.8.c). selanjutnya monitor akan memindahkan
kontrolnya kembali JOB1. Ketika JOB4 dimuatkan, sebagian JOB1 dan
sebagian JOB2 yang tersisa di dalam memori utama dapat dipertahankan.
Disini apabila JOB1 atau JOB2 diaktivasi, diperlukan pemuatan sebagian job
tersebut saja. Hal ini mengharuskan JOB4 dan bagian JOB1 yang tetap
resident harus dikeluarkan dan bagian JOB2 yang tidak terdapat di dalam
memori utama akan dimuatkan.
Proses
Manajemen memori
Proteksi informasi dan keamanan
Penjadwalan dan manajemen sumber daya
Struktur sistem
42 | B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i
A. Proses
Konsep proses sangat penting struktur sistem operasi Istilah ini untuk pertama
kali digunakan oleh para perancang Multics pada 1960-an.Proses adalah
istilah yang lebih bersifat umum disbanding job.
Konsep di atas akan menjadi lebih jelas setelah kita melakukan pembahasan
lebih lanjut.
B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i | 43
secara berurutan, maka semakin tidak mungkin untuk melakukan analisis
terhadap seluruh kemungkinan event-event yang dapat terjadi. Apabila alat
untuk melakukan koordinasi dan kooperasi aktivitas yang sistematik tidak ada,
para perancang terpaksa menggunakan metode ad hoc yang didasarkan pada
pemahamannya tentang lingkungan yang harus dikontrol sistem
operasiUsaha tersebut cukup berbahaya terhadap adanya error yang tidak
terlihat dalam pemograman yang akibatnya hanya dapat diketahui apabila
terdapat aksi-aksi yang relatif jarang terjadi. Error seperti itu sangat sulit untuk
dideteksi dan sangat sulit untuk menentukan sebabnya karena kondisi yang
tepat yang menyebabkan error sangat sulit untuk ditirukan.
Secara umum terdapat empat sebab utama terjadinya error seperti itu.
44 | B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i
dan yang diperlukan prosesor untuk mengeksekusi proses secara benar. Jadi,
konteks meliputi isi bermacam-macam register prosesor, seperti program
counter dan register data. Konteks juga mencakup informasi penggunaan
pada sistem operasi, misalnya prioritas proses dan apakah suatu proses
sedang menunggu selesainya event I/O tertentu atau tidak.
Jadi proses direalisasikan sebagai suatu struktur data. Suatu proses dapat
dieksekusi atau menunggu dieksekusi. “Keadaan” keseluruhan proses itu
dimasukkan ke dalam konteksnya. Struktur ini memungkinkan
pengembangan teknik-teknik untuk menjamin koordinasi dan kooperasi
proses. Featur-featur baru dapat dirancang dan ditambahkan kedalam sebuah
B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i | 45
sistem operasi (misalnya, prioritas) dengan cara mengembangkan konteks
sehingga melibatkan informasi baru yang dibutuhkan untuk mendukung featur
itu
B. Manajemen Memori
46 | B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i
Isolasi proses: sistem operasi harus mencegah agar proses indenpenden
tidak saling menganggu data dan memori.
Alokasi otomatis dan manajemen: program harus secara dinamis
alokasikan ke hirarki memori apabila diperlukan.
Dukungan pemrograman modular: pemrograman harus mampu
membuat dan menghapus modul-modul program serta mengubah ukuran
modul secara dinamis.
Proteksi dan control acces: penggunaan memori secara bersama-sama,
pada sembarang tingkat hierarki memori, akan memungkinkan sebuah
program menunjuk ruang memori program lainnya.
Penyimpanan jangka lama: banyak pengguna dan aplikasi memerlukan
cara penyimpanan informasi dalam waktu yang relatif lama.
Gambar 2.10
Pengalamatan Memori
Virtual
B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i | 47
C. Proteksi imformasi dan keamanan
Tugas utama sistem operasi adalah untuk mengatur berbagai sumber daya
yang tersedia (memori utama, perangkat I/O, dan prosesor) dan untuk
menjadwalkan penggunaanya oleh berbagai proses aktif. Setiap kebijakan
alokasi sumber daya dan penjadwalan memperhatikan tiga faktorberikut ini:
48 | B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i
yang kelasnya sama, yaitu,job yang kebutuhannya samadan diberi nilai
yang sama.
Responsivitas Diferensial: sistem operasi perlu membedakan kelas-
kelas job-nya dengan persyaratan layanan yang berbeda.sistem
operasi harus berusaha untuk melakukan keputusan tentang alokasi
dan penjadwalan yang memenuhi persyaratan secara umum.
Efisiensi: didalam kendala keadilan dan efisiensi, sistem operasi harus
berusaha untuk memaksimalkan troughtput, meminimalkan waktu
respons, dan dalam kasus time-sharing, mengakomudasikan
pengguna secara mungkin.
B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i | 49
waktu giliran kepada setiap proses tersebut; cara ini dikenal sebagai teknik
round-robin. Tingkat prioritas juga dapat digunakan.
E. Struktur Sistem
Secara umum lapisan yang lebih rendah berkaitan dengan skala waktu yang
lebih pendek. Beberapa bagian sistem operasi harus berinteraksi langsung
dengan hardware komputer, yang event-eventnya dapat memiliki skala waktu
selama satu per miliar detik.
Arsitektur mikrokernel
50 | B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i
Multithreading
Multiprosesing simetris
Sistem operasi terdrisbusi
Rancanagn berorientasi objek
Arsitektur Mikrokernel. Sampai saat ini, sebagian besar sistem operasi beerfiture
kernel monolotik berukuran besar. Umumnya ynag dianggap fungsionalitas sistem
operasi disediakan di dalam kernel-kernel yang besar ini termasuk diantaranya
penjadwalan, sistem file, jaringan kerja, driver-driver perangkat, manajemen
memori dll. Arsitektur mikrokernel hanya meng assign beberapa fungsi penting
saja ke kernel, termasuk di antaranya ruang alamat, interprocess comunication
(IPC) dan penjadwalan dasar. Pendekatan mikrokernel menyedehanakan
implementasi,memberikan fleksibuilitas dan sangat cocok untuk lingkungan
terdistribusi.Pada dasrnya mikrokernel berinteraksi dengan proses server lokal
dan jauh (remote) dengan cara yang sama yan memebrikan fasiloitas
pembentukan sistem terdistribusi.
B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i | 51
1. Terdapat sejumlah mikroprosesor
2. Mikroprosesor tersebut menggunakan memori utama dan fasilotas i/o
sevara bersama-sama diinterkoneksikan oleh sebuah bus atau teknik
koneksi internal lainnya.
3. Semua prosesor dapat melakukan fungsi yang sama (makanya disebut
simetric)
52 | B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i
menyediakan ilusi ruang memori utama tunggal dan ruang memori sekunder
tunggal,ditambah fasilitas akses yang tergabung,seperti sistem file
terdistribusi.Walaupun cluster menjadi semaki populer dan terdapat banyak
produk cluster di pasaran,state of thew art sistem operasi tedistribusi tertinggal
oleh state of the art sistem operasi uni prosesor dan SMP.Kita akan membahas
sistem tersebut dibagian enam.
B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i | 53
REFERENSI UTAMA :
54 | B a b 2 . G a m b a r a n U m u m S i s t e m O p e r a s i