Deskripsi fasilitas penjadwalan yang dibutuhkan untuk mendukung real time computing dengan bantuan sistem komputer. Terdapat dua jenis real time computing:
1.
Sistem
hard real time: Diperlukan untuk menyudahi suatu tugas penting dalam sejumlah
waktu. Secara umum, sebuah proses dikirim dengan sebuah pernyataan jumlah waktu
yang dibutuhkan untuk menyelesaikan atau menjalankan I/O. Kemudian penjadwalan
bisa menjamin proses untuk selesai atau menolak permintaan karena tidak mungkin
dilakukan. Karena itu, setiap operasi harus dijamin dengan waktu maksimum.
2.
Soft
real-time computing: Memerlukan proses penting yang menerima prioritas lebih
sedikit dari sebelumnya. Walaupun menambah fungsi soft real time ke sistem time
sharing mungkin akan mengakibatkan pembagian sumber yang tidak adil dan
mengakibatkan delay yang lebih lama, atau mungkin pembatalan bagi proses
tertentu, hasilnya adalah tujuan secara umum sistem yang bisa mendukung
multimedia, graphic berkecepatan tinggi, dan variasi tugas yang tidak bisa
diterima di lingkungan yang tidak mendukung soft real time membutuhkan desain
yang teliti dan aspek yang berkaitan dengan sistem operasi.
a. Sistem harus punya prioritas penjadwalan,
dan proses real time harus tidak melampui waktu, walaupun prioritas non real
time bisa terjadi.
b. Dispatch latency harus lebih kecil.
Semakin kecil latency, semakin cepat real time proses mengeksekusi.
Untuk menjaga dispatch tetap rendah ,
sistem call harus preemptible. Ada beberapa cara untuk mencapai tujuan ini.
Pertama, memasukkan preemption points di durasi sistem call yang lama, yang
memeriksa apakah prioritas yang utama butuh dieksekusi. Jika hal ini sudah
dilakukan, maka alih konteks mengambil alih ketika high priority proses
selesai, dan proses yang diinterupsi meneruskan dengan sistem call. Points
preemption bisa diganti hanya di lokasi yang aman di kernel. Kernel struktur
tidak bisa dimodifikasi walaupun dengan preemption points, karena untuk kernel.
Metode yang lain untuk berurusan dengan
preemption adalah membuat semua kernel preemptible. Karena operasi yang benar
bisa dijamin, maka semua data kernel distruktur dengan cara distruktur dengan
cara diproteksi. Dengan metode ini, kernel bisa selalu di-preemtible, karena
semua kernel bisa di-update di proteksi. Prioritas yang tinggi harus menunggu
untuk menyelesaikan prioritas yang rendah. Fase konflik dari dispatch latency
mempunyai dua komponen:
1.
Preemption
merupakan semua proses yang berjalan di kernel.
2.
Prioritas
yang lebih tinggi akan masuk ke CPU, prioritas yang lebih rendah harus keluar.
0 comments:
Post a Comment