Сабақ жүргізетін: 1 Сыздыкбеков Н. Т. доцент, т.ғ. к 2 Шакенова Ж. Н. аға оқытушысы 3 Исанова М. К. оқытушысы



Pdf көрінісі
бет3/8
Дата03.03.2017
өлшемі1,33 Mb.
#7258
түріСабақ
1   2   3   4   5   6   7   8

Негізгі əдебиет: 4

[27-37], 5[25-142,145-212,213-238, 239-304].



Қосымша əдебиеттер: 15

[58-76].


Бақылау сұрақтары:

1. Windows операциялық жүйесі қандай тəртіпте жұмыс істейді?

2. Windows NT операциялықжүйесінің не «жүрегі» болып саналады?

3. Windows XP жəне Vista ОЖ арасындағы айырмашылық неде?

4. Windows 7 неде негізделеді?

4 ДƏРІС. Есептеуiш процесс жəне ресурс ұғымы

Басқару  жүйесi есептеуiш  жүйедегi есептеуiш  процесстердiң  басқару

функциясын орындайды да, əр түрлi есептеуiш процесстердiң арасындағы есептеуiш

жүйе  ресурстарының  үлесiн  жəне  программалық  ортаны  құрастырадып,

қолданушының  қолданбалы  программасын  орындайды. Кез  келген  бағдарлама

есептеулер нəтижесінде оны кейбiр жұмыстандыратын бастапқы деректермен жəне

ақыр  соңында  кейбiр  шығатын  мəлiметтерді iске  асырады. Бастапқы  деректер

жағдайының  басым  көпшiлiгiнде  сыртқы (шеттегi) құрылымдары  жедел  жадыға

(программа  бойынша  есептеуді  тікелей  процессормен  жұмыс  ждасайды)

түседі.Анығында, есептеу нəтижелері сыртқы құрылымдарға шығаруы керек.



«Есептеуiш  процесс»  ұғымы (немесе  жай  ғана – «процесс»)  операциялық

жүйелерді қарастыру негізі болып табылады. Бiртiндеп жүретін процесс (кейде «task



– міндеті» - бұл өзара программалық модулдер жəне мəлiметтерді iске асыруы үшiн

есептеуiш  жүйенiң  ресурсын  талап  етеді) – бұл  мəліметтерден  тұратын  жеке

программаны  біртіндеп  процессорда  орындалуы. Концептуалды  процессор  екi

тұрғыды  қарастырылады: бiрiншiден, ол  мəлiмет  сақтағыш  болып  табылады  жəне,

екiншiден  ол (бiр  уақытта) олардың  өңдеуiмен  сабақтас  келетін  операцияларды

орындайды. Мысал  ретiнде  келесi процесстерді (міндеттерді) атауға  болады:

қолданушылардың  қолданбалы  программалардың, утилиталарын  жəне  тағы  басқа

жүйелiк  өңделетiн  бағдарламаларды  орындайды. Қандай  да  болмасын  мəтінді

редакциялануы, бастапқы  программаны  хабарлануы, оның  құрастырылуы  жəне

орындалуы процесс бола  алады. Кез  келген  бастапқы программаның  трансляциясы

бір  процесс  болса, ал  транслятор  келесі  бастапқы  программа – транслятор


программа  модулдерінің  бұл  жерде  бір  программа  болып  бірігуін, бірақ  хабарды

жұмыстандыруы  əр  түрлі  болып  келеді. Тұжырымдама  процессінің  мақсаты

тетiктердің  үйлестірілуін iстеп  шығару  жəне  ресурстарды  басқаруын  анықтау.

Операциялық  жүйлерді  қарастыруда  ресурс  мағынасы  процесс  мағынасы  сияқты

негізгі болып табылады.

1-сурет. Ресурстың классификациясы



Ресурс  термині  əдетте, қолдануы  белсенділік  мерзімі  процессінде  тұрақты,

қайталанатын жəне жетіспейтін объектілерге қатысты жиі сұралады. Жүйенiң iшiнді

жіктелетін кез келген объект ресурс деп аталады.

Ресурстардың  бірнеше  бір  кезде (бір  уақытта) немесе  параллель (кей  интервал

уақытында  процесс  бірінен  соң  бірі  жүреді) қолданылатын  бөлінетін  жəне

бөлінбейтін процесс түрлері бар.

Ең  алғашқы  жүйелірді  өңдеуде  процессорлық  уақыт, жад, енгізу  жəне  шығару

каналы  жəне  шеттігі  құрылым  ресурс  жүйесі  болып  табылады. Теп-тез  дегенмен

ресурс  мағынасы  əмбебап  жəне  ортақ  болды. Əр  түрлі  программалық  жəне

ақпараттық  ресурстарға  кіруін  қадағалайтын  жүйеде  бөлінетін  жəне  жіктелетін

объект  ретінде  қарастырады. Қазіргі  уақытта  ресурс  ұғымы  құрылымдық  жүйеге

кіруін  жəне  жүйедегі  физикалық  əсері  абстракциялық  құрылымды  атрибуттарға

