2.4. Ҳисоблаш жараёнини дастурий бошқариш
Компьютернинг блоклари ва боғламаларининг ўзаро биргаликда ишлаш тартиби билан танишиб маълумотларни ишлаш дастурининг буйруқларини бажарилишининг бутун циклини, шунингдек, унумдорликни ошириш учун самарали ишлов бериш иш тартибини атрофлича ўрганиш мумкин.
Маълумотларга ишлов бериш дастури хотирадан келадиган буйруқларнинг кетма-кет бажарилиши процессор орқали амалга оширилади. Буйруқнинг ўз манзилининг шаклланиши моментидан унинг бажарилиши натижаларини ёзилишигача бўлган кетма-кет бажарилишининг бутун цикли илгари баён этилган. У бажарилишининг барча асосий босқичларини ўз ичига олади, лекин ишлов бериш тартибларини тўғри тушуниш учун циклни ёйилган кўринишида бажарувчи қурилмалар тақдим этилади:
буйруқ манзилининг шаклланиши (БҚ);
хотирадан буйруқни танлаш (ўқиш) (ОХ, БҚ);
операция ва манзиллаштириш кодларини декодлаш (БҚ);
операндлар манзилларининг шаклланиши (БҚ, ОХ);
операндларни танлаш (ОХ, БҚ, ОҚ);
операндлар устида ҳаракатларнинг бажарилиши (ОҚ);
натижа операндининг ёзилиши (ОҚ, ОХ);
узилишларга сўровни текшириш (БҚ, ОҚ, КЧМ);
кейинги буйруқ манзилининг шаклланиши (БҚ).
Бажарилишнинг стандарт цикли ҳар доим ҳам юқорида санаб ўтилган қадамлардан иборат бўлмайди. Баъзи буюруқларда (масалан, қабул-узатиш) алоҳида қадамлар бўлмаслиги мумкин, шу билан бир вақтда бошқариш бўйича қадамлар сони ошади: ТҚ нинг тайёрлигини текшириш, узилишга сўровларни текшириш.
Буйруқ цикли қадамлари рўйхатидан кўриниб турибдики, ички ва ташқи шиналар бўйича асосий ўзаро биргаликда ишлашда “процессор - ОХ” ва “процессор - КЧМ” линиялари бўйича борилади. КЧМ киритиш/чиқариш модули орқали процессор ва ташқи қурилмалар орасида фақат қабул-узатиш эмас, ТҚ дан ишлаётган дастурнинг узилишига сўровлар ҳам қабул қилиш амалга оширилади.
2.17-расмда БҚ ни буйруқнинг битта циклини бажарилишида қатнашадиган жараённинг асосий боғламалари билан ўзаро таъсирлаш частотаси тасвирланган. Бажарилиш циклининг бутун йўлини назорат қиладиган асосий боғлама БҚ ҳисобланади. Юқорида келтирилган рўйхатга мос равишда фақат битта бажарилиш циклида БҚ асосий хотира билан камида 4-5 марта ўзаро алоқа қилади: буйруқнинг манзилини узатиш – буйруқнинг ўзини ўқиш-операнд манзилини узатиш-операндни танлаш- натижани ёзиш. Ажратилган L1, L2 ва ОХ ли процессорлар моделларида қоидага кўра, буйруқлар кэш-хотирадан, операндлар эса (маълумотлар массивлари) ОХ дан ўқилади. Бундай тартибдаги муносабат билан фақат ўзаро алоқа даражалари (“регистр-регистр”, “регистр-хотира”) ўзгаради, лекин бажарилиш бўйича алоҳида қадамлар сақланади. Ҳар бир буйруқнинг ишлатилишидаги ОХ нинг ўзаро алоқасининг айнан бундай юқори зичлиги “процессор-хотира” юқори тезликни локал шинасининг заруратини кўрсатади.
БҚ нинг АМҚ (ОҚ операцион қурилма) билан ўзаро таъсири ОХ даги каби жадал эмас: операндларни ёзиш-ишлов бериш бўйича ҳаракатларнинг бажарилиш натижасини хотирага бериш. Лекин БҚ учун мажбурий яна бир такт бор, бу “байроқлар регистри” ёки “белгилар регистри (БЛР)” ҳолатини ўқишдир. ИР разрядларидаги “1” нинг мавжудлиги тартибнинг узилиш зарурати (узилиш сигнали) ҳақида сигнал беради.
Узилишга бундай сигнал процессордан маълумотларни қабул қилишга тайёрлиги тўғрисида аввал ёдда тутилган хабар сигналларини ТҚ лардан бири КЧМ орқали берилганда ундан келиши мумкин. Узилига ТҚ лардан нисбатан секин ишлайдиган ТҚ лардан ҳам, масалан, клавиатурадан ёки сигқончадан фойдаланувчининг ҳаракати бўйича келиши мумкин. Компьютер буйруқларининг характерли турларидан бири узилиш буйруғи циклини кўриб чиқамиз. Компьютер тармоқлари такибида ишлашда бу буйруқ тез-тез ишлатилади. Барча компьютерларга дастурни ўтиш буйруғи, яъни унинг бажарилишининг табиий тартибини тўхтатиш кўзда тутилган. Ишлаётган дастурнинг тўхтатилиши сабаби дастурга аввалдан киритилган шарт (шартли ўтиш) кўзда тутилмаган олдинги ҳаракатлар (шартсиз ўтиш) ёки дастурни тармоқлашга олиб келадиган кўзда тутилмаган олдинги ҳаракатлар (дастурни шартсиз ўтиш) бўлиши мумкин. Дастурнинг боришини тўхтатишни талаб қиладиган яна бир ҳаракат процедурани чақириш ҳисобланади.
Ҳисоблашларни табиий боришини ўзгартиришнинг кўрсатилган ҳолларини ишлатиш мақсадида дастурнинг ўтиш буйруқларининг манзили қисмида (шартларга боғлиқ бўлмаган) ўтиш нуқтасининг манзили, яъни қаёққа ўтиш керак бўлган ва кейинги бажарилиши керак бўлган буйруқнинг манзили мавжуд.
2.18-расмда шартли ўтиш буйруғининг бажарилишини тугаши натижасида процессор олинган натижанинг табиий боришини кейинги давом этиш шарти “a>b” шарт ҳисобланади, деб оламиз. Агар бу шарт бажарилса дастур II оралиққа ўтади ва унинг бажарилишининг табиий бориши сақланади. Тартиб бўйича i+1 тартиб рақамини навбатдаги буйруқ бажаради. Агар текшириш натижасида шарт табиий “a
Шартли ўтишнинг бошқа сабаби процессорнинг операцион боғламадаги белгилар регистрининг (БЛР) ҳолати бўлиши мумкин. Олдинги арифметик ва мантиқий операциялар натижалари бўйича унинг битларини сўраш, унинг ҳолатини сўраш (нолли натижа, манфий натижа, ўта тўлиш) дастурнинг ўтишига сабаб бўлиб хизмат қилиши мумкин. Барча компьютерларда ташқи қурилмалар (сичқонча, клавиатура, тўплагичлар) ҳаракати бўйича КЧМ жорий дастурнинг бажарилишини кейинги тўхтатилган бажарилиш нуқтасига қайтишли тўхтатиши мумкин бўлган воситалар кўзда тутилган.
Компьютернинг асосий дастурини узилиш нуқтасини хотирада сақлаш учун 1.7-расмда кўрсатилган стек хотираси ишлатилади. Стекка ёзиш асосий дастурнинг тармоқланиши тартибини (i+1 хонанинг тартиб рақами) хотирада сақлаш ва тўхтатилган ҳисоблаш жараёнини давом этириш учун процессорнинг КХ буйруқлар ҳисоблагичга узатиш шаклини беради. Агар узилишга ишлов бериш дастурининг ишлашини тугагунча янги тўхтатишнинг зарурати вужудга келса, кўзда тутилмаган қўшимча цикллар пайдо бўлади ва қўйилган дастурдан кетиш жойини хотирада сақлаш талаб қилинади. Қўйилган дастур бажарилганидан кейин аввалги узилишга ишлов бериш дастурининг бажарилишига қайтиш зарур, у тугагандан кейин эса асосий дастурни бажаришга ўтиш керак (2.19-расм). Бундай бир неча тармоқланишларда асосий дастурнинг ишга қайтиш кетма-кетлигига тескари кетма-кетликда амалга ошади. Бу механизм вақтинча тўхтатилган дастурларни автоматик қайта тиклаш, тармоқланиш тартибини таъминлаш ва асосий дастурга қайтишни “охириги келганга – биринчи хизмат кўрсатилади” LIFO тамойили ёрдамида амалга оширади. Буйруқлар манзиллари тармоқланишларининг вужудга келиш тартибида ёзилади, тескари йўналишда эса ўқилади.
Киритиш/чиқариш жараёнини бошқариш усуллари. Барча ҳаракатлар процессорнинг ташаббуси ва унинг тўлиқ назорати остида амалга ошади. Барча ҳаракатлар (ҳолатни текшириш, киритиш/чиқариш буйруқларини бериш) бажариладиган дастурники. Процессор киритиш/чиқариш модулидан тезроқ ишлайди, шунинг учун у маълумотларни узатиш жараёнининг тугашини кутади. Бу вақтни йўқотишга олиб келади, лекин бу усулда КЧМ киритиш/чиқариш модулининг тузилмаси сезиларли соддалашади.
Тўхтатишлар бўйича иш тартиби кўпроқ дастурий бошқариладиган усулга мос келади. Фарқ шундаки, процессор маълумотларни узатиш жараёнининг тугашини кутмайди ва бошқа буйруқларга қайта уланади. Алмаштиришнинг тугаши билан тўхтатишга сўров келади.
Хотирага тўғри мурожаат этиш усули самаралироқ ҳисобланади. Хотирага тўғри мурожаат этиш иш тартибида (ХТМ) тизим шинада қўшимча модуль- ХТМ контроллери шакллантирилади. У тизим шинасини бошқариш бўйича процессор вазифасини ўзига олади ва қатнашувсиз ОХ ва ТҚ орасида ахборотларни тўғридан-тўғри қайта узатишни таъминлайди. Процессор томонидан хотирага тўғри мурожаат контроллерини бошқариш тўртта параметрнинг киритилишини ўз ичига олади;
сўров тури (ўқиш ёки ёзиш);
ТҚ манзили;
ахборотлар ёзиладиган (ёки ўқиладиган) ОХ бошланғич хоналарнинг манзиллари;
ёзиладиган / ўқиладиган сўзларнинг сони (блокнинг ўлчами).
Сўров тури контроллернинг бошқариш қурилмасига тушади, у ерга ТҚ манзили ҳам юборилади (2.20-расм). ОХ бошланғич хонасининг манзили регистрда сақланади ундаги маълумотлар ўқиш / ёзиш кўлами бўйича бирликка ортади.
ТҚ томонидан сигнал узатилганда ХТМК контроллер процессорга “ХТМга сўров”ни юборади, МЛШ, МШ, киритиш/чиқриш линияларини озод қилади, кейин процессордан ХТМ ни тасдиқлаш сигнали маълумотларга ишлов беришнинг бошланишига берилади. Процессор ўқиш ва ёзишда маълумотлар регистрига қайта узатиладиган сўзни буферлаштириш амалга оширилади..
Вақт бўйича ажратиш иш тартиби компьютер тармоқ ёки тизим таркибида ишлаганда характерлидир. Бу ҳолда компьютернинг ресурслари барча фойдаланувчилар учун умумий (агар тенг ҳуқуқли ишчи станция бўлса) хизматларни (масалан, ҳужжатни босиш) кўрсатиш мумкин.
Вақтни ажратиш иш тартиби вариантларидан бири реал вақт иш тартиби ҳисобланади. Бу иш тартибида келадиган сўровларга компьютер тизимининг жавоб бериш вақти қатъий регламентланадиган реал обьектлар ва жараёнларни бошқариш ва назорат қилиш тизимларида қўлланилади.
Барча замонавий операцион тизимлар илғор тўхтатиш ва хизмат кўрсатиш ривожланган тизимли кўп дастурли иш тартибини қўллаб-қувватлайдиган имкониятларга эга. Компьютернинг бир дастурли ва кўп дастурли иш режимларини кўриб чиқамиз.
Бир дастурли (монопол) иш тартиби бу энг содда иш тартиби бўлиб, бунда компьютернинг барча ресурслари фойдаланувчига битта дастурда берилади. Бу иш тартиби олдинги компьютер моделларида кенг тарқалган. У фойдаланувчига қулай, лекин аппарат қисми юкланишининг кичик коэффициентига эга. Ҳисоблаш алгоритми ишлатилганда бевосита процессорнинг ўзида ташқи қурилмаларининг (хотира, киритиш/чиқариш) ишлаши тўхтатилади. Иш унумдорлиги компьютер реакциясининг тезлигига, ҳам ишлов беришда вужудга келадиган муаммоларга фойдаланувчига боғлиқ.
Кўп дастурли (мультидастурли) ишлов бериш иш тартиби операцион тизим томонидан автоматик бошқариш асосида ресурсларнинг самаралироқ ажратилишини таьминлайди. Операцион тизим компьютернинг асосий ресурсини (хотирани) бир вақтда ишлатиладиган дастурлар орасида тақсимлайди. Операцион тизимларда икки ва ундан ортиқ дастур фойдаланувчилари орасида умумий ресурсларни тақсимлаш функциясини драйверлар ва дастурларни юкловчилар ўзларига олади. Бунда бошқа вазифа учун ажратилган хотирага санкцияланмаган рухсат этишнинг олдини олиш учун хотиранинг махсус ҳимояси (ҳимояланган режим) хизмат қилади.
Do'stlaringiz bilan baham: |