«жаратылыстану» институты


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



бет25/99
Дата04.10.2022
өлшемі2.45 Mb.
#461924
1   ...   21   22   23   24   25   26   27   28   ...   99
ОЖ УМКДд

Кейбір ағын ұғымы жоқ жүйелерде ,процесс шегіндегі параллельді есептеулер жүргізу кезінде проблемалар туындайды.
Ондай қажеттіліктер тууы мумкун. Шындығында да, жүйенің мультипрограммалау кезінде өтк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 мақсаттар үшін операциялық жүйелер көпағынды өңдеу (multithreading ) механизмін ұсынады.Сонымен бiрге,жаңадан жұмыс бірлігі енгізіледі- орындау ағыны, ал «процесс» ұғымы мағынасын өзгертедi. «Ағын » ұғымына процессордың программаның бiр командадан басқаға бір командаға өтуі сәйкес келеді. ОЖ ағындардың,арасындағы процессорлық уақытты үлестiредi. ОЖ процесске барлық оның ағындарымен қолданылатын, адрестік кеңістік және қорлардың жиынын тағайындайды.


Достарыңызбен бөлісу:
1   ...   21   22   23   24   25   26   27   28   ...   99




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

    Басты бет