айналды. Жүйелік ресурстардан басқа міндеттемелермен ауйсып отыратын хаттама

жəне  синхроналдысигналды  объектілерді  қарастырады. Алдыңғы  жүйенің  толық

аяқталуынан  кейін, кез  келген  бірінші  ақпараттық  жүйе  орындала  алады. Себебі,

бірінші  ақпараттық  жүйе (ішкі  жүйе) жəне  компьютер  құрылғылары  орталық

процессор  көмегімен  қадағаланды. Орталық  процессор  есептеуіштерді  жəне

енгізу/шығару операциялардың қадағалануын жүзеге асырған. Оперативті жад жəне

сыртқы құрылғылар арасында деректер ауысуы кезінде процессор есептеуді жүргізе

алмады. Арнайы  ақпараттық  бақылау  машиналарын  операция (жіктеу) кезінде,

алынған  деректерді  жəне  келесі  ретінде  ақпарттық  есептеулерді  орталық

процессорге  енгізеді. Бірақ, бəрібірде  процессор  көп  уақыт  бойы  келесі

енгізу/шығару  операциясының  аяқталуын  күтетін. Сол  себептен, ақпараттық

есептеуде мультипрограммалық (мультиміндеті) режимде  жұмыс  жасауын  құруы

туралы  ұсыныс  болды. Маңызы, бір  программа (бір  есептеуіш  процесс  немесе

міндет) жұмысы  кезінде  енгізу/шығару  операцияларының  аяқталуын, басқа

программа (басқа міндет) талқылануы (2 сурет).


а – бірпрограммалқы режимі; б – мультипрограммалық режимі

2-сурет. Екі программаның орындалу мысалы

Мысал ретінде екі программаның бірігуі арқасында жұмыс уақыты екі міндетті

жасаудан  кем  гипотеза  ахуалы, оларды  бірінен  сон  бірін (біреуі  беткеннен  кйін

екншісін  іске  қосуы) 2 суретте  көрсетілген. Осы  суреттен  əр  міндетті  орындау

уақыты көп болуына қарағанда, оның əр қайсысын жеке деп қарастырғаннан.

Мультипрограммалау  кезінде  жүйеге  кіру  əдісінде  бірпрограммалық  режимге

(əр  түрлі  бөлімі  ресурстардың  босауы  нəтижесінде  уақыттың  кеттуі  жұмыстың

істеуін баяулатады) қарағанда, жеке процесс ешқашан тез орындалуы мүмкін емес.

Операциялық  жүйе  мультипрограммалауды (коп  процесті) жəне  ресурсты  кезек

сұрау  бойынша  жөнді  жүргізуді  түрлі  жолдармен  жүргізеді. Осы  талаптар  жадыда

бір  немесе  бірнеше  процесстің  сақтауын, дайын  қолдану  басқа  ресурстарын  соңғы

ресурсы  кіруге  рұқсат  етілген  болады. Ресурстың  бөлінуі  ортақ  схемады  мынадай.

Керек кезде кез келген ресурсты (жедел жады, енгізу/шығару құрылғысы, деректер

массиві  жəне  т.б.) міндеттемелерді  опрециялық  жүйенің  супервизорына – оның

орталық  басқару  модулі  бірнеше  модулдерден  құралуы  мүмкін, мысалы:

енгізу/шығару  супервизоры, бөліну  супервизоры, программа  супервизоры,

міндеттеме  диспечері  жəне  т.б., арнайы  шақыру (командалары, директивтер) жəне

өзінің  талаптарын  сұрайды. Солай  ресурстың  түрін  жəне  керек  болса  көлемін

(мысалы, жедел  жады  ұяшық  мекенінің  санын, жолдар  немесе  жүйелік  дискте

секторлар санын, басып шығару құрылғысын жəне енгізілген деректер көлемін жəне

т.б.) көрсетіледі.

Директиваға операциялық жүйенің жіберілуі оған басқаруды, ерекше құқықтық

режимге  процессор  жіберілу  үндеуі. Есептеуіш  комплекстері  екі (одан  да  көп)

режимді  жұмысы  істейді: ерекше  құқықтық  режим (супервизор  режимі),

қолданушы, басқа да компьютердің эмуляциясы режимі жəне т.б.

Егер де супервизор сұраған есепке ерекшелене алатын ресурсты міндеттемелер:

оның  еркiн  жəне  жүйесiнде  сұрау  салулардың  осыған  қорға  биiгiрек

басымдылықтың есептерiнен басқа; ағымдағы сұрау салу жəне бұрын берiлген сұрау

салулар  бiрлескен  қолдану  қорларды  жiбередi; ресурсты  төменгi басымдылықтың

есебiмен қолданады жəне уақытша (бөлетiн ресурс) тартып ала алады.


Сұрауды алғаннан соң, операциялық жүйе оны қанағаттандырады жəне басқару

міндеттемесіне  қайтарады  да, керекті  сұрау  немесе  ресурс  бос  болмаған  жағдайды

