Interpretator
– bu programma bo'lib, kiruvchi programmani kirish tilida
qabul qiladi va uni bajaradi. Translyatordan farqli ravishda interpretatorlar
natijaviy programmani ishlab chiqmaydi. Translyatorga o'xshab interpretator
kiruvchi programmani taxlil qiladi, lekin natijaviy programma hosil qilmasdan
kiritish tili semantikasi bilan berilgan kiruvchi programmani bajaradi. Agar
kiruvchi programmada xato mavjud bo'lsa, bu haqda axborot chiqaradi. Albatta
kiruvchi programmani bajarish uchun interpretator u yoki bu darajada mashina
kodlari tiliga o'girishi kerak. Chunki bu siz programmalarni kompyuterda
bajarilishi mumkin emas. U xuddi shunday qiladi ham, lekin hosil bo'lgan
mashina kodlarini foydalanuvchi ko'rmaydi. Bu mashina kodi interpretator
tomonidan hosil qilinadi, bajariladi va yo'q qilib yuboradi. Foydalanuvchi esa bu
kodlarni faqat bajarilishini ko'radi. Albatta interpretatorda ham programmani
ekvivalentligi talabi bajarilishi kerak.
35
Nazorat uchun savollar
1.Translyator tushunchasi
2. Kompilyator va translyatorning farqi
3.Interpretatorning vazifasi.
Foydalanish uchun adabiyotlar
1. A.V.Gordeyev, A.YU.Molchanov Sistemnoye programmnoye obespecheniye
Uchebnik Piter, 2001g.
2. V.B.Maraxovskiy, L.YA. Rozenblyum, A.V. Yakovlev «Teoriya
vo'chislitelno'x prosessov i struktur» (avtoro' V.I.Varshavskiy,–18 p.) (poz.190)
Mavzu 10. Uzilishlar haqida tushuncha
Reja:
Uzilish hosil bo'lish sabablari
Uzilishlarni qayta ishlash mexanizmlari
Hosil bo'lgan uzilishlar sinflari
Tayanch iboralar
: uzilish mexanizmi, tashqi (asinxron) va ichki(sinxron),
programma uzilishlari ishlovchilari.
Registr bu xotiraning eng kichik tezkor elementidir, programmalovchi
assembler tilida registrlar bilan ishlash imkoniyatiga ega bo'lganligi uchun
Assemblerda tuzilgan programma kam xotira va bajarilishi uchun kam vakt talab
qiladi.
Uzilish bu hisoblash tizimining alohida qurilmalarini parallel ishlashini va
ularni prosessorni ish jarayonida yuzaga keluvchi o'ziga xos alohida holatilariga
javob berishini ta'minlovchi mexanizmdir. (u orqali esa uzilishni, qayta ishlovchi
mos programma uzatiladi. Uzilish sodir bo'lganda quyidagilar bajariladi:
1)
Uzilish sodir bo'lganligi haqida fakt belgilanadi.
2)
To'xtatilgan jarayon holati eslab qolinadi
3)
Boshqaruv uzilishlarni qayta ishlash dasturiga beriladi.
4)
To'xtatilgan jarayon haqida (2) qadamda saqlab qolinmagan axborotlar
saqlanadi.
5)
Uzilish qayta ishlanadi. Bu ish (3) etapdagi ost dastur yordamida
bajarilishi mumkin, lekin Oslarda bu ish qo'shimcha mos ost
dasturlarini chaqirish bilan amalga oshiriladi.
6)
To'xtatilgan jarayon haqidagi barcha jarayonlar tiklanadi (4) etapga
teskari ish bajariladi.
36
7)
Uzilib qo'yilgan dasturga qaytiladi. (1),(2),(3) etapdagi ishlar shartli
bajarilsa, (4), (7) lari dasturiy bo'ladi.
1.
Stekga bayroqchali registr qiymati joylashtiriladi
2.
Bayroqchali registrning TF IF razryadlari 0 holatga keltiriladi.
3.
Stekga komandalar registri holati joylashtiriladi
4.
Uzilishlar toifasini 4 ga ko'paytirirsh orqali uzilishlar vektorining
adresi hisoblanadi
5.
Uzilishlar vektoriga joylashgan so'z komandalar segmenti
registriga joylashtiriladi (CS)
6.
Stekga komandalar ko'rsatkichi registri IP ning qiymati
joylashtiriladi.
7.
Komandalar ko'rsatkichi registri IP ga uzilishlar vektorida
joylashgan birinchi so'z yuklatiladi.
256 uzilishlar vektorining qiymati xotiraning kichik adreslariga ega
bo'lgan qismini egallaydi. Har bir uzilish vektorining qiymati 4 baytga teng
bo'lib, ularning hammasi 1024 bayt yoki 1 kb. bo'ladi. Ma'lumki, axborotlar
periferiy qurilmalardan operativ xotiraga avtonom rejimda uzatilishi kerak.
Bunda
operasion
tizim
prosessorning
tashqi
xotira,
kiritish-chiqarish
qurilmalarining parallel ishlashini tashkil qilish zarur.
Parallel ishlashni tashkil qilishda uzilish mexanizmi muhim ahamiyat kasb
etadi. Uzilish sodir bo'lganda boshqarish operatsion tizimga o'tadi. Uzilishga
sabablar har xil bo'lishi mumkin. Masalan: almashish boshlanishi va oxiridagi
signallar, qurilmaning ishlab turgan paytda to'xtab qolishi, foydalanuvchining
aralashuvi va hakozo. Uzilish mexanizmi operasion tizim yordamida bir necha
foydalanuvchilarning ishini tashkil qilishda, turli periferiy qurilmalarni jalb
qilishda, hisoblash tizimlarida multiprosessor rejimi ishini ta'minlashga yordam
beradi.
Demak uzilish deganimizda –bajariluvchi dasturning sistemaga majburan
uzatilishini boshqarishdir, ya'ni asinxron ish rejimini amalga oshirish va hisoblash
majmualarining ayrim qurilmalari ishini parallel ishlashdan ajratishni tushunish
kerak. Uzilishlar mexanizmi apparat-dasturiy vositalar bilan amalga oshiriladi.
Uzilishlar sistemasi turlicha bo'lishi mumkin, lekin ularning umumiy xususiyati -
uzilishlar natijasida prosessor yordamida komandalar bajarilish tartibining
o'zgarishiga olib keladi.
Hisoblash tizimlarida hosil bo'lgan uzilishlarni 2 ta asosiy sinfga ajratish
mumkin: tashqi (asinxron) va ichki(sinxron).
Tashqi uzilishlar – uzilishlar jarayonidan tashqarida sodir bo'luvchilardir.
Bularga quyidagilarni kiritish mumkin: tashqi qurilmalar uzilishlari (kiritish-
chiqarish bo'yicha uzilishlar): hisoblash tizimlari operatori pultidan uzilish:
boshqa protsessor yoki boshqa hisoblash tizimlaridagi uzilish.
Ichki uzilishlar protsessor ishlari bilan bog'liq bo'lib, uning proseduralari bilan
sinxrondir. Pogrammalar tomonidan tashkil qilingan uzilishlar mavjud. Bu
uzilishlarni uzish ishlovchilari ta'minlab berib turadi. Programma uzilishlari
ishlovchilari 2 xil bo'ladi:
37
1)
Sistema uzilish ishlovchilari (BIOS ga taalluqli) yoki bog'lanmagan
uzilish ishlovchilari:
2)
Foydalanuvchining uzilish ishlovchilari. Bular yordamida sistema
uzilish ishlovchilarini to'la almashtirish mumkin yoki ular bilan
bog'langan bo'lishi mumkin.
Do'stlaringiz bilan baham: |