Bagian I Konsep Dasar Perangkat Komputer
Komputer modern merupakan sistem yang kompleks. Secara fisik, komputer tersebut
terdiri dari
beberapa bagian seperti prosesor,
memori, disk, pencetak (printer), serta perangkat lainnya.
Perangkat keras tersebut
digunakan untuk menjalankan berbagai perangkat lunak aplikasi (software
aplication). Sebuah sistem
operasi merupakan perangkat lunak penghubung antara perangkat keras
(hardware) dengan perangkat lunak aplikasi
tersebut
Bagian I, “Konsep Dasar Perangkat
Komputer, menguraikan secara umum
komponen-komponen komputer
seperti sistem operasi, perangkat keras, proteksi, keamanan, serta
jaringan komputer. Aspek-aspek
tersebut diperlukan untuk memahami konsep-konsep sistem
operasi yang akan dijabarkan
dalam buku ini. Tentunya tidak dapat diharapkan pembahasan yang
dalam. Rincian lanjut, sebaiknya
dilihat pada rujukan yang berhubungan dengan "Pengantar
Organisasi Komputer", Pengantar
Struktur Data", serta "Pengantar Jaringan Komputer". Bagian II,
“Konsep Dasar Sistem Operasi”
akan memperkenalkan secara umum seputar sistem operasi. Bagian
selanjutnya, akan menguraikan yang lebih rinci dari
seluruh aspek sistem operasi.
Bab 1. Sejarah Perkembangan
Sebuah sistem komputer dapat
dibagi ke dalam beberapa komponen utama, seperti "para pengguna",
"perangkat keras",
serta "perangkat lunak", "Para pengguna" (users) ini
merupakan pihak yang memanfaatkan sistem komputer tersebut. "Perangkat
keras" (hardware) ini berbentuk benda konkret yang dapat
dilihat dan disentuh. Diantara
"para pengguna" dan "perangkat keras" terdapat sebuah
lapisan abstrak yang disebut dengan "perangkat lunak" (software).
Secara keseluruhan, perangkat lunak membantu para pengguna untuk memanfaatkan
sumber daya komputasi yang disediakan perangkat keras
.
Perangkat lunak secara garis
besar dibagi lagi menjadi dua yaitu "program aplikasi" dan
"sistem
operasi"."Program
aplikasi" merupakan perangkat lunak yang dijalankan oleh para pengguna
untuk
mencapat tujuan tertentu.
Contohnya kita menjelajah internet dengan menggunakan aplikasi
"Browser".Sedangkan,
"sistem operasi" dapat dikatakan merupakan sebuah perangkat lunak
yang "membungkus" perangkat keras agar lebih mudah dimanfaatkan oleh
para pengguna melalui program-program aplikasi tersebut.
Pengertian dari sistem operasi
dapat dilihat dari berbagai sudut pandang. Dari sudut pandang pengguna, Sistem
operasi berada di antara perangkat keras komputer dan perangkat aplikasinya. Secara
lebih rinci, sistem operasi didefinisikan sebagai sebuah program yang mengatur
perangkat keras komputer, dengan menyediakan landasan untuk aplikasi yang
berada di atasnya, serta bertindak sebagai penghubung antara para pengguna
dengan perangkat keras. Sistem operasi bertugas untuk mengendalikan (kontrol)
serta mengkoordinasikan pengunaan perangkat keras untuk berbagai program
aplikasi untuk bermacam-macam pengguna. Dengan demikian, sebuah sistem operasi bukan
merupakan bagian dari perangkat keras komputer, dan juga bukan merupakan
bagian dari perangkat lunak aplikasi komputer, apalagi tentunya bukan merupakan
bagian dari para pengguna komputer.
sistem operasi merupakan sebagai
alat untuk mempermudah penggunaan komputer.
Dalam hal ini sistem operasi seharusnya
dirancang dengan mengutamakan kemudahan penggunaan,
dibandingkan mengutamakan kinerja
atau pun utilisasi sumber daya. sistem operasi dapat dipandang sebagai alat
untuk memaksimalkan penggunaan sumber daya komputer. Akan tetapi pada sejumlah komputer, sudut
pandang pengguna dapat dikatakan hanya sedikit atau tidak ada sama sekali.
Misalnya embedded computer pada peralatan rumah tangga seperti
mesin cuci dan sebagainya mungkin saja memiliki lampu indikator untuk
menunjukkan keadaan sekarang, tetapi sistem operasi ini dirancang untuk bekerja
tanpa campur tangan pengguna.
Dari sudut pandang sistem, sistem
operasi dapat dianggap sebagai alat yang menempatkan sumber
daya secara efisien (Resource
Allocator). Sistem operasi juga mengatur eksekusi
aplikasi dan operasi dari alat
M/K (Masukan/Keluaran). Fungsi ini dikenal juga sebagai program
pengendali (Control Program).
Lebih lagi, sistem operasi merupakan suatu bagian program yang
berjalan setiap saat yang dikenal
dengan istilah kernel.
Dari sudut pandang tujuan sistem
operasi, sistem operasi dapat dipandang sebagai alat yang
membuat komputer lebih nyaman
digunakan (convenient) untuk menjalankan aplikasi dan
menyelesaikan masalah pengguna.
Tujuan lain sistem operasi ialah membuat penggunaan sumber
daya komputer menjadi efisien.
Dapat disimpulkan, bahwa sistem
operasi merupakan komponen penting dari setiap sistem
komputer. Akibatnya, pelajaran
"sistem operasi" selayaknya merupakan komponen penting dari
sistem pendidikan berbasis
"ilmu komputer".Struktur dari sebuah sistem operasi sangat tergantung
pada perangkat keras yang pertama kali digunakan untuk mengembangkannya.
Sedangkan perkembangan perangkat keras sangat dipengaruhi dari hal-hal yang
diperlukan oleh sebuah sistem operasi.
Arsitektur
perangkat keras komputer tradisional terdiri dari empat komponen utama yaitu "Prosesor",
"Memori Penyimpanan", "Masukan" (Input), dan
"Keluaran" (Output). Model tradisional tersebut sering dikenal
dengan nama arsitektur von Neumann, Pada saat awal, komputer berukuran sangat
besar sehingga komponen komponennya dapat memenuhi sebuah ruangan yang sangat
besar.
Sistem operasi telah berkembang
selama lebih dari 40 tahun dengan dua tujuan utama. Pertama,
sistem operasi mencoba mengatur
aktivitas-aktivitas komputasi untuk memastikan pendayagunaan
yang baik dari sistem komputasi
tersebut. Kedua, menyediakan lingkungan yang nyaman untuk
pengembangan dan jalankan dari program.
Bagian II Konsep Dasar Sistem Operasi
Tidak semua sistem operasi mempunyai
struktur yang sama. Namun menurut Avi Silberschatz,
Peter Galvin, dan Greg Gagne,
umumnya sebuah sistem operasi modern mempunyai komponen
sebagai berikut:
• Managemen Proses.
• Managemen Memori Utama.
• Managemen Berkas.
• Managemen Sistem Masukan/Keluaran.
• Managemen Penyimpanan Sekunder.
• Sistem Proteksi.
• Jaringan.
• Command-Interpreter System.
Sedangkan menurut A.S. Tanenbaum,
sistem operasi mempunyai empat komponen utama, yaitu:
• Managemen proses,
• Masukan/Keluaran
• Managemen Memori, dan
• Sistem Berkas.
- Managemen Proses
Proses adalah sebuah program yang
sedang dieksekusi. Sebuah proses membutuhkan beberapa
sumber daya untuk menyelesaikan
tugasnya. Sistem operasi mengalokasikan sumber daya-sumber daya tersebut saat
proses itu diciptakan atau sedang diproses/dijalankan.
Sistem operasi bertanggung-jawab
atas aktivitas-aktivitas yang berkaitan dengan managemen proses
seperti:
• Membuat dan menghapus proses
pengguna dan sistem proses.
• Menunda atau melanjutkan
proses.
• Menyediakan mekanisme untuk
proses sinkronisasi.
• Menyediakan mekanisme untuk
proses komunikasi.
• Menyediakan mekanisme untuk
penanganan deadlock.
- Managemen Memori Utama
Memori utama atau lebih dikenal
sebagai memori adalah sebuah array yang besar dari word atau
byte, yang ukurannya
mencapai ratusan, ribuan, atau bahkan jutaan. Memori utama termasuk tempat
penyimpanan data yang yang bersifat volatile -- tidak permanen -- yaitu data
akan hilang kalau komputer dimatikan.
Sistem operasi bertanggung-jawab
atas aktivitas-aktivitas yang berkaitan dengan managemen
memori seperti:
• Menjaga track dari
memori yang sedang digunakan dan siapa yang menggunakannya.
• Memilih program yang akan di-load
ke memori.
- Managemen Berkas
Berkas adalah kumpulan informasi
yang berhubungan, sesuai dengan tujuan pembuat berkas
tersebut. Sistem operasi mengimplementasikan
konsep abstrak dari berkas dengan mengatur media penyimpanan massa, misalnya tapes
dan disk.
Sistem operasi bertanggung-jawab
dalam aktivitas yang berhubungan dengan managemen berkas:
• Pembuatan dan penghapusan
berkas.
• Pembuatan dan penghapusan
direktori.
• Mendukung manipulasi berkas dan
direktori.
• Memetakan berkas ke secondary-storage.
• Mem-back-up berkas ke
media penyimpanan yang permanen (non-volatile).
- Managemen Sistem I/O
Sering disebut device manager.
Menyediakan device driver yang umum sehingga operasi
Masukan/Keluaran dapat seragam
(membuka, membaca, menulis, menutup). Contoh: pengguna
menggunakan operasi yang sama
untuk membaca berkas pada perangkat keras, CD-ROM dan floppy
disk.
Komponen Sistem Operasi untuk
sistem Masukan/Keluaran:
• Penyangga: menampung sementara
data dari/ke perangkat Masukan/Keluaran.
• Spooling: melakukan
penjadualan pemakaian Masukan/Keluaran sistem supaya lebih efisien (antrian
dsb.).
• Menyediakan driver:
untuk dapat melakukan operasi rinci untuk perangkat keras Masukan/Keluaran
tertentu.
-
Managemen Penyimpanana Sekunder
Data yang disimpan dalam memori
utama bersifat sementara dan jumlahnya sangat kecil. karena itu, untuk
menyimpan keseluruhan data dan program komputer dibutuhkan penyimpanan sekunder
yang bersifat permanen dan mampu menampung banyak data, sebagai back-up dari
memori utama.
Sistem operasi bertanggung-jawab
atas aktivitas-aktivitas yang berkaitan dengan managemen disk
seperti:
• free-space management.
• alokasi penyimpanan.
• penjadualan disk.
- Sistem Operasi
Proteksi mengacu pada mekanisme
untuk mengontrol akses yang dilakukan oleh program, prosesor,
atau pengguna ke sistem sumber
daya. Mekanisme proteksi harus :
• Membedakan antara penggunaan
yang sudah diberi izin dan yang belum.
• Menspesifikasi kontrol untuk
dibebankan/diberi tugas.
• Menyediakan alat untuk
pemberlakuan sistem.
- Jaringan
Sistem terdistribusi adalah
sekumpulan prosesor yang tidak berbagi memori, atau clock. Setiap
prosesor mempunyai memori dan
clock tersendiri. Akses tersebut menyebabkan peningkatan kecepatan komputasi
dan meningkatkan
kemampuan penyediaan data.
- Command –Interpreter System
Sistem Operasi menunggu instruksi
dari pengguna (command driven). Program yang membaca instruksi dan
mengartikan control statements umumnya disebut: control-card interpreter,
command-line interpreter dan terkadang dikenal sebagai shell. Command-Interpreter
System sangat bervariasi dari satu sistem operasi ke sistem operasi yang
lain dan disesuaikan dengan tujuan dan teknologi perangkat Masukan/Keluaran
yang ada.
Layanan Sistem Operasi terdiri dari :
- Pembuatan Program
- Eksekusi Program
- Operasi I/O
- Manipulasi Sistem Berkas
- Komunikasi
- Deteksi Error
Sebuah sistem yang besar dan
kompleks seperti sistem operasi modern harus diatur dengan cara
membagi task kedalam
komponen-komponen kecil agar dapat berfungsi dengan baik dan mudah
dimodifikasi. Pada bab ini, kita
akan membahas cara komponen-komponen ini dihubungkan satu
sama lain. Menurut Avi
Silberschatz, Peter Galvin, dan Greg Gagne, ada tiga cara yaitu:
• Struktur Sederhana
• Pendekatan Berlapis
• Kernel Mikro
Sedangkan menurut William
Stallings, kita bisa memandang sistem sebagai seperangkat lapisan.
Tiap lapisan menampilkan bagian
fungsi yang dibutuhkan oleh sistem operasi. Bagian yang terletak
pada lapisan yang lebih rendah
akan menmpilkan fungsi yang lebih primitif dan menyimpan detail
fungsi tersebut
- Struktur Sederhana
- Pendekatan Berlapis
- Kernel Mikro
- Boot
- Tuning
- Kompail Kernel
- Komputer Meja
- Sistem Prosesor Jamak
- Sistem Terdisbrusi
- Sistem Waktu Nyata
Bab III Proses Dan Penjadualan
Jika kita berdiskusi mengenai sistem operasi, maka akan timbul sebuah pertanyaan yaitu mengenai
istilah apa yang tepat untuk menyebut semua kegiatan yang dilakukan oleh CPU. Sistem batch
mengeksekusi jobs sebagaimana suatu sistem time-share menggunakan program pengguna (user
programs) atau tasks.
- Terminasi Proses
Suatu proses diterminasi ketika
proses tsb telah selesai mengeksekusi statement terakhir dan
meminta sistem operasi untuk
menghapus statement tsb dengan menggunakan system call exit. Pada
saat itu, proses dapat
mengembalikan data (output) kepada proses parent-nya (melalui system call
wait). Semua resource yang
digunakan oleh proses akan dialokasikan kembali ke tempat asalnya
oleh sistem operasi. Parent sebaiknya mengetahui identitas
dari children-nya. Pada saat suatu proses menciptaka sebuah proses baru, identitas dari proses yang
baru diciptakan ini diperoleh dari parent-nya.
Suatu parent dapat mengakhiri
eksekusi salah satu children-nya untuk alasan-alasan seperti:
• Child melampaui penggunaan
resource yang telah dialokasikan. Dalam keadaan ini, parent perlu
mempunyai mekanisme untuk
memeriksa status children-nya.
• Task yang ditugaskan kepada
child tidak lagi diperlukan.
• Parent berakhir dan sistem
operasi tidak memperbolehkan suatu child untuk tetap menjalankan
proses jika parent-nya sudah
tidak ada. Jadi, jika suatu proses berakhir, maka semua
children-nya juga harus
diterminasi. Fenomena yang disebut cascading termination ini biasanya
dimulai oleh sistem operasi.