ресурстың  кезегіне  міндеттемені  қойып, оны  күту  жағдайына (қоршауға  алынып)

ауыстырады. Ресурстың  кезегіне  тұру  бірнеше  жағдайында  құрылып, көбінесе

тізімдеме құрылымына байланысты жүзеге асады.

Ресурспен  жұмыс  аяқталғаннан  кейін  қайтадан  арнайы  сұрау  супервизоры

(директив  талаптарына  сəйкес) ресурстың  жұмыс  істемеуін  операциялық  жүйе

хабарлайды  да, егер  де  басқару  қандай  да  бір  жүйе  функциясынан  кейін

супервизорге  қайтса, онда  операциялық  жүйе  ресурсты  қайтарып  алады.

Операциялық  жүйенің  супервизоры  сол  бойынша  басқару  үндеуін  алып, босаған

ресурсқа  кезек  барын  көріп, ресурсты  босатып  жəне  тексереді. Егер  кезек  болса –

қабылданған  қызмет  көрсету  пəні (қызмет  көрсету  ережесі – мысалы, «соңғы

келгенге  бірінші  қызмет  көрсетіледі» пəні  қызмет  көрсету  ретін, түскен

сұраулардың  соңынан  алдына  қарай  ретін) жəне  кезекте  тұрған  міндеттеменің

жағдайын берілген тапсырыс бойынша шығарады да, кезекте тұрған ресурсты жəне

оны  орындалуына  дайын  жағдайына  көшіреді. Осыдан, басқару  таңдалған

міндеттемеге жіберіледі немесе енді ғана босаған ресурсқа қайтарылады.

Ресурсты  сұрауға  алу  үшін  міндеттеменің  жеке  дара  немесе  басқа

міндеттемелермен  біріге  қолданылуына  рұқсат  етуі  көрсетіледі. Мысалы, файлмен

жеке дара жұмыс істейге болады, ал басқа да міндеттемелермен біріге жұмыс істеуге

болады. Ресурсты  басқаруын  құру  үшін  əрқашан  қай  кезде  қолайлы  екені  туралы

шешім  қабылдануы: жеке  маңызды  сұрауларды  тез  қызмет  көрсету, процесстің

көлемін максималды тез қызмет көрсету жəне ресурстарды толық жүзеге асыру.

Негізгі əдебиет: 2 [22-28].

Бақылау сұрақтары:

1. Біртіндеп жүретін процесс қалай жүзеге асырылады?

2. Процессор неше тұрғыда қарастырылады?

3. Ресурстың мағынасы. Ресурстың қандай түрлері бар?

4. Бірпрограммалық  режимнің  мультипрограммалық  режимнен  айырмашылығы

неде?


5 ДƏРІС. Үрдіс жəне тасқандар

Үрдістің қалыбы

Компьютерде  барлық  функционалдық  бағдарламалық  қамтама біртіндеп



жүретін үрдіс түрінде көрсетіледі. Орындалатын бағдарламағы кіретін  келесі ретті

санауыш командасы, регисторы жəне ауыспалы үрдіс (процесс) болып табылады. Əр

үрдісте  өзінің  жеке  виртуалды  процессоры  бар. Нақты  процессор  процессорден

процессорге  ауысады  да, бірақ  параллель  жүретін (псевдопараллельді) жүйеде

жұмыс  жасауын  жеңілдетеді. 4 программамен  жұмыс  істейтін  компьютердің

схемасы 1а суретте көрсетілген. Бір біріне тəуелсіз əр қайсысының өзінің логикалық

басқару (логикалы санауыш командасы) 4 урдіс 1б суретте келтірілген. Негізінде бір

ғана  физикалық  санауыш  командасы  бар. Ағымдағы  үдеріс  логикалық  санауыш

командасында  жүктеледі. Егер  ағымдағы  үдеріске  бөлінген  уақыт  біткен  кезде,

физикалық санауыш командасы логикалық санауыш командасының үдеріс жадында



сақталады. Барлық 4 үрдіс жағдайы ұзақ уақыт бойы өзгереді де, əр нақты жағдайда

бір ғана үрдіс жұмыс істеуі 1в суретте көрсетілген.

1-сурет. Көпміндеттемелік режимнің төрт бағдарламасы (а); төрт жеке туелсіз

біртіндеп жүретін үрдіс (б); уақыттың кез келген кезіндегі бір ғана жұмыс істейтін

үрдіс (в)

Үрдісті  құру.  Барлық  керекті  үдерістердің  барын  растауы  операциялық  жүенің

тəсілін  көрсетеді. Қарапайым  жүйеде  жəне  бір  ғана  қосымшалардың (мысалы,

микротолқынды пеш қадағалауы) барлық керекті үдерістерді жүйені жүктеген кезде

жүзеге  асыруға  болады. Əмбебап  жүйеде  құру  жəне  үзу  үрдістерінің  керек

жағдайында  тəсілін  құру. Үрдістерді  құру  кезіндегі 4 негізгі  тəсілдерді

қарастырайық.

