Page 199 - Modul Smart ASN
P. 199
Smart ASN
Sebelum menyerahkan kendali kepada pengguna, sistem operasi
memastikan bahwa pengatur waktu diatur untuk menyela. Jika
penghitung waktu menyela, kontrol ditransfer secara otomatis ke sistem
operasi, yang dapat memperlakukan interupsi sebagai kesalahan fatal
atau dapat memberi program lebih banyak waktu. Jelas, instruksi yang
mengubah operasi timer adalah hak istimewa. Dengan demikian, kita
dapat menggunakan timer untuk mencegah program pengguna berjalan
terlalu lama. Teknik sederhana adalah menginisialisasi penghitung
dengan jumlah waktu yang diizinkan untuk dijalankan oleh suatu
program. Program dengan batas waktu 7 menit, misalnya, penghitungnya
akan diinisialisasi ke 420. Setiap detik, penghitung waktu terputus dan
penghitung dikurangi 1. Selama penghitung positif, kontrol dikembalikan
ke program pengguna . Ketika penghitung menjadi negatif, sistem operasi
menghentikan program karena melebihi batas waktu yang ditentukan.
Penggunaan timer yang lebih umum adalah untuk
mengimplementasikan pembagian waktu. Dalam kasus yang paling
sederhana, pengatur waktu dapat diatur untuk menginterupsi setiap N
milidetik, di mana N adalah irisan waktu yang diizinkan untuk dieksekusi
oleh setiap pengguna sebelum pengguna berikutnya mendapatkan
kendali atas CPU. Sistem operasi dipanggil pada akhir setiap irisan waktu
untuk melakukan berbagai tugas pemeliharaan, seperti menambahkan
nilai N ke catatan yang menentukan (untuk tujuan akuntansi) jumlah
waktu yang telah dijalankan oleh program pengguna sejauh ini. Sistem
operasi juga menyimpan register, variabel internal, dan buffer, dan
mengubah beberapa parameter lain untuk mempersiapkan program
berikutnya untuk dijalankan. Prosedur ini dikenal sebagai saklar konteks.
190
BJS Creation