Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






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






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

2. Ә р тү рлі ОЖ негіздері концепциясында бір-біріне қ арама-қ айшылық туса не істеуге болады?

3. Ү йлесімділікте жұ мыс істейтін ОЖ-ге процессор архитектурасы қ алай ә сер етеді?

4. Эмулятор атты арнайы программалық қ амтама не ү шін орнатылады?

5. Мультипрограммалық режимнің мультиесептік режимнен айырмашылығ ы

6. Монолитті жә не микроядерлі жү йелерге мысал келтірің із

7. Қ ұ рылымдық ұ йымдастырудың типтері

8. Нақ тылы ұ ақ ыт операциялық жү йесінің критерилері

9. Ұ ақ ыт бө лу ОЖ қ андай режимде жұ мыс жасайды

 

4 дә ріс. ОЖ-де процесстің берілуі. Сигналдар ө ң деу жабдық тары. Ү рдістерді басқ аратын уақ иғ алық тітіктер. Ү рдістер ә рекеттестігі. Ү зу жү йелері.

Процесс тү сінігі. Келесі мысалды қ арастырайық. Егер квадрат тү бірді алу программасын енгізу керек болса, онда ә р тү рлі бастапқ ы (берілгендердің) деректердің тү бірінің мә нін ескере отырып компьютерлік жү йе есептеудің ә р тү рлі екі процессімен айналысады да, ә р тү рлі бастапқ ы деректер ә р тү рлі есептеу жиынын алуғ а ә келіп тірейді. Қ олданушының кө зімен қ арасақ бірдей программа жү ктелген, бірақ екі ә ртү рлі тапсырма ұ йымдастырылғ ан. Енді басқ а мысал. Екі қ олданушы да 1 ден (бір санынан) квадрат тү бір алсын, онда олар ұ қ сас тапсырманы ұ йымдастыру, бірақ оны есептеу жү йесінде уақ ыт бойынша жылжыту арқ ылы жү ктеді. Сол кезде орындап жатқ ан тапсырмалардың біреуі нә тижесінде алынғ ан мә нді баспағ а шығ аруғ а дайындалса жә не енгізу-шығ ару операциясының аяқ талуын кү тсе, ал екіншісі жаң адан тапсырманы орындай бастайды. Дә л осы жағ дайды есептеу жү йесінің ішінде тапсырмалар ұ қ састығ ы туралы айтуғ а бола ма? Жоқ, ө йткені оларды орындайтын процесстің кү йі ә р тү рлі. «Программа» жә не «тапсырма» қ олданушы ұ ғ ымында есептеу жү йесінде болатын жағ дайларды тү сіндіру ү шін орындалмайды. Мұ ндай жағ дайда «программа» жә не «тапсырма» термині статикалық активті емес объектілерді сипаттауғ а арналғ ан. Оның жұ мыс істеу барысында компьютер ә р тү рлі командаларды ө ң дейді жә не айнымалының мә нін ө згертеді. Программа орындалуы ү шін ОЖ оперативті жадының белгілі бір бө лігін (санын) бө ліп беру керек, одан кейін арнайы енгізу-шығ ару қ ұ рылғ ысын немесе файлдарды (кірістегі деректер қ айдан келеді жә не алынғ ан нә тижесін қ айда жеткізу керек) бекітіп беру керек, яғ ни толық ырақ айтсақ есептеу жү йесінің жалпы ресурсының ішінен керек ресурстарды таң дап, белгілеп қ ою керек. Олардың саны жә не конфигурациясы белгілі бір уақ ытта ө згереді. Мұ ндай активті объектілерді сипаттау ү шін компьютер жү йесінің ішінде «программа» жә не «тапсырма» терминімен бірге жаң а термин – «процесс» терминін қ олданатын боламыз. ОЖ-нің басқ аруымен табылатын «процесс» ұ ғ ымы орындалатын командалар жиынымен, ресурстар қ ауымдастығ ымен ерекшеленеді (жады немесе адрестік кең істіктің орындалуы ү шін, сетка, қ олданылғ ан файлдар жә не енгізу-шығ ару қ ұ рылғ ысы ү шін бө лінген) жә не ағ ымдағ ы моментте оның орындалымен (регистр мә ні, есептеуіш, сетка кү йі жә не айнымалы мә ні) ерекшеленеді. Есептеу жү йесін ө ң деуде процесс пен программа арасында ө зара-біркелкі сә йкестік болмайды. Арнайы программа жұ мысы ү шін кейбір ОЖ-де бір ғ ана прцесс немесе бірдей процесс бірнеше ә ртү рлі программаларды орындай алуды ұ йымдастыруы мү мкін. Сонымен бірге, бір ғ ана процессте бір ғ ана программаны ө ң деу керек жағ дайы туса «процессті» орындаушы файлдың кодын, деректерді жә не оның ресурстарын жай динамикалық сипаттау тү рінде қ растыруғ аболмайды. Процесс ОЖ-нің басқ аруымен орындалады, сондық тан онда оның ядросының бір бө лігі ғ ана орындалады (орындаушы файлда болмайтын), арнайы жоспаланғ ан программа авторларымен (мысалы, жү йелік шақ ыруды қ олданыда), сонымен бірге қ арастырылмағ ан, жоспаланбағ ан жағ дайда орындалады (мысалы, ішкі ү зулерді ө ң дегенде).