1. Жүйенiң инициализациясы

2. Үрдіс құру кезіндегі жұмыс істейтін жүйелік үрдіс сұрауын жүзеге асырады.

3. Үрдісті құру үшін қолданушының сұрауы.

4. Пакеттi тапсырманың бастауы

Операциялық жүйені жүктеу кезінде бірнеше үдерістер пайда болады. Солардың

кейбірі  жоғарыдеңгейлі  үрдістер  түріне, дəлірек, қолданушымен  жұмыс  жасауын

жəне  берілген  жұмысты  орындауын  қамтамасыз  етеді. Қалған  үдерістер  нақты

компьютерге  келген  поштанын  хаттын  келуіне  байланысты  қосылуын  өңдеу.

Мысалы, бір фондық үдеріс компьютерге түскен поштаның хаттын келуіне арналған

болып табылады. Басқа фондық үдеріс компьютердің web-беттерінде сұрау өңделіп,

алынған  сұрауларға  қызмет  көрсетеді. Электрондық  поштаға, web-беттерге,

жаңалықтарға, басып  шығаруға  жəне  т.б. байланысты  фондық  үдерісті домен  деп

атайды.

Процесстер жүйенiң жүктеуi кеpізнде ғана емес, соңыра жасала алады. Мысалы,



жаңа  процесс (немесе  бiрнеше) ағымдағы  процесстiң  өтiнiшi бойынша  жасалуы

мүмкін.


Əйтсе де, жаңа процесстердi сабақтас жиын ретінде құрастырған қолайлы, бірақ

тəуелсiз  өзара  жұмыс  істейтін  процесстері. Егер  ары  қарай  өңдеу  үшiн  желiден

мəлiметтердiң  үлкен  санының iрiктеуiн  ұйымдастыруға  керек  болса, онда  олардың

сонымен  бiрге  қолданылатын  буферiндегi мəлiметтерді iрiктеуi жəне  орналастыру

үшiн  бiр  процесстi ыңғайлы  жасау, осы  уақытта  екiншi процесс  буферден

мəлiметтерi оқып жəне оларды жұмыстанады. Егер əрбiр процесс көп процессорлық



жүйенiң жағдайында жеке процессорда iске қосылса, тiптi бұл схемалар деректердi

өңдеудi үдетедi.

UNIXта жаңа процесстi fork (тарамдау немесе шанышқы) жасау бір ғана жүйелік

сұрауға бағытталған. Бұл сұрау салу шақырылатын процесстiң дубликатын құрады.

Екi процесстерге forkтың сұрау салуының орындауларынан кейiн - аналық жəне iшкi

- жадтың  бiрдей  түрлерiне  сəйкес  келедi де, жол  орта  жəне  ылғи  бiр  ашық

файлдарды құрады. Əдетте iшкi процессi бар жадтың өз түрiнiң өзгерiсi жəне жаңа

бағдарламаның iске  қосуы  үшiн execve(немесе  ұқсас) жүйелiк  шақыруын

орындайды. Қолданушы  пернетақтада sort командасын  теріп  қабық  жəне sortтың

бағдарламасын  орындаған iшкi процесстiң  тарамдауы  жолымен  құрады. Бұл  екi

сатылық  процесстiң  мағынасы iшкi процесс forkтың  файлдарының  сипаттамасы

өңдеуге  үлгередi де, бiрақ  үйреншiктi енгiзу  құрылымдары  жəне  қателiк  туралы

хабарлардың  қорытындысы  жəне  ағынының  қайта  бағыттауын  орындауы  үшiн

execve əрбiр  үдерісті  көп  процессорлық  жүйенiң  жағдайында  деректердің  іске

қосылуын жеке процессорда өңдейдi.

Win32нiң интерфейсi бір ғана CreateProcess функциясының Windows шақыруына

керек  бағдарламасында  үдерістің  құруы, жəне iске  қосуы  басқарылады. Бұл

функцияның 10 параметрлерi: қорғаудың  əр  түрлi атрибуттары iске  қосуы  керек

болған  бағдарлама  бұл  бағдарламаның  командалық  жол  параметрлерi,

спецификация  үдерісі  жəне  жасалған  үдеріс  туралы  мəлiметке  шамданған

бағдарламаға  қайтарылатын  құрылымға  нұсқағыш, бит  мұрагер  болумен  ашық

бағдарлаушы  файлдар, басымдылықтары  үшiн  ашу  керек  болатын  терезелер.

CreateProcessтардан  басқа Win32де  үдерістердiң  басқаруы  жəне  олардың

синхронизациясы үшiн 100 шақты функциялар бар.



Үрдістің  аяқталуы. Үдеріс  құрылып  болғаннан  соң, ерте  ме  кеш  пе  əйтеуiр

үдеріс бiтедi. Келесі оқиғалардың арқасында:

1. Кəдiмгi шығу (қасақана ).

2. Қателескен шығу (қасақана ).

3. Дұрыс емес қате бойынша шығу (қасақана емес ).

4. Басқа үдеріспен жоюлуы кезінде (қасақана емес ).

