UNIT
3 : SISTEM NUKLEUS
3.1 Mekanisma Sampukan
Aktiviti-aktiviti i/o boleh bertindih dengan pemprosesan
dengan menggunakan 2 peranti perkakasan :
·
Channel
Channel
– peranti yang mengawal periferal, yang
menjalankan perpindahan data di antara periferal dan ingatan tanpa melibatkan
pemproses pusat.
·
sampukan
Sampukan
– isyarat yang mengalihkan kawalan pemproses pusat ke satu lokasi tertentu dan
menyimpan nilai pengira program untuk proses yang disampuk sebelum sampukan (ke
dalam ingatan). Oleh itu sebuah program yang sedang dijalankan semasa
menerima sampukan akan terhenti seketika tetapi boleh diteruskan semula
kemudian.
Sampukan dari channel – isyarat menandakan data
telah selesai dialihkan / dipindahkan jadi pemproses utama boleh memulakan
alihan periferal (untuk meneruskan pemprosesan sementara channel mengawal
peralihan) dan menerima isyarat dari sampukan apabila peralihan telah tamat.
3.2 Sistem Nukleus
Sistem pengoperasian boleh dianggap dibina oleh beberapa
lapisan. Lapisan dalam yang terakhir
ialah kemudahan-kemudahan yang disediakan oleh perkakasan mesin. Lapisan-lapisan
luar menyediakan mesin-mesin maya,
dengan itu keseluruhan binaan lapisan menghasilkan satu mesin maya untuk
kegunaan pengguna.
Antaramuka utama di antara perkakasan mesin yang asas dan
sistem pengoperasian disediakan oleh nukleus sistem, lapisan dalam yang terakhir. Nukleus menyediakan sekitaran untuk
mengujudkan proses-proses seperti menangani sampukan, beralih (switch) pemproses di antara proses
dan implementasi mekanisma komunikasi di antara proses.
Sistem Nukleus mengandungi 3 program :
i. Pengurus
sampukan Paras Pertama (FLIH)
ii.
Penjadualan Paras Bawah (Dispatcher)
iii.
Implementasi proses “WAIT” dan “SIGNAL”
3.3
Pengurus Sampukan Paras Pertama (FLIH)
Bertindakbalas dengan isyarat-isyarat dari luar
(sampukan) dan dalam (ralat) sistem komputer.
Kedua-dua isyarat ini dinamakan sampukan.
2 fungsi FLIH :
i. Menentukan
sumber yang menghasilkan sampukan
Mekanisma sampukan diperlukan untuk menyimpan
nilai pengira program (pendaftar) sesebuah proses yang disampuk dan mengalihkan
kawalan ke satu lokasi tertentu di dalam ingatan. Lokasi ini akan digunakan untuk memulakan
satu program yang dipanggil rutin sampukan atau pengurus sampukan (interrupt
handler) yang menentukan sumber sampukan dan memberi tindakbalas yang
sepatutnya. FLIH adalah program ringkas
yang beroperasi di dalam ingatan.
Fungsi menentukan sumber sampukan dijalankan
dengan melalui beberapa turutan ujian ke atas ‘status flag’ semua sumber
yang ada.
ii. Memulakan
layanan untuk menangani sampukan
Fungsi FLIH yang kedua ialah memulakan sampukan dengan
memanggil rutin layanan yang bersesuaian dengan jenis sampukan (sama ada
peranti i/o, ralat). Tindakan rutin-rutin layanan sampukan
(dijalankan dalam mod supervisor) adalah sangat minima (seperti
memindahkan satu aksara dari peranti input ke dalam penimbal (buffer)
dan tindakan selanjutnya (seperti apa yang perlu dilakukan kepada aksara itu)
akan diserahkan kepada proses yang dilaksanakan di dalam mod pengguna.
Mod supervisor ialah keadaan di mana
arahan-arahan istimewa dilaksanakan oleh sistem pengoperasian.
Arahan-arahan
istimewa :
i.
menangani sampukan
ii.
mengalihkan pemproses di antara proses
iii.
menjalankan i/o
iv.
menghentikan pemproses pusat
v.
mencapai pendaftar yang digunakan oleh
perkakasan pelindung ingatan
3.4 Implementasi ‘wait’
dan ‘signal’
Implementasi wait dan signal ini perlu ada
dalam nukleus kerana :
·
Semua
proses memerlukannya untuk diimplemen pada paras bawah
·
Operasi
wait adalah untuk blok proses dan menyebabkan dispatcher melokasi
semula pemproses. Seterusnya operasi wait
mesti membuat capaian kepada dispatcher.
·
Untuk
memulihkan semula proses kepada keadaan running ialah dengan memberi signal. Seterusnya signal mesti boleh capai
rutin interrupt.
No comments:
Post a Comment