Студопедия

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

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

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






Негізгі тұғырық кезіндегі қажетті шарттар






Негізгі тупик кезіндегі қ ажетті шарттар:

· Бірлестік шарты;

· Ресурстарды кү ту шарты;

· Дө ң гелек кү ту шарты.

Негізгі тұ ғ ырық тардың пайда болуының шарттары. 1971 жылы Коффман, Элфик жә не Шошани тұ йық тарды тудырудың тө рт шартын қ исынғ а келтірді:

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

2. қ орларды кү ту шарттары (Hold and wait). Процесстер ө здеріне бө лінген қ орларды ұ стап тұ рады жә не сол уақ ытта қ осымша бө лінетін қ орларды кү теді (басқ а процесстердің ә серінен кідірген қ орларды)

3. Қ айта таратпау шарттары (No preemtion). Алдын – ала берілген қ ор процестен мә жбү рлі тү рде алынылмайды... оларды ұ стап тұ рғ ан процес арқ ылы ғ ана босатылады.

4. дө ң гелек кү ту шарттары (Circular wait). Басқ а процестер шынжырлы тү рде талап ететін, ә р – бір процесс бір немесе оданда кө п қ орларды ұ стап тұ руы мү мкін, сол жағ ыдайда процестердің сақ иналы шынжыры болады.

Жазылғ ан бағ дарлама кө мегімен тұ ғ ырық ты шектеуге болады, лектердің ө зара жылдамдығ ына байланысты тұ йық талуларды болдырмаудың арнайы бағ дарламасы жазылуы қ ажет.мысалы 4.7 суретте кө рсетілген А жә не В лектерінің бірдей тә ртіппен қ орлдарды сұ рады сұ раса, онда тұ йық талу тууы мү мкін емес еді. Тұ йық талуды болдырмаудың едә уір тиімді жолы бар, ол ОЖ ә рбір тапсырма жіжеру алдында олардың қ орғ а қ ажеттілігі мен осы мултибағ дарламалық қ осапда туындайтын тұ йық талуларды сараптайды. Солай болғ ан жағ ыдайда жаң а тапсырманы енгізу уақ ытша шегеріледі. ОЖ сонымен қ атар лекреге

Қ орларды тағ айындауда анық талғ ан тә ртіпті пайдалануы мү мкін, мысалы, қ орлар операциялық жү йеде, анық талғ ан тә ртіппен барлық лектерге ортақ бө лінуі мү мкін.

 

Тұ ғ ырық тан кейінгі қ алыптасу. Тұ ғ ырық ты табу ол фактіні орнату, осы жағ дайғ а қ атыстырылғ ан барлық процестер мен қ орларды жә не тұ йық талуларды анық тау. Тұ йық талу жағ дайының алғ ашқ ы ү ш шарты орындалғ анда табу алгартитімдері пайдаланылады. Содан кейін дө ң гелек кү ту режімі тексеріледі. Осы жағ дайда еске тү сірілген жолдардағ ы қ орларды бө лу белсенді пайдаланылады.

Анық тау алгоритімі ө зіне жү ктелген міндеттерді толық тай орындап тұ йық талуды табады делік. Содан ә рі не болады. Тағ ы бір жолы қ алпына келтіріліп жү йені арық арай жү мыс істетеді. Осы бө лімде біз тұ йық талудан кейінгі қ алпына келтірудің тү рлі тә сілдерін қ арастырамыз.

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

Факторлармен бірге қ алпына келтіру қ иындық тары

l кө птеген жү йелерде процесті тоқ татудың тиісінше нә тижелілігі жоқ, оны жү йеден алып шығ ып жә не оны нә тижесіне сә йкес қ айта қ алыптастыру

l егер ондай жү йе болғ ан кү нде де, ол кө п шығ ын мен оператор назарын кө п қ ажет етеді

l кү рделі тұ йық талудан кейінгі қ алпына келтіру кө п жұ мысты қ ажет етеді

 

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

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

 

Кейін шегіну арқ ылы қ алпына келтіру. Бұ л барынша мү мкін, ең нә тижелі тоқ тату жә не қ айта қ ұ рудың тә сілі

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

Тұ йық талу анық талғ анда, онда қ андай қ орлар дө ң гелек кү ту цикліне қ атысқ анын байқ ауғ а болады.

Бір процесті жою арқ ылы қ алпына келтіру. Тұ йық талуды шектеудің ең қ арапайым, дө рекі тә сілі – бір немесе одван да кп процестерді жою. Мысалы циклдегі процесті жою. Онда қ алғ ан процестер сә тті орындалуы мү мкін. Егер бұ л кө мсектеспесе онда тағ ы бір процесті жоюғ а болады.

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

Қ орларды бө лу арқ ылы тұ йық талуларды шектеу. Процесс еркіне пайдалануғ а берілген қ ор бұ л қ ауіпті еместігіне шешім қ абылдауы қ ажет. Мұ надай сұ рақ туады: тұ йық талулардан қ ашатын жә не дұ рыс шешім қ абылдайтын алгоритім бар ма? Жауабы – бар, біз тұ йық талулардан қ аша аламыз, егер белгілі біа ақ парат алдын ала анық талуы мү мкін болса. Осы секцияда біз тұ йық талудың алдын алу жұ мыстарын қ орларды тү пкілікті бө лу арқ ылы жү ргізуді қ арастырамыз.

Тұ йық талулардың алдын алу алгоритімдері қ ауіпсіз жағ дайлар концепциясына негізделеді

Банкирлердің тұ йық талулардың алдын алуы жә не алгоритімдері. Тұ йық талулардаң қ ашуғ а болады егер қ орларды рационалды тү рде пайдаланып, белгілі бір тә ртіпті ұ стай отырып. Алгоритімдер арасында кең інен танымалы ол – Дейкстрой ұ сынғ ан, банкирлік алгоритім.

Жү йедегі n қ ұ рылғ ы бар делік, мысалы лента. Алгоритім тә ртібі тө мендегідей:

10 қ ұ рылғ ы іске қ осылғ ан, ал 2 қ ұ рылғ ы қ осалқ ы бар, 12 қ ұ рылғ ымен ү ш тұ тынушы жұ мыс істейтін жү йе сенімділігіне мысал келтірейік. Ағ ымдағ ы жү йе тө мендегідей:

  Ағ ымдағ ы саны Максималдық қ ажеттілік
Бірінші тұ тынушы    
Екінші тұ тынушы    
Ү ү шінші тұ тынушы    

 

Дә л осы жағ ыдай сенімді. Жү йе ең алдымен екінші тұ тынушына қ анағ аттандырады да ө зінің 6 қ ұ рылғ ысыныың босағ анына дейін кү теді. Содан кейін басқ а тұ тынушыларды қ анағ аттандыра алады.

Міндетті тү рде тұ йқ талу болады деген термин сенімді жү йеде қ олданылмайды. Ол тек қ ана сә тсіз жағ ыдайларда жү йе тұ йық талуғ а тү сіп қ алуы мү мкіндігін ескертеді.

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

l Банкир алгоритімі бекітілген қ орлар санына сә йкес орындалады

l Он требует, чтобы число работающих пользователей оставалось постоянным

l Осы алгоритім белгілі уақ ыт аралығ ында тапсырысты қ анағ аттандыруды талап едеді

l Алгоритім тұ тынушылар қ орларды қ айтаратындығ ына кеілдік беруін талап етеді.

l Тұ тынушылар алдан ала қ орлар санын кө рсетуін талап етеді. Қ орлардың динамикалық бө лінуіне сә йкес тұ тынушыларғ а қ ажетті қ орлар сенын анық тау ө те қ иын.

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

Ө зара байланыс шарттарын бұ зу. Егер жү йеде бө лінген қ орлар болмаса тұ йық талу болмайды. Егер де жалпылау қ асиеті болса мысалы принтерге ө зара хауз тудыра отырып екі процесті бір принтеде орындауғ а болады. Спулинг арқ ылы бірнеше процесті бір уақ ытта орындау мү мкін. Бұ л жағ дайда тұ йық талу болмайды.

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

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

l ә рбір процес ө зіне қ ажетті қ орлардық олма қ ол талап етуі қ ажет жә не барлық қ орлар мү мкін болғ анғ а дейін жұ мысты бастамау керек.

l Егерпроцесс жұ мыс істеу барысында қ осымша қ орды бө лу мү мкін болмаса онда ол бастапқ ы пайдаланғ ан қ орларды босатып, қ осымша қ ор бө лінген соң ә рекетін қ айта бастауы керек.

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

Қ айта бө лірмеу принціптерін бұ зу. Хавендердің екінші тә сілі арқ ылы процесстер жұ мысын аяқ тағ анан соң қ ажетті қ орларды алу. Егер бұ л ә рқ ашан мү мкін болса тұ йық талудың ү шінші шартын орыгндама-ақ жұ мысты аяқ тауғ а болар еді. Егер процесс жұ мыс істеп отырғ ан қ орды уақ ыт аяқ талмай босатуғ а тура келсе, онда ол барлық атқ арғ ан жұ мыстарын жоғ алтады. можно отбирать ресурсы у удерживающих их процессов до завершения этих процессов.

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

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

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

Немесе ә рбір қ орғ а нө мір берім процес кезінде ө су ретімен қ орларды талап етді қ алыптастыру. Сонда дө ң гелек кү ту режімі туындауы мү мкін емес.

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

1. Бір процесс қ атысқ ан тұ ғ ырық мысалысын келтірің із.

2. Ү ш процесс жә не ү ш ресурс бар тұ ғ ырық мысалысын келтірің із.

3. Тұ ғ ырық болудың негізгі тө рт шарттары.

Дә ріс №

Тақ ырыбы: Жадыны басқ ару. Жадты басқ ару стратегиясы.

Дә рістің сұ рақ тары:

1. Жадтың иерархиясы.

2. Жадыны ұ йымдастыру тү рлерінің эволюциясы.

3. Жадыны парақ тық жә не сегменттік ұ йымдастырудың ерекшелң ктері.

4. Жадыны басқ ару стратегиялары.

Жадыны басқ ару. Жады дегеніміз оперативті сақ тау қ ұ рылысы, қ атқ ыл дискіге қ арағ анда, ішкі жады деп атайды. Оперативті жадыны сақ тау ү шін ә рдайым электр тоғ ы қ ажет. Жады ішкі ресурс болып табылады, мультибағ дарламалау кезінде жү йенің ө ту тә сілі кө бейеді, бірақ бө лек жолды процесс бір бағ дарламалық режимде орындалғ аннан гө рі ө зі ешқ ашан тез орындала алмайды. Жадының негізгі қ ызметі, процессор жұ мысты жадыда сақ тағ ан кезде ғ ана орындайды.

Мультибағ дарламалық жү йедегі жадыны басқ ару оперативтік жү йенің функциялары:

l Бос жә не толық жадыны тексеру;

l Жадыны процесстерге бө лу жә не процесс біткенде жадыны тазарту;

l Негізгі жадығ а барлық процесстер симағ ан кезінде, оперативтік жадыдан дискіге процесстер шығ ару;

l Оперативті жадыда орын босағ анда, процесстерді сонда қ айтару;

l Физикалық жадының нақ ты аймағ ына бағ дарлама мекен-жайын жө ң деу;

Жадыны басқ арудың барлық ә дістерін екі классқ а бө луге болады: оперативті жадымен диск арасында процесстерді алмастыру ә дісі жә не бұ л істі жасамайтын ә дістер.

Оперативті жадыны басқ арудың қ арапайым тү рі – ол белгіленген мө лшердегі бө ліктер бө лу. Орындалатын келесі есеп, не жалпы кезектен, не бір бө ліктегі кезектен тұ рады.

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

Мекенжай тү рлері.
Айнымалы жә не команда идентификациясы ү шін ә р тү рлі кезең дерде бағ дарламалардың ө мірлік мерзімін символдық аттар, виртуалды мекен-жайлар жә не физикалық мекен-жай қ олданылады

l Символдық аттарды қ олданушы бағ дарламалық жасау барысында алгоритм тілдерді қ олданылады.

l Кейде математиклық немесе логикалық деп аталатын виртуалды мекен-жайлы транслятор ө ң деп бағ дарламаны машинаның тіліне аударады.

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

Айнымалылар жә не командалар орнында физикалық мекен-жай ұ яшық тың оперативтік жадының номерімен сә йкес болады. Виртуалдық мекен-жайдың жиынтығ ы виртуалды мекен-жайдың кең істігі деп аталады. Процесстердің виртуалдық мекен-жайдың кең істік аралығ ы бірдей болады.

Ә р тү рлі процесстердің командасы мен айнымалылар виртуалды мекен-жайлардың тура келуі қ ақ тығ ысқ а ә келмейді, ө йткені жадыда бір уақ ытта айнымалы болса, онда оперативтік жү йе ә р тү рлі физикалық мекен-жайда кө рсетіледі. Егерде бірнеше процесстер жалпы деректерді немесе шартты белгілер жү йесін бө лу қ ажет болса, онда оперативтік жү йесі сол процесстердің виртуалды мекен-жай кең істігіндегі тиісті бө лігін физикалық жадының сол бір бө лігінде кө рсетеді.


Ә р тү рлі оперативтік жү йеде виртуалды мекен-жай кең істігі қ ұ рылысының амалы қ олданылады. Кейбір оперативтік жү йеде виртуалдық мекен-жай физикалық жады сияқ ты ұ здіксіз сызық тық жү йелікте беріледі. Сонымен қ оса виртуалды мекен-жай біршама ығ ысу (ә детте бұ л 000 ……………000) – жекеше бір сан виртуалды мекен-жай болады. Мекен-жайдың мұ ндай тү рін сызық тық виртуалды мекен-жай дейді. 5.2.сурет






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