Үрдістерде  өз  жұмысының  орындауы  шара  бойынша  бiтедi. Компилятор

бағдарламаның компиляциясының аяқтауларынан кейiн жұмыстың аяқтауы туралы

ОЖды  хабарлану  үшiн  жүйелiк  сұрау  салуды  орындайды. UNIXтерге  бұл  жүйелiк

сұрау салу- exit, Windowsте - ExitProcess.



Ағын моделі

Процесстiң  үлгiсi, екi тəуелсiз  тұжырымдамаларға  негiзделедi: қорлардың

топталуы  жəне  бағдарламаның  орындаулары. Кейде  оларды  бөлу  пайдалы, осыдан

ағын ұғымы шығады.

Бiр жағынан, процесс  бiр  топқа  ағайындас  қорларының бiрiктiруiн əдiс  ретiнде

қарастыруы мүмкiн. Бағдарламаның мəтiнi, мəлiметі, басқа  да  ресурстары болатын

адрестi кеңiстiгі бар.

Басқа жағынан, процесс атқарылатын командалардың ағыны ретiнде немесе жай

ғана  ағын  ретінде  қарастырылуы  мүмкiн. Ағында  бұл  ағымдағы  айнымалы

сақталатын регистрлер əсерлердiң орындау реті бақылайтын командалар есептеуiшi



шақырылған  əрбiр  процедура  үдерістің  қайтарылатын, бірақ  əлі  келмеген  жеке

фреймі болады.

Ағындардың  тұжырымдамасы  бiрнеше  бағдарламалардың  сол  ортасына  бiр

уақыттағы  орындауды  мүмкiндiгінің  үдеріс  үлгiсiне  толығады. Бiр  үдерісте, бiр

компьютерде  параллель  жүретiн  ұқсас  бiрнеше  үдерістерге  бiрнешесi ағындары

параллель  жұмыс iстейді. Ағындар  бiрiншi жағдайда  үдерістері  адрестi кеңiстiгі,

тағы  басқа  қорлары, екiншi жағдайдағы  ашық  файлдарын  бөледi де, нақты

жадтармен  сонымен  бiрге  принтер, дискпен  пайдаланады. Ағындар  үдерістердің

кейбiр қасиеттерiне ие болады, сондықтан кейде оларды ықшамдалған үрдістері деп

атайды. Сонымен бiрге көп тасқындылық термині бiр үрдістегі бiрнеше ағындардың

қолданудың сипаттамасы үшiн қолданылады.

2-сурет. Жеке дара басқару ағындарының үш үрдісі (а); үш басқару ағындарының

бір үрдісі (б)


Əр  қайсысында  жеке  дара  ағыны  жəне  жеке  мекенжайлық  кеңістігі  бар  үш

қарапайым  үрдіс 2а  суретте  келтірілген. 2б  суретте  үш  басқару  ағындарының  бiр

үдерісі  көрсетілген. Екi жағдайда  да  үш  ағын  болады, бiрақ 1а  суретте  өзінің  жеке

мекенжайлық  кеңістігіне, ал 2б  суретте  бір  ғана  мекенжайлық  кеңістігіне  ие.

Ағындарды  бiр  процессоры  бар  жүйеде  көп  тасқынды  үрдістің iске  қосуларында

кезекпен жұмыс iстейдi.



Негізгі əдебиет: 1

[97-123].



Бақылау сұрақтары:

1. Логикалық  командалар  есептеуiшiнен  физикалық  командалар  есептеуiшiнiң

айырмашылығына неде?

2. Үдерісті құру үшін негізгі төрт жағдайды айтып беріңіз.

3. Жаңа үдерісті құруға UNIXтің қанша жүйелiк сұрауы бар?

4. Үдерістің аяқталуына əкелетін жағдайлар.



6 ДƏРІС. Үзілу

Үзулер  есептеуiш  жүйенiң  жеке  құрылымдарының  параллель  жұмыс  жасауын

үйлестiруге  жəне  процессор  жұмыс iстегенде  пайда  болатын  ерекше  күйлерде

сезiнуге  мүмкiндiк  беретiн  тетiктері  болады. Үзу - бұл  жүйеге (ол-шыдан  кейiн

тиiстi үзу өңдеуiнiң программасына) нақтылы оқиғаның пайда болуна, атқарылатын

бағдарламалардың  ықтиярсыз  басқарудың  тапсыруы. Үзулердi енгiзудегі  түпкi

мақсаты - асинхрондық  жұмыс  тəртiбiнiң iске  асыруы  жəне  есептеуiш  кешеннiң

жеке құрылымдарының жұмысының қиғаштауы.

Үзулер  тетiктi аппаратты-программалық  құралдар. Үзілу  жүйесінің  құрылымы

(аппаратты  архитектураға  байланысты) əр  түрлі  бюолуы  мүмкін  болғандықтан,

олардың  барлығы  бір  ғана  ортақ  қасиетке  ие - үзу  процессорды  командалардың