Процесс кү йі. Есептеу жү йесінде орындайтын барлық абстракцияларды пайдалануда (қ олданушы программасы ғ ана емес, ОЖ-нің белгілі бір бө лігін пайдаланғ анда да), процесстер жиыны ұ йымдастырылады. Бір процессорлы компьютерлік жү йеде уақ ыттық ә рбір сә тін бір процесс қ ана орындай алатыны анық. Мультипрограммалық есептеу жү йесінде бірнеше процесстерді псевдопаралллельді ө ң деу ү шін процессорды бір процесстен екіншісіне ауыстыру кө мегі арқ ылы жетуге болады. Бірінші бір процесс орындала береді, ал қ алғ андары ө зінің кезегін кү тіп тұ рады.

Ә р процес ең аз дегенде екі кү йде болады: бірінші кү йі – «орындалып жатады», жә не де екінші кү йі – процесс «орындалмайды». Процесстің «орындалып жатқ ан» кү йі белгілі бір уақ ыттан кейін ОЖ арқ ылы аяқ талуы, яғ ни тоқ талуы мү мкін, немесе процесс «орындалмайтын» кү йіне ауысуы мү мкін. Процесстің тоқ талу себебі екі жағ дайда болады. Оның ә рі қ арай жұ мыс істеуіне қ андайда бір ә рекет жасау қ ажет болса (мысалы, енгізу-шығ ару операциясын аяқ тау керек болды), бұ л кезде процесс тоқ татылады, немесе ОЖ берілген процесстің жұ мысына бө лінген уақ ыт интервалы бітсе процесс тоқ татылады. Осыдан кейін ОЖ арнайы алгоритм бойынша процесс «орынындалмайтын» кү йде тұ рғ ан кезде процесстердің бірін орындау ү шін оны прцесс «орындалатын» кү йге ауыстырады. Жү йеде пайда болғ ан жаң а процесс алғ ашында процесстің «орындалмайтын» кү йіне ұ рынады.

Бұ л ө те ірі, ө рескел модель, ол «орындау» ү шін таң далып алынғ ан процессті ескермейді, елемейді, белгілі бір ә рекетті орындау ү шін тоқ татылғ андық тан кү тіп тұ ра береді, яғ ни, процессті орындауғ а ә лі дайын емес. Мұ ндай жағ дайғ а ұ рынбас ү шін процесстің «орындалмайтын» кү йін жаң а екі кү йге бө лейік: «дайындық» жә не «кү ту». (3-суретті қ ара)

 

3-сурет. Процесс кү йінің диаграммасы

