Pengertian Sistem Operasi
Sistem operasi merupakan sebuah penghubung antara
pengguna dari komputer dengan perangkat keras komputer. Sebelum ada sistem operasi, orang
hanya mengunakan komputer dengan menggunakan sinyal
analog dan sinyal digital. Seiring
dengan berkembangnya pengetahuan dan teknologi, pada saat ini terdapat berbagai
sistem operasi dengan keunggulan masing-masing. Untuk lebih memahami sistem
operasi maka sebaiknya perlu diketahui terlebih dahulu beberapa konsep dasar
mengenai sistem operasi itu sendiri.
Pengertian sistem operasi secara
umum ialah pengelola
seluruh sumber-daya yang
terdapat pada sistem komputer dan menyediakan sekumpulan layanan (system calls)
ke pemakai sehingga memudahkan dan menyamankan penggunaan serta pemanfaatan
sumber-daya sistem komputer.
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.
Layanan
Sistem Operasi
Sebuah
sistem operasi yang baik menurut Tanenbaum harus memiliki layanan sebagai
berikut :
1. Pembuatan
program, yaitu sistem operasi menyediakan fasilitas dan layanan untuk membantu para
pemrogram untuk menulis program
2. 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.
3. Pengaksesan
I/O Device, artinya Sistem Operasi harus mengambil
alih sejumlah instruksi yang rumit dan sinyal kendali menjengkelkan agar
pemrogram dapat berfikir sederhana dan perangkatpun dapat beroperasi
4. Pengaksesan
terkendali terhadap berkas pengaksesan sistem, deteksi dan pemberian tanggapan
pada kesalahan, serta akunting, yang artinya disediakannya
mekanisme proteksi terhadap berkas untuk mengendalikan pengaksesan terhadap
berkas.
5. 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.
6. 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.
7.
Akunting, yang artinya Sistem Operasi yang bagus
mengumpulkan data statistik penggunaan beragam sumber-daya dan memonitor
parameter kinerja.
Sistem Batch (Batch System)
Batch system adalah dimana job-job yang mirip
dikumpulkan dan dijalankan secara kelompok kemudian setelah kelompok yang
dijalankan tadi selesai maka secara otomatis kelompok lain dijalankan. jadi
dengan kata lain adalah teknologi proses komputer dari generasi ke-2. yang jika
suatu tugas sedang dikerjakan pada 1 rangkaian, akan di eksekusi secara
berurutan. Pada komputer generasi ke-2 sistem komputer nya masih belum
dilengkapi oleh sebuah sistem operasi. Namun, dalam beberapa fungsi sistem
operasi, seperti OS yang tengah berkembang pada jaman sekarang ini. Contohnya
adalah FMS ( Fortarn Monitoring System ) dan IBSYS. Jadi bisa disimpulkan,
bahwa komputer generasi ke-2 ini merupakan generasi pertama Sistem Operasi.
ada
2 cara dalam Batch System yaitu :
1. Resident Monitor
a. Operator bertugas mengatur urutan job
b. Job-job yg sama cukup dicetak sekali saja, cara inilah yg disebut
“Batch system”
Teknik pengurutan job secara manual begini akan
menyebabkan tingginya waktu menganggur
CPU. Muncul teknik pengurutan job otomatis yg mampu mentransfer secara otomatis
dari suatu proses ke proses lainnya.Program kecil dan bersifat residen dimemori
serta berisi urutan2 job yg akan berpindah secara otomatis, inilah “Resident
Monitor”
2. Overlap Operasi antara I/O dg
CPU
Off line Processing, data yg dibaca dari card reader
disimpan dulu dalam tape driver sebelum dibawa ke CPU, demikian pula informasi
yg mau dicetak, disimpan dulu di tape
Spooling adalah suatu program dapat dikerjakan walaupun
I/O masih mengerjakan proses lainnya dan disk secara bersamaan
menggunakan data untuk banyak proses.
Multiprogramming System
Multi programming system adalah dimana job-job
disimpan di main memory di waktu yang sama dan CPU dipergunakan bergantian. Hal
ini membutuhkan beberapa kemampuan tambahan yaitu : Penyediaan I/O routine oleh
sistem, Pengaturan memori untuk mengalokasikan memory pada beberapa Job,
penjadwalan CPU untuk memilih job mana yang akan dijalankan, serta
pengalokasian hardware lain.
Multiprogramming berarti meletakkan lebih dari sebuah
program di main memory. Cara ini dilakukan dengan membagi main memory menjadi
beberapa partisi. Tiap partisi akan menyimpan sebuah program. Foreground
partitions akan berisi program dengan prioritas yang lebih tinggi sedang
background partitions akan berisi program dengan prioritas yang lebih rendah.
Meskipun setiap proses merupakan Entitiy yang berdiri
sendiri, dan masing-masing memiliki program Counter dan status internal,
beberapa proses sering kali harus berinteraksi dengan proses yang lain.
Keluaran dari suatu proses dapat menjadi masukan bagi proses yang lain. Jika
proses yang sedang menunggu masukan tidak menemukan masukan yang dikehendaki,
proses tersebut diblok sampai masukan tersedia.
Pada saat proses diblok, secara logika proses tersebut
tidak dapat dilanjutkan karena menuggu masukan yang belum tersedia. Dapat
terjadi bahwa proses yang Ready dan dapat di-run terpaksa harus dihentikan
karena sistem operasi arus mengalokasikan CPU ke proses lain untuk sementara
waktu.
Proses dapat berada pada status
berikut:
1.
Submitt: Proses baru saja dikirimkan oleh user dan masih menunggu untuk
dilayani.
2.
Running: Proses benar-benar menggunakan CPU pada saat itu.
3.
Ready: Proses berhenti sementara untuk memberikan kesempatan pada proses lain
untuk menggunakan CPU.
4.
Blocked: Proses tidak dapat di-Run sampai terjadi kejadian eksternal yang
sesuai (misalkan selesainya operasi input/output atau telah tersedianya data
input).
5.
Finished: Proses telah dilaksanakan secara sempurna.
Di antara status Running, Ready
dan Blocked, hanya terdapat 4 kemungkinan perubahan status, yaitu:
1.
Running ke Blocked: Terjadi jika proses diblok, karena menunggu masukan atau
menunggu selesainya aktivitas I/O.
2.
Running ke Ready: Terjadi jika Process Scheduler menghentikan proses yang
sedang running untuk memberikan kesempatan pada proses lain menggunakan CPU.
3.
Blocked ke Ready: Terjadi jika ada kejadian eksternal yang menyebabkan proses
dapat dijalankan kembali. Misalnya datangnya input atau selesainya suatu
aktifitas I/O.
4.
Ready ke Running: Terjadi jika proses siap untuk menggunakan CPU dan masukan
yang sesuai untuk proses tersebut telah tiba.
Multitasking
Multitasking
adalah adalah pemrosesan beberapa tugas pada waktu yang bersamaan.
Dewasa ini, penggunaan time-sharing jarang digunakan,
dan digantikan dengan multitasking.
Contoh
sistem operasi jenis ini antara lain adalah linux. Linux adalah sistem operasi
yang multitasking dan multiuser seperti kebanyakan SO yang ada pada saat ini.
Multitasking pada linux artinya linux bisa atau mampu menjalankan beberapa
proses dalam waktu yang bersamaan.
Seperti contoh pada saat kita menjalan kan aplikasi
web browser kita juga bisa menjalankan aplikasi kompresi file. Sedangkan
multiuser pada linux adalah user bisa login ke dalam sistem secara bersamaan,
dengan artinya user bisa menggunakan satu sistem secara bersamaan dalam satu
waktu. Multitasking dan multiuser pada sistem operasi merupakan satu keharusan
dalam masa ini.
Keuntungan sistem ini adalah :
1.
Suatu perintah dapat dilaksanakan secara tuntas sampai berakhir dengan
prioritas tertinggi.
2.
Mampu memproses lebih dari satu perintah dalam waktu yang bersamaan.hal ini
dapat terjadi karena kemampuan membagi sumber daya yang tersedia. Jika suati
perintah datang membutuhkan sumber daya media simpan menyelesaikan perintah/pekerjaan
yang telah ditentukan, apabila datang perintah lain yang
membutuhkan sumber daya memori misalnnya, perintah tersebut dapat langsung dikerjakan
tanpa menunggu perintah sebelumnya selesai dierjakan.
Kelemahan dari sistem ini adalah jika terdapat banyak
perintah, maka akan terjadi antian perintah yang cukup panjang. Pengguna harus
menunggu perintah selesai dilaksanakan untuk memasukkan perintah selanjutnya.
Time Sharing System
Time-sharing adalah metode dimana banyak pengguna
dapat melakukan processing dalam satu komputer. atau sering juga di sebut
"Real time system" adalah suatu
sistem yang mengharuskan suatu komputasi selesai dalam jangka waktu tertentu.
Jika komputasi ternyata belum selesai maka sistem dianggap gagal dalam
melakukan tugasnya.
Christopher Strachy pada tahun 1959 telah memberikan
ide mengenai pembagian waktu yang dilakukan oleh CPU. Baru pada tahun 1961,
pertama kali sistem yang benar-benar berbentuk time sharing system dilakukan di
MIT (Massachusetts Institute of Technology) dan diberi nama CTSS (Compatible
Time Sharing System) yang bisa melayani sebanyak 8 pemakai dengan menggunakan
omputer IBM 7090. Pada TSS tiap-tiap User dilayani oleh komputer dengan
bergiliran dalam waktu yang sangat cepat. Sehingga tiap pemakai komputer tidak
merasa bahwa komputer melayani beberapa pemakai sekaligus secara bergiliran.
Contoh penggunaan Time Sharing
System :
Salah satu penggunaan time sharing system ini dapat
dilihat dalam pemakaian suatu teller terminal pada suatu bank. Bilamana seorang
nasabah datang ke bank tersebut untuk menyimpan uang atau mengambil uang, maka
buku tabungannya ditempatkan pada terminal. Dan oleh operator pada terminal
tersebut dicatat melalui papan ketik (keyboard), kemudian data tersebut dikirim
secara langsung ke pusat komputer, memprosesnya, menghitung jumlah uang seperti
yang dikehendaki, dan mencetaknya pada buku tabungan tersebut untuk transaksi
yang baru saja dilakukan. 
silahkan di coret di sini gan !!!
BalasHapus