орындау  ретiнiң  өзгерiсiне  мiндеттi түрде  əкелiп  соғады. Есептеуiш  жүйенiң

архитектурасы  үзулерді  өңдеу  механизмінен  тəуелсiз  тетiк  келесi элементтерді

қосады:


1. Үзудi айғақтың анықтауы (үзуге сигналдың қабылдауы) жəне үзудi теңестiру

(4 адымда кеде басқару жүйесі қайтадан іске қосады).

2. Үзiлген үдерістің  күйiн есте  сақтау. Ең алдымен, мысалы, үдерістің  күйiмен

командалар  есептеуiшiнiң (I80x86 CSтың  регистрлерiмен  анықталатын  жəне IP

келесi команданың  мекенжайымен  команданың  нұсқағышымен) мəнін  анықтап,

үдерістің iшiндегi регистрлерi жəне  тағы  басқа  мəлiметке  сонымен  бiрге  тəртiптiң

спецификациясын (мысалы, қолданушы  режимі  немесе  құқықты  қолданбалы) қоса

алады.


3. Басқару  үзулердi өңдеудi iшкi программаға  аппаратты  берiледi. Командалар

есептеуiшiне  ең  оңай  жағдайда  үзулердi өңдеудi iшкi программаның  бастапқы

мекенжайы тоздырып, тиiстi регистрлерде - күйдiң сөзiнен мəлiмет алады. Мысалы,

дамыған  процессорлардан  астамы  сол i80286лардаларға  жəне  келесi 32-бит

микропроцессорлары, i80386мен бастай үзулердi өңдеудi тиiстi iшкi программаның

бастапқы  мекенжайын  анықтауды  күрделi процедураларды, жəне  процессордың

жұмыс  регистрлерiнiң  инициализациясының  кемiнде  күрделi процедурасы

жеткiлiктi іске асырады.



4. Құқықты қолданбалы  программанын  мəліметін 2 адым  қызмет аппаратурасы

көмегімен  сақтауға  болады. Кейбiр  есептеуiш  жүйелерде  үзiлген  үдерістің  күйi

туралы мəлiметтiң қолақпандай көлемiнiң есте сақтауы ескерiледi.

5. Үзулердi өңдеу. Бұл  жұмыстар 3-шi адымдағы  басқаруды  тапсырылған iшкi

программамен  орындай  алады, бiрақ  ол  БЖға  жиiрек  тиiстi iшкi программаның

жолымен келесi шақыруын жүзеге асырылады.

6. Мəліметтердің қайта қалпына келуі, үзілген үдеріске қатысты (4 адымға қайту

этапы).


7. Үзілген программаға қайту

Аппаратты жүзеге 1-3 адымдар асырады, 4-7 адымдар - программалық.

Сонымен, үзулердi тетiктiң  бас  функциялары: үзулердi айырып  тану  немесе

классификация; сəйкесiнше  үзулердi өңдеушiге  басқаруды  тапсыру; үзiлген

бағдарламаға түзу қайту.

Өңдеушiге  бөлетiн  бағдарламадан  өткел  жəне  керi барынша  тез  орындалуы

керек. Тез əдiстерiнiң бiрi қолдану кестелері болып  табылады  да  үзулердiң барлық

мүмкiн  компьютерлерi жəне  тиiстi өңдеушiлердiң  мекенжайын  тiзiмі  болады.

Процессордың iшiндегi регистрлерiнiң үзулерiн өңдеушiге басқару тапсыруларының

алдында  үзiлген  бағдарламаға  түзу  қайту  үшiн  тiкелей  енуi бар  жадта, немесе

жүйелiк стек - system stackте де есте қалады.

Есептеуiш  жүйемен  жұмыс  істегенде  үзулерді  екі  негізгі  сыныпқа  бөлуге

болады: сыртқы (олар кейде асинхрондық деп атайды) жəне ішкі (синхронды).

Сыртқы  үзілу синхронды  жағдайда  үзілу  үрдісінен  тыс, мысалы: таймер

көмегімен  үзілу; сыртқы  құрылғы (енгізу/шығару  бойынша); қоректенубұзылғанда;

есептеуіш  жүйедегі  оператор  пультінің; басқа  процессор  немесе  басқа  есепетеуіш

жүйе көмегімен болатын үзілулер.



Ішкі  үзілу процессордың  жұмысымен  байланатын  жəне  операциялармен

синхронды  олардан  болып  табылған  оқиғалармен  шақырылады. Мысалдармен

үзудегi келесi сұрау салулары болып табылады: бағыттау (атқарылатын команданың

адрестi бөлiгiнде  тыйым  салынған  немесе  бұрыннан  болмайтын  мекенжай

көрсетiлген, үндеу  виртуалды  жадтың  тетiктерiнiң  ұйымының  жанында  болмаған

сегментке немесе бетiне); iске қосылмаған екiлiк комбинацияның операция кодының

өрiсiне  болған  жағдайда; нөлге  бөлудiң  жанында; асыра  толтыру  немесе  реттiң

жоғалуында; бақылаудың құралдарының аппаратураның əр түрлi құрылымдарының

