Pada umumnya sebuah sistem operasi modern akan terdiri dari komponen
sebagai berikut:
•
Manajemen Proses.
•
Manajemen Main Memory.
•
Manajemen File.
•
Manajemen Sistem I/O.
•
Manajemen Penyimpanan Sekunder.
•
Proteksi dan Keamanan.
Dalam kegiatannya
sehari-hari, sistem operasi memiliki sebuah mekanisme proteksi untuk memastikan
dirinya, semua program yang berjalan, dan data-data penggunanya berjalan dengan
baik. Untuk melakukan hal tersebut, sistem operasi memiliki dua jenis mode
operasi yang saling terpisah. Dua operasi tersebut, yaitu :
·
user mode, eksekusi program dikendalikan oleh
pengguna,
·
kernel mode, eksekusi program dikendalikan oleh sistem
operasi, dinamakan dual-mode operation.
Dual-mode
operation diimplementasikan pada arsitektur perangkat keras. Sebuah bit yang
disebut mode bit ditambahkan ke perangkat keras untuk menunjukkan mode operasi
saat itu: 0 untuk kernel mode dan 1 untuk user mode. Dengan adanya dual-mode
operation, eksekusi sebuah program atau sebuah proses bisa dibedakan sumbernya,
apakah dieksekusi oleh sistem operasi atau dieksekusi oleh pengguna. Hal ini
akan sangat berguna dalam berjalannya sistem operasi.
Selain
itu, sistem operasi memiliki sebuah mekanisme untuk melindungi prosesor dari
berbagai macam program yang berjalan. Bayangkan jika ada sebuah proses
mengalami infinite loop. Tentu saja prosesor akan terus menerus melayani
program itu dan menghambat proses lainnya yang akan dieksekusi prosesor, dan
hal ini bisa dipastikanakan mengurangi kinerja dari komputer.
Perlindungan
prosesor tersebut dilakukan dengan timer. Timer diset untuk melakukan interupsi
prosesor setelah beberapa periode waktu. Dengan adanya timer, sebuah program
bisa dicegah dari berjalan terlalu lama. Misalkan sebuah program memiliki time
limit 7 menit. Setelah 7 menit tersebut terlewati, sistem operasi akan
menginterupsi prosesor dan menghentikan eksekusi program tersebut.
Manajemen Proses
Proses
adalah sebuah program yang sedang dieksekusi. Sedangkan program adalah kumpulan
instruksi yang ditulis ke dalam bahasa yang dimengerti sistem operasi. Sebuah
proses membutuhkan sejumlah sumber daya untuk menyelesaikan tugasnya. Sumber
daya tersebut dapat berupa CPU time, alamat memori, berkas-berkas, dan
perangkat-perangkat I/O. Sistem operasi mengalokasikan sumber daya-sumber daya
tersebut saat proses itu diciptakan atau sedang diproses/dijalankan. Ketika
proses tersebut berhenti dijalankan, sistem operasi akan mengambil kembali
semua sumber daya agar bisa digunakankembali oleh proses lainnya.
Sistem
operasi bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan
manajemen proses seperti:
•
Membuat dan menghapus proses pengguna dan sistem proses. Sistem operasi
bertugas mengalokasikan sumber daya yang dibutuhkan oleh sebuah proses dan
kemudian mengambil sumber daya itu kembali setelah proses tersebut selesai agar
dapat digunakan untuk proses lainnya.
•
Menunda atau melanjutkan proses. Sistem operasi akan mengatur proses
apa yang harus dijalankan terlebih dahulu berdasarkan berdasarkan prioritas dari
proses-proses yang ada. Apa bila terjadi 2 atau lebih proses yang mengantri
untuk dijalankan, sistem operasi akan mendahulukan proses yang memiliki
prioritas paling besar.
•
Menyediakan mekanisme untuk proses sinkronisasi. Sistem operasi akan
mengatur jalannya beberapa proses yang dieksekusi bersamaan. Tujuannya adalah
menghindarkan terjadinya inkonsistensi data karena pengaksesan data yang sama,
juga untuk mengatur urutan jalannya proses agar setiap proses berjalan dengan
lancer.
•
Menyediakan mekanisme untuk proses komunikasi. Sistem operasi
menyediakan mekanisme agar beberapa proses dapat saling berinteraksi dan
berkomunikasi (contohnya berbagi sumber daya antar proses) satu sama lain tanpa
menyebabkan terganggunya proses lainnya.
•
Menyediakan mekanisme untuk penanganan deadlock. Deadlock adalah suatu
keadaan dimana sistem seperti terhenti karena setiap proses memiliki sumber
daya yang tidak bias dibagi dan menunggu untuk mendapatkan sumber daya yang
sedang dimiliki oleh proses lain.
Sistem
operasi harus bisa mencegah, menghindari, dan mendeteksi adanya deadlock. Jika
deadlock terjadi, sistem operasi juga harus dapat memulihkan kondisi sistemnya.
Manajemen Main Memori
Sistem
operasi memiliki tugas untuk mengatur bagian memori yang sedang digunakan dan
mengalokasikan jumlah dan alamat memori yang diperlukan, baik untuk program
yang akan berjalan maupun untuk sistem operasi itu sendiri.
Tujuan
dari manajemen main memory adalah agar utilitas CPU meningkat dan untuk
meningkatkan efisiensi pemakaian memori.
Main memory atau lebih dikenal sebagai memori adalah sebuah array
yang besar dari word atau byte yang ukurannya mencapai ratusan, ribuan, atau
bahkan jutaan. Setiap word atau byte mempunyai alamat tersendiri. Main memory
berfungsi sebagai tempat penyimpanan instruksi/data yang akses datanya
digunakan oleh CPU dan perangkat I/O. Main memory termasuk tempat penyimpanan
data yang yang bersifat volatile
(tidak permanen), yaitu data akan hilang kalau komputer dimatikan.
Sistem
komputer modern memiliki sistem hirarki memori, artinya memori yang ada di
komputer disusun dengan tingkatan kecepatan dan kapasitas yang berbeda. Memori
yang memiliki kecepatan sama dengan kecepatan prosesor memiliki kapasitas yang
kecil, berkisar hanya dari ratusan KB hingga 4 MB dengan harga yang sangat
mahal. Sedangkan main memory yang kecepatannya jauh di bawah kecepatan prosesor
memiliki kapasitas yang lebih besar, berkisar dari 128 MB hingga 4 GB dengan
harga yang jauh lebih murah. Sistem hirarki memori ini memiliki tujuan agar
kinerja komputer yang maksimal bisa didapat dengan harga yang terjangkau.
Manajemen File
File
atau berkas adalah representasi program dan data yang berupa kumpulan informasi
yang saling berhubungan dan disimpan di perangkat penyimpanan. Sistem berkas
ini sangatlah penting, karena informasi atau data yang disimpan dalam berkas
adalah sesuatu yang sangat berharga bagi pengguna.
Sistem
operasi harus dapat melakukan operasi-operasi pada berkas, seperti membuka,
membaca, menulis, dan menyimpan berkas tersebut pada sarana penyimpanan
sekunder. Oleh karena itu, sistem operasi harus dapat melakukan operasi berkas
dengan baik.
Sistem
operasi melakukan manajemen sistem berkas dalam beberapa hal:
•
Pembuatan berkas atau direktori. Berkas yang dibuat nantinya akan
diletakkan pada direktori-direktori yang diinginkan pada sistem berkas. Sistem
operasi akan menunjukkan tempat dimana lokasi berkas atau direktori tersebut
akan diletakkan. Setelah itu, sistem operasi akan membuat entri yang berisi
nama berkas dan lokasinya pada sistem berkas.
•
Penghapusan berkas atau direktori. Sistem operasi akan mencari letak
berkas atau direktori yang hendak dihapus dari sistem berkas, lalu menghapus
seluruh entri berkas tersebut, agar tempat dari berkas tersebut dapat digunakan
oleh berkas lainnya.
•
Pembacaan dan menulis berkas. Proses pembacaan dan penulisan berkas
melibatkan pointer yang menunjukkan posisi dimana sebuah informasi akan
dituliskan di dalam sebuah berkas.
•
Meletakkan berkas pada sistem penyimpanan sekunder. Sistem operasi
mengatur lokasi fisik tempat penyimpanan berkas pada sarana penyimpanan
sekunder.
Manajemen I/O
Pekerjaan
utama yang paling sering dilakukan oleh sistem komputer selain melakukan
komputasi adalah menerima Masukan/Keluaran (I/O).
Dalam kondisi riil, waktu yang digunakan untuk komputasi lebih sedikit
dibandingkan waktu untuk I/O. Ditambah lagi dengan banyaknya variasi perangkat
I/O sehingga membuat manajemen I/O menjadi komponen yang penting bagi sebuah
sistem operasi. Sistem operasi juga sering disebut device manager, karena
sistem operasi mengatur berbagai macam perangkat (device).
Fungsi-fungsi
sistem operasi untuk sistem I/O:
•
Penyanggaan (buffering).
Menampung data sementara dari/ke perangkat I/O
•
Penjadwalan (scheduling).
Melakukan penjadwalan pemakaian I/O sistem supaya lebih efisien.
•
Spooling. Meletakkan suatu pekerjaan program pada penyangga, agar
setiap perangkat dapat mengaksesnya saat perangkat tersebut siap.
•
Menyediakan driver perangkat yang umum. Driver digunakan agar sistem
operasi dapat memberi perintah untuk melakukan operasi pada perangkat keras I/O
yang umum, seperti optical drive, media penyimpanan sekunder, dan layar
monitor.
•
Menyediakan driver perangkat yang khusus. Driver digunakan agar sistem
operasi dapat memberi perintah untuk melakukan operasi pada perangkat keras I/O
tertentu, seperti kartu suara, kartu grafis, dan motherboard.
Manajemen Penyimpanan Sekunder
Penyimpanan
sekunder (secondary storage) adalah sarana penyimpanan yang
berada satu tingkat di bawah memori utama sebuah komputer dalam hirarki memori.
Tidak seperti memori utama komputer, penyimpanan sekunder tidak memiliki
hubungan langsung dengan prosesor melalui bus, sehingga harus melewati I/O.
Sarana
penyimpanan sekunder memiliki ciri-ciri umum sebagai berikut:
1.
Non volatile
(tahan lama). Walaupun komputer dimatikan, data-data yang disimpan di sarana
penyimpanan sekunder tidak hilang. Data disimpan dalam piringan-piringan
magnetik.
2.
Tidak berhubungan langsung dengan bus CPU. Dalam struktur organisasi
komputer modern, sarana penyimpanan sekunder terhubung dengan northbridge.
Northbridge yang menghubungkan sarana penyimpanan sekunder pada I/O dengan bus
CPU.
3.
Lambat. Data yang berada di sarana penyimpanan sekunder memiliki waktu
yang lebih lama untuk diakses (read/write) dibandingkan dengan mengakses di
memori utama. Selain disebabkan oleh bandwidth bus yang lebih rendah, hal ini
juga dikarenakan adanya mekanisme perputaran head dan piringan magnetik yang
memakan waktu.
4.
Harganya murah. Perbandingan harga yang dibayar oleh pengguna per byte
data jauh lebih murah dibandingkan dengan harga memori utama.
Sarana
penyimpanan sekunder memiliki fungsi-fungsi sebagai berikut:
1.
Menyimpan berkas secara permanen. Data atau berkas diletakkan secara
fisik pada piringan magnet dari disk, yang tidak hilang walaupun komputer
dimatikan (non volatile)
2.
Menyimpan program yang belum dieksekusi prosesor. Jika sebuah program
ingin dieksekusi oleh prosesor, program tersebut dibaca dari disk, lalu
diletakkan di memori utama komputer untuk selanjutnya dieksekusi oleh prosesor menjadi
proses.
3.
Memori virtual. Adalah mekanisme sistem operasi untuk menjadikan
beberapa ruang kosong dari disk menjadi alamat-alamat memori virtual, sehingga
prosesor bisa menggunakan memori virtual ini seolah-olah sebagai memori utama.
Akan tetapi, karena letaknya di penyimpanan sekunder, akses prosesor ke memori
virtual menjadi jauh lebih lambat dan menghambat kinerja komputer.
Sistem
operasi memiliki peran penting dalam manajemen penyimpanan sekunder. Tujuan
penting dari manajemen ini adalah untuk keamanan, efisiensi, dan optimalisasi
penggunaan sarana penyimpanan sekunder.
Proteksi dan Keamanan
Proteksi adalah
mekanisme sistem operasi
untuk mengontrol akses
terhadap beberapa objek
yang diproteksi dalam sistem
operasi. Objek-objek tersebut
bisa berupa perangkat
keras (seperti CPU, memori, disk, printer, dll) atau
perangkat lunak (seperti program, proses, berkas, basis data, dll). Di beberapa
sistem, proteksi dilakukan oleh sebuah program yang bernama reference monitor.
Setiap kali ada pengaksesan sumber daya PC yang diproteksi, sistem pertama kali
akan menanyakan reference monitor tentang keabsahan akses tersebut. Reference
monitor kemudian akan menentukan keputusan apakah akses tersebut diperbolehkan
atau ditolak.
Secara
sederhana, mekanisme proteksi dapat digambarkan dengan konsep domain. Domain
adalah himpunan yang berisi pasangan objek dan hak akses. Masing-masing
pasangan domain berisi sebuah objek dan beberapa akses operasi (seperti read, write, execute) yang
dapat dilakukan terhadap objek tersebut. Dalam setiap waktu, setiap proses
berjalan dalam beberapa domain proteksi. Hal itu berarti terdapat beberapa
objek yang dapat diakses oleh proses tersebut, dan operasi-operasi apa yang
boleh dilakukan oleh proses terhadap objek tersebut. Proses juga bisa berpindah
dari domain ke domain lain dalam eksekusi.
Pengguna sistem
komputer sudah tentu
memiliki data-data dan
informasi yang berharga
baginya. Melindungi
data-data ini dari
pihak-pihak yang tidak
berhak merupakan hal
penting bagi sistem operasi. Inilah yang disebut keamanan
(security).
Sebuah
sistem operasi memiliki beberapa
aspek tentang keamanan.
Aspek-aspek ini berhubungan terutama dengan hilangnya
data-data. Sistem komputer dan data-data di dalamnya terancam dari:
·
aspek ancaman (threats),
secara umum sistem
komputer menghadapi ancaman
terbukanya data-data rahasia,
pengubahan data-data oleh orang yang tidak berhak, juga pelumpuhan sistem
dengan adanya serangan Denial of Service (DoS).
·
aspek penyusup (intruders),
saat ini banyak orang mencoba masuk ke dalam sistem operasi dengan berbagai
macam tujuan. Ada
yang hanya sekedar
mencoba menjebol sistem
operasi (hacking), ada yang mencoba mengambil keuntungan dari
tindakan penjebolah itu (cracking).
Tidak hanya disusupi oleh manusia, sistem operasi juga menghadapi ancaman
keamanan dari program-program penyusup, yang disebut malicious program atau malware. Malware adalah program yang menyusup ke
dalam sistem operasi
dan memiliki tujuan-tujuan
tertentu seperti mengambil
data-data pribadi, mengambil alih komputer, dan seringkali bertujuan
merusak. Yang termasuk kategori malware adalah virus, keylogger, worm, trojan,
dan sypware.
·
aspek musibah, Sistem
operasi terancam akibat
adanya bencana alam
(banjir, lumpur panas, gempa bumi, dan lain-lain), kerusakan
perangkat keras atau lunak, bahkan kelalaian dari penggunanya.
Perkembangan
dunia internet saat ini membawa konsekuensi meningkatnya resiko keamanan
terhadap sistem operasi. Oleh karena itu, sistem operasi harus memiliki
ketahanan keamanan. Bagi kebanyakan pengembang sistem operasi saat ini,
keamanan adalah salah satu permasalahan utama.
0 komentar:
Posting Komentar