Жү йеде пайда болатын ә рбір жаң а процесс «дайындық» кү йінде тап болады. ОЖ алгоритмді жоспарлауды пайдаланып процесстердің дайын біреуін таң дап алады да оны «орындалу» кү йіне ауыстырады. «Орындалу» кү йде процесстің программалық кодын табу орындалады. Процесстің мұ ндай кү йден шығ уының ү ш себебі бар:

-ОЖ оның жұ мысын тоқ татады;

-белгілі бір ә рекет болмайынша ол ө з жұ мысын жалғ астыра алмайды жә не ОЖ оны «кү ту» кү йіне ауыстсрады;

-нә тижесінде есептеу жү йесінде ү зіліс пайда болады (мысалы, бө лінген уақ ыттың орындалуы біткен кезде оны таймерден ү зіп тастау), яғ ни «дайындық» кү йіне қ айта оралады.

Енді есептеу жү йесінде процесс болуы ү шін ол «пайда болу» (рождение) кү йі арқ ылы ө туі керек. Процесс «пайда болғ аннан» кейін ө зінің кезегінде процесстің программалық коды жү ктелетін оның кең істікте мекені (адресі) пайда болады. Оғ ан стек жә не жү йелік ресурс бө лінеді жә не осы санауыштың мә ні қ ондырылады т.с.с. «Пайда болғ ан» процесс «дайындық» кү йіне ауысады. Процесс ө зінің жұ мысын аяқ тау кезінде «орындау» кү йінен «орындауды аяқ тау» кү йіне тап болады.

ОЖ-дегі процесстің кү йін бұ дан да жақ сы сипаттауғ а болады, яғ ни процесс кү йінің бір тү рінен екіншісіне ауысуының бірнеше жаң а нұ сқ алары пайда болуы мү мкін. Мысалы, WindowsNT ОЖ ү шін модельдің кү йі – 7 тү рлі, ал Unix ОЖ ү шін – 9 тү рлі. Бірақ барлық ОЖ-лер жоғ арыда кө рсетілген модельдерге бағ ынады.

 

4-сурет. Курстық қ абылдағ ан процесс кү йінің диаграммасы

 

Сигналдар ө ң деу жабдық тары. Сигналдар бір ү рдістен екінші ү рдіске ө ткенде немесе ОЖ ядросында қ андайда бір жағ дайдың анық талуына байланысты тү зіледі. Ү рдістер арасындағ ы қ арым – қ атынасын сигналды жіберу жә не қ абылдау арқ ылы қ арастырайық.

Ү зулердін пайда болуы сияқ ты сигналдардың пайда болуы келесі себептерге байланысты:

- программа ішіндегі кейбір жағ дайлар, мысалы аса толу болғ анда немесе нольге бө лгенде;

- қ ұ рылғ ыдан келген кейбір ақ параттарғ а байланысты, мысалы пернетақ тадан «Ctrl+C» комбинациясын беруге байланысты;

- бір ү рдістің екінші ү рдіске ә рекеттесуіне байланысты, мысалы «SIG_KILL».

Жү йеде тиянақ талғ ан жағ дай жиыны бар, олар жү йде пайда болуы мү мкін. Ә р жағ дайдың ө зінің уникалды аты болады: бұ л аттар ә детте Unix версиясы ү шін бірдей. Бұ л аттарды сигналдар деп атаймыз.

Ү рдістерді басқ аратын уақ иғ алық тітіктер. Ү рдістер ә рекеттестігі. Позициялық тү рде ү рдісті басқ ару ү ш топқ а бө лінеді:

1. тә уелді ү рдістер – ү рдістің барлық ө мір сү ру периодында автономды орындалады; 2. бірігіп орындалатын ү рдістер – таратылатын есептеу алгоритмі негізінде ә рекеттеседі; 3. бә секелес ү рдістер – жалпы қ орлар негізінде ә рекеттеседі.

Ү рдістің ө мірі бірнеше бө лек кезең дерден тұ рады:

1. Ү рдісті қ ұ рунемесе бастапқ ы пайда болуы. ОЖ кесесінде ү рдіс туралы басқ арушы жазба қ ұ рылады. Бұ л жазбада идентификацияланатын ақ парат болады.

2. Инициализация. Бұ нда ү рдістің орындалуына қ ажетті қ орлар анық талады.

3. Ү рдісті белсенділеу. Бұ л кезең де ү рдіске санашық қ оры бө лінеді жә не орындалуғ а жіберіледі.

Ү рдістің орындалу кезінде ол бұ ғ аттау немесе кү ту кү йінде болуы мү мкін.

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

Бә секелес ү рдістерді басқ ару негізіне критикалық интервалда басқ ару ә дісі белгіленген. Бұ л ә дістің негізі коллективті қ атынау ішінде ә р бір ү рдіске ө зінше автономды жұ мыс жасау ү шін уақ ыт интервалын анық тау мағ ынасы жатыр.

Бұ л талаптар келесі тү рде анық талады:

1. ә р бір уақ ыт интервалында тек қ ана бір ү рдіс болу керек

2. интервалда ү рдіс кө п уақ ыт болмауы керек

3. ү рдістер критикалық интервалғ а шығ уды кө п уақ ыт кү тпеу керек.

Кө рсетілген принциптер арнайы басқ аратын программалар кө мегімен жү зеге асырылады, бұ л программаларды жолшамдар деп атайды.

Ү зу мен алып тастау - ол ОЖ-гі кү йлер. Олар программаны немесе аппаратты анық талады. Ү зу немесе алып тастау анық талғ анда санашық сол уақ ытта орындап жатқ ан жұ мысын тоқ татады жә не басқ аруды пайда болғ ан кү йді ө ң дейтін код мекені бойынша жадының ерекше аймағ ына береді. WNT бұ л кодты қ ақ пан ө ң деуші деп атайды. (trap hondeer).

NT ядросы ү зу жә не алып тастауды ажыратады. Ү зу (interrupt)- санашық тың қ андай жұ мыс орындап жатқ анына қ арамайтын кез-келген уақ ытта болатын асинхронды жағ дай. Кө бінесе ү зу енгізушығ ару қ ұ рылғ ыларының ә серінен болуы мү мкін.

Алып тастау (excaption)-синхронды қ ателі қ алып-кү й, машиналық команда арқ ылы орындалады. Мысалы, жадының қ орғ анысының бұ зылуы.

WNT ядросы жү йелік қ ызмет кө рсетудің шақ ыруын нә тиже ретінде қ арастырады. (бірақ ол жү йелік қ ақ пандар).

Қ ақ пандарды ө ң деуші. Қ ақ пан (trop) термині ол санашық пен қ олданылатын механизм. Орындалып жатқ ан ағ ында ү зу немесе нә тиже пайда болғ ан да ол басқ аруды алып ОЖ-ң бекітілген нү ктесіне басқ аруды береді. WNT-де санашық басқ аруды NT ядросындағ ы қ ақ пандарды ө ң деушіге береді. Бұ л модуль каммутационды панельдің рө лін атқ арады: ол санашық генерациялайтын ү зулер мен нә тижелерді қ абылдайды жә не басқ аруды сә йкес жағ дайды ө ң дейтін кодқ а береді.

Қ ақ пан ө ң деушісі ө зінің шақ ыру кезінде машинаның қ алып-кү йін сақ тау ү шін уақ ытша ү зуге тиым салады, ө йткені егер жаң а ү зу немесе нә тиже пайда болса, онда ақ параттар жоғ алып кетер еді. Сол ү шін ол қ ақ пан кадырын қ ұ рады жә не оғ ан ү зілген ағ ынның орындалатын кү йі жайында ақ паратты орналастырады. Ү зу немесе нә тиже ө ң деуді аяқ талғ ан соң бұ л ақ парат ядроғ а ағ ынның ә рі қ арай орындалуына мү мкіндік береді.

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

Мысалы, егер ү зу қ ұ рылғ ыдан болса, онда басқ ару ү зуді ө ң дейтін процедураларына жібереді. (interrupt service routine ISR). Егер ү зу жү йелік қ ызмет кө рсетуден пайда болса, онда ө ң деуіш басқ аруды NT жү йесінің жү йелік қ ызмет кө рсету кодына жібереді. Бө лек нә тиже ядроның нә тижелер диспетчері арқ ылы ө ң деледі.

Ү зуге ү зу диспетчері жауап қ айтарады. Ол ү зудің кө зін анық тап басқ аруды сыртқ ы қ ызмет кө рсететін процедураларғ а немесе ядроның ішкі процедураларына береді.

Ү зудің типтері жә не пұ рсаттылық тары. Ә р тү рлі санашық ә р тү рлі типті жә не ә р тү рлі мө лшер ү зулерді анық тайды. ОЖ танитын ү зу дең гейлерінің стандартты жинақ ысына ү зу диспетчері, ү зудің аппаратты дең гейлерін бейнелейді. Ү зу дең гейлері ү зуді пұ рсаттылығ ымен бө леді. Ядролық режимде ағ ын ө зі орындалып жатқ ан санашық тың ү зу дең гейін кө теріп немесе тө мендетуі мү мкін. Пұ рсаттылық кезегі бойынша ү зу қ ызмет етеді. Ү зу жоғ ары пұ рсаттылығ ымен тө мен пұ рсаттылық ты ү зудің орындалуын басып алады.

 

Ү зу дең гейі Ү зу типтері
1. жоғ арғ ы дең гей 2. қ оректендіру дең гейі 3. санашық тық аралық дең гей 4. таймер дең гейі 5. санашық -қ ұ рылғ ысының дең гейі   6. 1-қ ұ рылғ ының дең гейі   7. диспетчерлі дең гей     8. процедураны асинхронды шақ ыру дең гейі 9. тө менгі дең гей Аппараттық тексеру немесе қ ұ рсым қ атесі Қ оректендірудің жаң ылысуы Басқ а санашық тан сұ раныс Интервалды сұ раныс Пұ рсаттылығ ы жоғ ары енгізу-шығ ару қ ұ рылғ ысы. Пұ рсаттылығ ы тө мен енгізу-шығ ару қ ұ рылғ ысы. Ағ ындарды жоспарлау жә не кейінге қ алдырылғ ан щақ ыру процедураларының ө ң делуі. Процедураларды асинхронды шақ ырудың ө ң делуі Ағ ындардың кә дімгі орындалуы.

 

1 ден 6 дең нейге дейін аппаратты ү зуге арналғ ан;

7-8-программалық ү зулер дең гейі (ядро генерациялайды); 9 дең гей, тө менгі дең гей-ол ү зуге жатпайды.

Ү зулерді орналастыру. Ү зулер кө бінде аппаратты енгізу – шығ ару қ ұ рылғ ысынан болады, олар санашық қ а ө здеріне қ ызмет кө рсету жайында хабар беруі керек. Ү зулерді жасайтын қ ұ рылғ ылар, ОЖ –ге есептеу уақ ытын жә не енгізу- шығ ару операциясын сә йкестендіру арқ ылы санашық ты максимальды жү ктеуді қ амтамассыз етеді. Санашық қ ұ рылғ ыда енгізу – шығ ару операциясын іске қ осады жә не деректер тасымалданғ анша басқ а ағ ындарды орындайды. Қ ұ рылғ ы алмасуды аяқ тағ ан соң, ол келесі қ ызмет кө рсету ү шін ү зуді орындайды. Координатты қ ұ рылғ ылар, баспа қ ұ рылғ ылары, тегергіштер, торапты карталар кө бінесе ү зуді жү зеге асырады.

Негізгі ә дебиеттер1 [31–40], 10 [68-71], 9 [215-225 ] Қ осымша ә дебиеттер16 [64-107], 19 [170–186]






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.