жұмысында жұптықтар, қателердiң қателердiң табылуында болатын үзілулер.

Шындығында  программалық  үзулері  бар  болады. Демек, бұл  үзулер  процессор

командасы  бойынша  тиiстi үзу  командасы  бойынша  болады, не iс  жүзiнде  сол

кəдiмгi iшкi үзу жүзеге асырылады. Осы тетiк түрмен, сонымен қатар кəдiмгi үзу дəл

сондай  əдейi жүйелiк  программалық  модулдарға  ауыстырып  қосуда iшкi

программаға  өткел  ретiнде  ғана  емес  енгiзiлдi. Бұл  кез  келген  командалардың

орындауына  мүмкiндiгi бар  ерекше  құқықты  режимге  процессорының  автоматты

ауыстырып қосуы қамтамасыз етiледi.

Ескертпе  дабыл, шамданған  үзулер, процессор  немесе  өзi процессорларда  тыс

қалыптасады; олар бiр уақытта пайда бола алады. Өңдеу үшiн солардың бiрi таңдау

үзудi əрбiр түрі басымдылықтардың негiзiнде iске асады. Бақылаудың сұлбасындағы

үзулерi (егер аппаратура терiс жұмыс iстесе, онда ақпаратты өңдеуiн жалғастыруға



мағынасы болмайды) ең жоғары басымдылықпен ие болуы керек болатыны анық. 1

суретте  үзулердi өңдеудің  қарапайым  түрі (басымдылықтар) үзулердi көрсеткен.

Демек, басымдылықтың  есепке  алуы  техникалық  құралда  салуға, сонымен  бiрге

есептеу  машинасы  жəне  кешендердiң  көпшiлiктiң  үзудiң  аппаратты  жүзеге

асырылған басымдылықтарынан басқа басқару жүйесiмен анықтала алады да, үзудiң

сигналдарының  өңдеуiн  ретпен  бағдарламалы-аппаратты  басқаруларды  жiбередi.

Екiншi əдiс, үзулердегі  бiрiншi əдісті  толықтыра  қызмет  көрсетудiң  əр  түрлi үзілу

пəндерiн қолдануға мүмкiндiк бередi.

1-сурет. Басылымдылықтар деңгейлерi бойынша үзулердi үлестiр

Үзудi сигналдың  бар  болуы бағдарламаның үзуi мiндеттi түрде емес  атқарушы

шақыруы  керек. Процессор  үзулерден  қорғау  құралдарына  ие  бола  алаы: үзудiң

жеке  сигналдарының  үзулердi жүйенiң  ажыратуы, жасыруы (тыйым). Басқару

жүйесiне  бұл  құралдармен (үзулердi жүйенiң  жұмысын  басқару  үшiн  арнайы

командалар  бар  болады) бағдарламалы  бсқарумен  үзудiң  сигналдарының  өңдеуi,

олардың  өңдеуiн  реттеп  бiраз  уақытқа  немесе  толық  аяққа  басуға  процессор  кiрiс

бойынша  олар  бiрден  жұмыстандыра  ала  бөлiп  шығарып  қоюға  мүмкiндiк  бередi.

Үзудiң операциясы əдетте, ағымдағы команданың орындауын аяқтау тек қана содан

кейiн орындалады. Үзуiн ескертпе дабылы кез келген уақытта пайда болатындығы,

онда  үзу  кезге  тек  қана  оларға  ақылды  реттегi үзудi ескертпе  дабыл  өңделуі

басымдылықтарды  тағайындау  үшiн  дəйектi түрде  өңделе  алған  үзудiң  бiрнеше

сигналдарында  бар  бола  алады. Биiгiрек  басымдылықпен  сигнал  ең  алдымен

қаралудан өтедi, үзудiң өңге сигналдарының өңдеуi кейiнге қалдырылады.

Масканың (үзудiң  сигналдарының  жасыруы) арнайы  регистрлерiмен

бағдарламалы  бсқарумен  қызмет  көрсетудiң  əр  түрлi пəндерiн  жүзеге  асыруға

мүмкiндiк бередi:

- қызмет 

көрсетудi



салыстырмалы 

басымдылықтармен 

биiгiрек


басымдылықтармен  тiптi сұрау  салулар  болған  жағдайда  бөлiнбейдi. Ең  жоғары

басымдылықпен  сұрау  салу  осы  сұрау  салуды  қызмет  көрсетудiң  аяқтауларынан

кейiн қызмет көрсетедi. Осы сұрау салуды қызмет көрсетудi бағдарламадағы мұндай

пəннiң  ұйымдары  үшiн, үзудiң  барлық  өңге  ескертпе  дабылдарына  маска  салып

немесе үзулердi жүйенi жай ғана бөлiп тастауына керек;

абсолюттi басымдылықтармен  ең  жоғары  басымдылықпен  үзу  əрдайым

қызмет  көрсетедi. Үзулердi өңдеу  бұл  тəртiптiң iске  асырулары  үшiн  уақытша

