Proses merupakan eksekusi dari sebuah program
Program merupakan kumpulan instruksi untuk mengerjakan suatu
tugas
Terdapat 3 proses model :
1. Multiprogramming of four programs
2. Conceptual
model of four independent, sequential processes.
3. Only
one program is active at once.
Cara untuk membuat proses :
1.
Inisialiasi dari sistem
2.
Menggunakan fungsi fork()
3.
Permintaan user untuk membuat proses baru
4.
Inisialisasi dari batch job
Five state proses
model :
1.
Running :
kondisi pada saat proses sedang berjalan atau sedang tereksekusi
2.
Ready :
kondisi pada saat proses siap untuk di eksekusi
3.
Blocked/Waiting : kondisi pada saat proses tidak
dapat berjalan sampai terdapat event yang terjadi
4.
New : kondisi pada saat proses baru
mau dibuat sehingga belum dapat di eksekusi
5.
Exit :
kondisi pada saat proses telah di eksekusi atau telah di release
Thread mengizinkan dilakukannya eksekusi dalam satu proses
yang sama
Relationship antara thread dan process :
1.
One to one, terdapat 1 proses dan 1 thread
2.
Many to one, terdapat banyak thread dalam 1
proses
3.
One to many, terdapat 1 thread punya banyak
proses
Manfaat dari thread :
1.
Waktu pembuatan thread lebih singkat dari pada
waktu pembuatan proses
2.
Butuh waktu lebih sedikit untuk terminate thread
daripada proses
3.
Adanya komunikasi antar thread
Keuntungan thread :
1.
Memungkinkan setiap proses punya algoritma
penjadwalannya masing-masing
2.
Menghasilkan performa yang lebih cepat untuk
mengerjakan suatu task
Kerugian Thread :
1.
Thread dapat ikut ter-block ketika proses
ter-block
2.
Thread perlu saling menunggu thread lain
Multithreading merupakan
adanya banyak thread yang berada dalam satu proses yang sama, yang memungkin
performa proses yang lebih cepat dari biasanya
Penjadwalan CPU dibutuhkan untu memilih proses proses yang
terdapat di dalam CPU yang siap untuk di ekseskusi
Kondisi – kondisi yang terdapat dalam penjadwalan CPU :
1.
Pergantian running ke waiting state
2.
Pergantian dari running ke ready state
3.
Pergantian dari waiting ke ready state
4.
Terminates
Dispatcher adalah suatu kendali untuk mengatur processor
dengan menggunakan short-term scheduler, yang dapat mengatur mulai dan
berhentinya suatu proses
Tipe-tipe dari processor scheduling :
1.
Long-term scheduling
2.
Medium-term schedulling
3.
Short-term scheduling
Kriteria penjadwalan :
1.
CPU utilization
memastikan agar CPU tetap berada dalam
kondisi sibuk atau bekerja
2.
Throuhput
Jumlah atau banyaknya proses yang selesai
pada suatu waktu
3.
Turnaround time
Jumlah atau banyaknya waktu yang dibutuhkan
untuk proses proses tertentu
4.
Waiting time
Jumlah waktu yang digunakan oleh suatu
proses sampai di eksekusi
5.
Response time
Waktu yang dibutuhkan sampai adanya pemberian
atau balasan response
Kriteria yang digunakan untuk membuat scheduler jadi optimal :
1.
Max CPU utilization
Memaximum kemampuan kerja dari CPU
2.
Max throughput
Memaximum proses yang dapat selesai dalam
suatu waktu
3.
Min turnaround time
Memiinimal waktu untuk melakukan eksekusi
sampai proses itu selesai
4.
Min waiting time
Meminimalkan waktu tunggu dari proses
tersebut
5.
Min response time
Meminimalkan waktu response
Tujuan dari adanya scheduling :
1.
All systems
A.
Fairness :
membagi penggunaan CPU secara adil
B.
Policy :
terdapat kebijakan
C.
Balance :
pastikan pembagian kerja secara rata dan tetap bekerja, agar tugas dapat cepat
selesai
2.
Batch system
A.
Throughput :
memaksimalkan banyaknya proses yang dapat diselesaikan
B.
Turnaround time :
meminimalkan waktu yang digunakan untuk menyelesaikan suatu pekerjaan
C.
CPU utilization :
tetap menjaga agar CPU tetap sibuk
3.
Interactive systems
A.
Response time :
waktu sewaktu pemberian response
B.
Proportionality :
Pemberian respon yang sesuai dengan yang di minta
4.
Real-time system
A.
Meeting deadlines : jaminan agar tidak ada data yang hilang
B.
Predictability :
menjaga kualitas dari multimedia system
Tidak ada komentar:
Posting Komentar