Дәрістік сабақ конспектілері. дәріс



Pdf көрінісі
бет16/30
Дата24.01.2023
өлшемі0,66 Mb.
#62596
түріСабақ
1   ...   12   13   14   15   16   17   18   19   ...   30
Байланысты:
ДӘРІСТЕР 1-15 Операциялық жүйелер (1)

Процесстің тоқтатылуы. «Орындау» күйінде тұрған процесс жұмысы қандай да бір үзілудің 
нәтижесінде тоқтатылады. Процессор команда санауышын автоматты түрде сақтайды және орындау 
процессі стектің бір немесе бірнеше регистрін сақтайды, одан кейін басқаруды берілген үзілуді 
өңдейтін арнайы адреске береді. Осылайша үзілуді өңдеуге арналған hardware жұмысы аяқталады. 
Көрсетілген адресте әдетте ОЖ-нің бір бөлігі ғана болады. Ол PCB-ғы процесстің жүйелік және 
регистрлік жанамасының динамикалық бөлігін сақтайды, процессті «дайындық» күйінде ауыстырады 
және ол үзілуді өңдеуге кіріседі, яғни, үзілу кезінде пайда болатын белгілі бір әрекеттерді орындауға 
кіріседі.
Процесстің қоршалып қалуы (блокирование). Жұмысты әрі қарай жалғастыра алмаған кезде 
немесе есептеу жүйесіндегі кез-келген бір оқиғаның пайда болуын күтпей әрекет жасаған кезде 
процесс қоршалып қалады. Бұл жағдайдан шығу үшін ол арнайы жүйелік шақырудың көмегімен ОЖ-
ден көмек сұрайды. ОЖ жүйелік шақыруды өңдейді (енгізу-шығару операциясын реттейді, процесс 
кезінде процессті қосады, құрылғының босауын және оқиғаның болуын күтеді, және т.б.) және РСВ-ға 
қажетінше процесс жанамасының керек бөлігін сақтайды, процессті «орындалу» күйінен «күту» 
күйіне ауыстырады. 
Процессті қоршалып қалудан құтқару (разблокирование). Жүйеде қандай да бір оқиға болып 
қалғаннан кейін, ол оқиғаның қандай екенін нақты анықтау керек. Содан кейін ОЖ оқиғаның «күту» 
күйінде беріген тұрғаны бар ма екенін тексереді, егер бар болса оқиғаның пайда болуына байланысты 
қажет әрекеттерді орындай отырып, «дайындық» күйіне ауыстырады (мысалы, күтіп тұрған процесс 
кезегі үшін енгізу-шығару операциясын жібереді және т.с.с. 
Жанамаға қосылу (переключение).Осыған дейін біз процесстерде болатын операцияларды, яғни 
бір-біріне тәуелсіз операцияларды қарастырдық. Шын мәнінде мультипрограммалық ОЖ қызметі, 
яғни әр түрлі процесстерді орындайтын және де бірінен екіншісіне ауысатын процесстерді процессор 
ауысуын қадағалайтын операция тізбектерінен тұрады. 
Кейбір процесстерді процессор арқылы орындағанда құрылғыда енгізу-шығару құрылғысынан 
операцияның соңын ескеретін берілулер байқалғанда үзілулер түзіле бастайды. Процесс орындалып 
жатқанда тоқтату операциясы өндіріледі. Әрі қарай ОЖ процессті қоршалып қалудан құтқарады және 
жоспарды орындауда таңдалған тоқтап қалған немесе жаңа процессті жүктеу іске асады. Нәтижесінде 
«орындау» күйінде тұрған енгізу-шығаруды аяқтау туралы ақпаратты өңдейтін процесстер орын 
ауыстырады. 
Процессордағы бір процесстен екіншісіне ауысу үшін орындаушы процесстің жанамасын 
міндетті түрде сақтау керек және процессор ауысатын процесс жанамасын қалпына келтіру керек. 
Мұндай процесстердің сақтау/қалпына келтіру жұмысының қабілеттілігін көрсететін процедура 
жанамасымен ауысу деп аталады. 
Көпесептілік . Санашық бір уақытта тек бір ағынды орындайды. Бірақ көпесептіліқ операциялық 
жүйеде пайдаланушыға бірнеше программаларды пайдалануға мүмкіндік береді: 
- бір қордың босағанын немесе ағынның орындалуы үзілгенше ағын қолданылады; 
- ағынның мәнмәтіні сақталады; 
- ағынның мәнмәтіні жүктеледі 
- орндалуды күткен ағындар бар болғанша бұл қайталау қайталанады. 
Санашықтың бір ағынды орындау кезінде басқа ағынның орындалуына қайта қосылуын 
мәнмәтінінің қайта қосылуы дейміз. 
Көпесептілік жүйе орындайтын жұмыстың мөлшерін көбейтеді, өйткені көп ағындар үзілмей 
орындалмайды. Ағындар орындалуын тоқтатып, мысалы енгізу-шығару құрылғысының босауын күтуі 
мүмкін. Көпесептіліктің арқасында бір ағын күтуде болса, басқа ағын орындалуы мүмкін, соның 
арқасында санашықтың уақыты босқа кетпейді. 
Ығыстыратын көпесептілік - көпесептіліктің түрі, бұнда ағынның басқа ағындардың 
орындалуына өзбетінше санашықтың босатуын операциялық жүйе күтпейді. Оның орнына алдын ала 
берілген уақытта немесе пұрсаттылығы жоғары ағын орындалуға дайн болса операциялық жүйе 
ағынды үзеді. Ығыстыру бір ағынның санашықты толық алуынан сақтайды және басқа ағындарға 
санашықтың уақытын қолдануға мүмкіндік береді. 
NT орындалу жүйесі – ығыстыратын көпесептілік жүйесі және Windows негізгі ортасы мен Win32 
бағыныңқы жүйесі болып табылады. Ығыстырмайтын Windows версиясында MS-DOS-қа 
көпесептілікке жету үшін, ағын өз бетінше санашықтың басқаруын беру қажет. Нашар программалар 
басқа қолданбаларға немесе жүйеге кедергі жасап санашықты жаулап алуы мүмкін еді.


26 
Кейбір кезде екі ағынға жалпы бір мақсатқа жету үшін бір бірімен әрекеттесуі қажет. Мысалы, С 
компиляторында бір ағын С тілінде программаның өндеуін орындаса, ал екінші ағын – бірінші 
ағынның жұмысының нәтижесін қабылдап және оны объективті кодқа компилляциялауы мүмкін. Бұл 
екі ағынға бір бірінің деректерінің алмасу тәсіліне қажет. 
Санашықтың өндеуі және программаның компилляциясы екі үрдіспен (әр қайыссының бір ағыны 
бар), бір үрдістің орындалуына қарағанда тез болуы керек, өйткені көпесептілік операциялық жүйеде 
санашықтың ағынын немесе компиллятордың ағынын кезек кезек орындауы мүмкін. Санашық бірігіп 
қолданатын буферге бір нәрсе орналастырса, компилятор өзінің жұмысын бастауы мүмкін. Осыған 
ұқсас екі немесе бірнеше орында бір уақытта орындалатын қолданбаларды, паралельді қолданбалар 
дейміз.  Бір санашықты компьютерде паралельді қолданбалар пайдалы, ал көпсанашықтыларда ол өте 
пайдалы. 
Көпағындық. Паралельдікке жету үшін екі үрдісті қолдану барлық жағдайда тиімді емес. WinNT 
бұл проблеманы шешу үшін ыңғайлы жадыны бірігіп қолданатын механизмдердін құрады. Бұл 
механизмдерді қолданған жағдайларда да басқа проблемалар болуы мүмкін, сол жағдайда 
паралельдікке жету үшін көпағынды үрдіс қолданылады. 
Көпағынды үрдістің екі немесе бірнеше ағындары болады олар бірігіп бір адрестік кеңістікті 
және қорды қолданады. 
NT-ң әр үрдісі бір ағынмен құрылады. Қажет болса программа үрдіс ішінде қосымша ағындарды 
құруы мүмкін. Олар көбінесе программада асинхронды операцияларды орындау үшін қолданылады 
(операциялар кез келген уақытта орындалады). Бұл категорияға енгізу-шығару операциялары кіреді. 
Бір ағынды негізгі программаның орындалуына қолданып, және екінші ағынды енгізу-шығару 
құрылғысының сұранысына құрып, сонда жүйе бір санашықта бөлек екі операция орындауына 
болады, бұл жағдайда көпесептілік орын табады. Көпсанашықты компьютерде бұл екі ағын бірге 
орындалуы мүмкін, және басқа үрдіс құруына қажеті жоқ. 
Ағындарды қолданып параллелизмге жету үшін программа бір үрдісте екі немесе бірнеше ағын 
құрады. Көпағындық үрдістер паралельдікке жетеді және екі үрдісті қолдануымен байланысты 
кемшіліктері жоқ. Ағындар үрдіске қарағанда тез құрылады. Одан бөлек үрдістің ағындары бір 
жадыны қолданады, өздерінің стегі және регистр мәндерін алып тастағанда. Ерекше деректер алмасу 
механизмін керек етпейді. Бір ағын өзінің нәтижесін жадыға жазады, ал екінші ағын оларды оқиды. 
Сонымен бірге үрдістің барлық қорлары оның барлық ағындарымен бірдей қолданылады. Ағындардың 
орындалу кезегін анықтау үшін ядро пұрсаттылыққа негізделген сұлбасын қолданады. Пұрсаттылығы 
жоғары ағын пұрсаттылығы төмен ағыннан бұрын орындалады, ядро ағындардың пұрсаттылығын 
өзгертіп тұрады, сол арқылы олардың бәрінің орындалуына кепілдік береді. 
Көпағынды үрдісті қолдану – серверлі қолданбаларға тиімді шешім, ол клиенттерден сұраныс 
қабылдайды және әр сұраныс бойынша бір кодты орындайды. Мысалы, файл-сервер файлдармен 
жұмыс жасайтын операциялар, бірақ әр сұраныс серверден өзінің файлымен жұмыс істеуді сұрасада, 
сервер программасы жадыға тек бір рет жүктеледі. Әр келетін сұраныс қажет функциясын 
орындайтын сервердің бөлек ағындарымен қабылданады және өңделеді.
WinNT – де паралельдікке жету үшін екі үрдісті қолданады олар арнайы арналар арқылы 
әрекеттеседі. Сондықтан WinNT бағыныңқы жүйелері бөлек серверлі үрдістер ретінде жүзеге 
асырылған және қорғалған деп аталады.
Негізгі әдебиеттер 9[102–113], 3 [85-91] 
Қосымша әдебиеттер 18 [69-87], 19 [104-126] 


Достарыңызбен бөлісу:
1   ...   12   13   14   15   16   17   18   19   ...   30




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

    Басты бет