басымдылықпен  алмасуларымен  барлық  сұрау  салулар  маскировка  жасауға  керек.

Демек, сонымен бiрге үзу өңдеуiнiң программаларының үзуi көп деңгейлi үзу болуы


мүмкiн. үзудiң  деңгейлерiнiң  тəртiп  бұнының  сан  сұрау  салуды  басымдылықтан

өзгерiп тəуелдi болады;

қағида  бойынша, стек, немесе, кейде  айтатын,аласа  басымдылықпен  сұрау

салулары LCFS (last come first served - соңынан  келдi - бiрiншi қызмет  көрсеткен)



пəнi бойынша  биiгiрек  басымдылықпен  үзулердi өңдеуге  бөле  алады. Бұл  маска

үзудi бiр  сигналға  да  үстiне  қоймай  жəне  үзулердi жүйенi сөндiрмеуі  үшін  керек

деген сөз.

Егер  үзу  рұқсат  етiлсе, үзулердi жүйе  үзуге  сұрау  салу  пайда  болған  сигналды

белгiлейдi жəне, басқаруды  өңдеудi тиiстi iшкi программаға  бередi. Үзулердi

өңдеулердi iшкi программада екi қызметтiк секцияларда болады. Бұл - үзiлген 2-шi

адымда  сақтай  алмаған  есептiң  контекстiнiң  сақтауы  жəне, керiсiнше, контексттiң

қалпына  келтiруi iске  асатын  соңғы, қорытынды  секция iске  асатын  бiрiншi

секциясы. Үзулердiк  жүйе  үшiн  үзуге  сұрау  қайтадан  сигнал  салуды  сезiнбейдi,

сондықтан  үзулердi өңдеудi iшкi программада  сонан  соң  үзулердi жүйенiң  қайта

қосуы керек, ол үзудi əдетте автоматты жабады (бөлiп тастайды).

2-сурет. Үзулердi өңдеу ОЖ супервизордың қатысуында

Үзулердi өңдеудiң 

қарастырылған (салыстырмалы 

жəне 

абсолюттi



басымдылықтармен, жəне LCFSтың  ереже  бойыншасына) тəртiптерiнiң  қоюы

өңдеудi iшкi программаның  соңында  бiрiншi секциясы iске  асады. Уақытша  үзудi

орталық  секцияның (абсолюттi басымдылықтармен  тəртiптерде  жұмыс iстеудi

жағдайда  жəне LCFSтың  пəнi бойынша) орындаулары  рұқсат  етiлген. Үзулердi

жүйенiң өңдеудi iшкi программаның қорытынды секциясының жұмыстары уақытша

бөлiп тастауы, жəне контексттiң қалпына келтiруiнен кейiн қайта қосуы керек. Бұл

əсерлер iс  жүзiнде  үзулердi өңдеудi əрбiр iшкi программада  орындауға  керек

екендiгi, үзулердi өңдеудiң iшкi программаларының  алғашқы  секциясы  басқару

жүйелерi көпшiлiгiнде үзулердi супервизор  деп  аталатын  арнайы  жүйелiк

программалық модулдерге өңделеді.

Ең  алдымен, үзулердi супервизор  процессордың  бөлетiн  есептеуiш  процесстiң

контекст  анықтайтын  жұмыс  регистрлерi ағымдағы  есептiң  дескрипторында



сақтайды. Ол  бұдан  əрi сол  үзуге  осы (ағымдағы) сұрау  салу  қызмет  көрсетуге

қатысты  əсерлердi орындауы  керек болған iшкi программаны  анықтайды. Əйтеуiр,

соның алдында бұл iшкi программаға басқару, үзулердi супервизорды тапсырылсын

қажеттi үзулердi өңдеудi тəртiпті  орнатады. Басқару  үзулердi өңдеудi iшкi

программаның  орындауларынан  кейiн  сол  есептердiң  диспетчеризациясымен

шұғылданатын  супервизор  модуліне, бұл  жолы  қайта  берiледi. Есептердiң

диспетчерi жəне  одан  таралау, өз  кезегiнде, процессорлық  уақыттың (орындайтын

процесстердiң  арасындағы) үлестiрiлуiн  қабылданған  тəртiппен  сəйкес  сол

процессорды ерекшеленуге шешiнген есептiң контекстi қалпына келтiредi. 2 суретте

қарастырылған схемаға мысал келтiрген.

Үзулердi өңдеудi өзiмiз iшкi программадан  бағдарламаны  тiкелей  қайтаруды

үзiлгеннен бұрын тiкелей бұл жерде жоғын 2 суртте көреміз. Қайтару мекенжайын

тiкелей  қайтаруды  түзу  үшiн  стекте, не  сақтауға  жеткiлiктi процессордың

аппаратурасында iстейдi. Ол LCFSтiң пəнiн (last come - first served) əрдайым жүзеге

асыратындығынан, қабаттасқан  үзулер  жағдайындағы  қайтаруды  мүмкiндiктi бұл

стекте оңай қамтамасыз етедi.




Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет