Penjadwalan Processor Pada Sistem Operasi Linux

Konsep Proses Pada Sistem Operasi
Sistem operasi mengeksekusi berbagai jenis program. Pada sistem batch
program tersebut biasanya disebut dengan job, sedangkan pada sistem time
sharing, program disebut dengan program user atau task. Beberapa buku teks
menggunakan istilah job atau proses. Proses adalah program yang sedang
dieksekusi. Eksekusi proses dilakukan secara berurutan. Dalam suatu proses
terdapat program counter, stack dan daerah data. Penjadwalan merupakan
kumpulan kebijaksanaan dan mekanisme di sistem operasi yang berkaitan
dengan urutan kerja yang dilakukan sistem komputer. Proses penjadwalan yang
akan dibahas disini adalah proses penjadwalan sistem operasi Solaris dan Linux.
Tujuan utama penjadwalan proses optimasi kinerja menurut kriteria tertentu,
dimana kriteria untuk mengukur dan optimasi kerja penjadwalan.
Penjadwalan CPU adalah basis dari multi programming sistem operasi. Dengan
cara men-switch CPU diantara proses, maka akan berakibat sistem operasi bisa
membuat komputer produktif. Dalam bab ini kami akan mengenalkan tentang
dasar dari konsep penjadwalan dan beberapa algoritma penjadwalan.
Pada sistem Operasi, terdapat 3 tipe penjadwal berada secara bersama-sama
pada sistem operasi yang kompleks, yaitu:
a. Penjadwal jangka pendek (short term scheduller)
Bertugas menjadwalkan alokasi pemroses diantara proses-proses ready di
memori utama. Penjadwalan ini dijalankan setiap terjadi pengalihan proses untuk
memilih proses berikutnya yang harus dijalankan.
b. Penjadwal jangka menengah (medium term scheduller)
Setelah eksekusi selama suatu waktu, proses mungkin menunda sebuah
eksekusi karena membuat permintaan layanan masukan/keluaran atau
memanggil suatu system call. Proses-proses tertunda tidak dapat membuat
suatu kemajuan menuju selesai sampai kondisi-kondisi yang menyebabkan
tertunda dihilangkan. Agar ruang memori dapat bermanfaat, maka proses
dipindah dari memori utama ke memori sekunder agar tersedia ruang untuk
proses-proses lain. Kapasitas memori utama terbatas untuk sejumlah proses
aktif. Aktivitas pemindahan proses yang tertunda dari memori utama ke memori
sekunder disebut swapping. Proses-proses mempunyai kepentingan kecil saat itu
sebagai proses yang tertunda. Tetapi, begitu kondisi yang membuatnya tertunda
hilang dan dimasukkan kembali ke memori utama dan ready.
c. Penjadwal jangka panjang (long term scheduller)
Penjadwalan ini bekerja terhadap antrian batch dan memilih batch berikutnya
yang harus dieksekusi. Batch biasanya berupa proses-proses dengan
penggunaan sumber daya yang intensif (yaitu waktu pemroses, memori,
masukan/keluaran), program-program ini berprioritas rendah, digunakan sebagai
pengisi (agar pemroses sibuk) selama periode aktivitas job-job interaktif rendah.
Meskipun tiap-tiap proses terdiri dari suatu kesatuan yang terpisah namun
adakalanya proses-proses tersebut butuh untuk saling berinteraksi. Satu proses
bisa dibangkitkan dari output proses lainnya sebagai input. Pada saat proses
dieksekusi, akan terjadi perubahan status. Status proses didefiniskan sebagai
bagian dari aktivitas proses yang sedang berlangsung saat itu. Gambar 3.1
dibawah, ditunjukkan diagram status proses. Status proses terdiri dari :
a. New, proses sedang dibuat.
b. Running, proses sedang dieksekusi.
c. Waiting, proses sedang menunggu beberapa event yang akan terjadi
(seperti menunggu untuk menyelesaikan I/O atau menerima sinyal).
d. Ready, proses menunggu jatah waktu dari CPU untuk diproses.
e. Terminated, proses telah selesai dieksekusi.
Masing-masing proses direpresentasikan oleh Sistem Operasi dengan
menggunakan Process Control Block (PCB). Informasi yang terdapat pada
setiap proses meliputi :
a. Status Proses. New, ready, running, waiting dan terminated.
b. Program Counter. Menunjukkan alamat berikutnya yang akan dieksekusi oleh
proses tersebut.
c. CPU Registers. Register bervariasi tipe dan jumlahnya tergantung arsitektur
komputer yang bersangkutan. Register-register tersebut terdiri-atas:
accumulator, index register, stack pointer, dan register serbaguna dan
beberapa informasi tentang kode kondisi. Selama Program Counter berjalan,
status informasi harus disimpan pada saat terjadi interrupt.
d. Informasi Penjadwalan CPU. Informasi tersebut berisi prioritas dari suatu
proses, pointer ke antrian penjadwalan, dan beberapa parameter
penjadwalan yang lainnya.
e. Informasi Manajemen Memori. Informasi tersebut berisi nilai (basis) dan limit
register, page table, atau segment table tergantung pada sistem memory
yang digunakan oleh sistem operasi.
f. Informasi Accounting. Informasi tersebut berisi jumlah CPU dan real time
yang digunakan, time limits, account numbers, jumlah job atau proses.
g. Informasi Status I/O. Informasi tersebut berisi deretan I/O device (seperti tape
driver) yang dialokasikan untuk proses tersebut, deretan file yang dibuka.
Swithing proses dari proses satu ke proses berikutnya, ditunjukkan seperti
gambar berikut ini.

Comments

Popular posts from this blog

Ruang Alamat Logika Dan Ruang Alamat Fisik

PRINSIP PRINSIP DESAIN GRAFIS

Cara terhubung dengan internet melalui Telepon Kabel