Автор: Пользователь скрыл имя, 14 Марта 2012 в 17:52, реферат
Бұл рефератта операциялық жүйелердің негізгі концепциялары мен оларды жүзеге асыруға арналған алгоритмдер және мәліметтер құрылымы қарастырылады. Келесідей сұрақтарға жауап іздейміз:
Процесс түсінігі
Процестің қалып-күйі
Процестерді басқару жүйесі
Процестерді диспетчерлеу
Процестерге жүргізілетін операциялар
Процестерді диспетчерлеуімен байланысты кезектер
Процестер диспетчерлеуін орындайтын жоспарлаушылар
КІРІСПЕ 3
НЕГІЗГІ БӨЛІМ 4
Процесс түсінігі 4
Процестің қалып-күйі 4
Процестерді басқару жүйесі 6
Бір процестен басқа процеске көшу 7
Процестерді диспетчерлеуімен байланысты кезектер 7
Процестер диспетчерлеуін орындайтын жоспарлаушылар 9
ҚОРЫТЫНДЫ 12
ПАЙДАЛАНЫЛҒАН ӘДЕБИЕТТЕР 13
МАЗМҰНЫ
КІРІСПЕ 3
НЕГІЗГІ БӨЛІМ 4
Процесс түсінігі 4
Процестің қалып-күйі 4
Процестерді басқару жүйесі 6
Бір процестен басқа процеске көшу 7
Процестерді диспетчерлеуімен байланысты кезектер 7
Процестер диспетчерлеуін орындайтын жоспарлаушылар 9
ҚОРЫТЫНДЫ 12
ПАЙДАЛАНЫЛҒАН ӘДЕБИЕТТЕР 13
Бұл рефератта операциялық жүйелердің негізгі концепциялары мен оларды жүзеге асыруға арналған алгоритмдер және мәліметтер құрылымы қарастырылады. Келесідей сұрақтарға жауап іздейміз:
Мәселелерді жоспарлаудың негізгі мақсаты процессорды толығымен жүктеу болып табылады. Нақты уақыт кеңістігінде, мысалы мобильді құрылғыларда, өндірісті автоматты басқару құрылғыларында жоспарлаушы процестерді берілген уақыт аралығында өңдеу керек.
Процесс (process) – бұл қолданушы программасы, оны қолданушы программа орындалу кезінде пайдаланады. Операциялық жүйе өз жұмысының кезінде көптеген программалар класын орындайды, олар: пакеттік тапсырмалар; уақыт бөлінісі режиміндегі қолданушы программасы; жүйелік программалар мен процестер. Қолданушы программаларын сипаттайтын бірнеше күрделі терминдер бар: процесс (process), жұмыс (job), тапсырма (task).
Процестің негізгі ерекшелігі оның есептеу бірлігінің тізбектеліп орындалуы яғни әрбір процестің тізбекті басқару ағыны бар. Басқару ағыны (control flow) – процесс орындайтын командалар тізбегі. Көптеген күрделі есептер процестердің параллелді орындалу негізінде шешіледі, бірақ ол жайында мәліметтер төменде беріледі.
Процесті құру және онымен операциялық жүйені басқару келесідей маңызды ақпараттардан тұрады:
Мәліметтер секциясы (data section) – негізгі жадының статикалық (әрдайым ерекшеленген, өлшемі өзгеріссіз) ауданы, ол жерде оның глобалдік айнымалылары, жиымдары, құрылымдары сақталады.
Орындалатын команда коды бірінші кезде қосалкы жадыда дискіде сақталады және негізгі жадыға толығымен немесе жартылай жүктеледі егер оған сұраныс жіберілсе.
Орындалу кезінде процесс өзінің қалып күйін келесідей өзгерте алады:
Жаңа (new): Процесс операциялық жүйемен құрылады, бірақ орындалып жатқан жоқ.
Орындалып жатқан (running): Процессорда немесе операциялық жүйемен басқарылатын процессорларда командалар орындалады.
Күтіп тұрған (waiting): Процесс қандай да бір іс-әрекеттің орындалуын күтеді, мысалы енгізу шығаруды аяқтау. Күту режимінде процесс процессордан орын алмайды.
Орындалуға дайын тұрған (ready): Процесс процессордан қор алуды күтеді, оны орындау үшін. Орындалуға дайын күйге процесс әдетте оны құрған кезде немесе енгізу-шығару аяқталғаннан кейін түседі.
Аяқталған (terminated): Процестің орындалуы аяқталды.
Процестің қалып-күйі келесі диаграммада көрсетілген.
Сурет 1. Процесс қалып-күйінің диаграммасы.
Сұлбадан көріп отырғанымыздай жүйеде құрылған жаңа процесс іске қосылу (admitted) сатысынан өтеді, ол операциялық жүйенің көмегімен жүйенің барлық процестеріне кезекке тұрады, содан кейін операциялық жүйе оны орындалуға дайын күйге ауыстырады. Орындалуға дайын процестердің кезегі әдетте процестерді басқарудағы көп кездесетін құрылымдық жүйелердің бірі болып табылады. Орындалуға дайын күйден орындалу күйіне процесс операциялық жүйенің жоспарлаушысымен іске қосылады. Орындалу барысында процесс үзілуі мүмкін (таймер бойынша, қате болу нәтижесінде және т.б.) содан кейін операциялық жүйе оны қарастырған соң қайта орындалуға дайын күйге көшеді. Егер процесте синхронды енгізу-шығару орындалса немесе процесс қандай да бір әрекеттің орындалуын күтсе (мысалы, анықталған уақыт моментін) процесс күту күйіне көшеді. Енгізу-шығару аяқталған соң немесе күтілген әрекет жүзеге асқан соң процесс процессорлық квант уақытын сол арада алмайды, керісінше орындалуға дайын күйге өтеді. Процесс программа аяқталғаннан кейін аяқталған күйге көшеді, мысалы жүйелік шақырылымнан соң exit(c), бұл жерде с-аяқталу коды. Егер с=0 процесс аяқталды деп саналады.
Процестерді басқару жүйесі (Process Control Block – PCB) – операциялық жүйе қолданатын процесті басқаратын мәліметтердің құрылымдық жүйесі, ол әрбір процеспен ассоциацияланатын келесідей ақпараттардан тұрады:
Процестерді басқару жүйесі келесі суретте бейнеленген
Cурет 2. Процестерді басқару жүйесі.
Операциялық жүйе процестерді
басқару кезінде олардың
Сурет 3. Бір процестен басқа процеске көшу
Сұлбада P0 және P1 процестері көрсетілген. Үзілуі немесе жүйелік шақыру кезінде P0 процесінде операциялық жүйе күйін оның РСВ-да сақтайды және процессорды P1 процесіне ауыстырады. Қолданылу мен бос тұру кезеңдері көрсетілген.
Операциялық жүйенің процестерін басқару келесідей болады:
Операциялық жүйе процестерін басқару мен процестің жүйедегі жағдайын әр түрлі кезектер арасындағы миграция ретінде қарастыруға болады. Келесі сұлбада дайын процестер кезегі мен енгізу-шығару құралдарына кезек бейнеленген.
Сурет 4. Дайын процестер кезегі мен енгізу-шығару құрылғыларына кезек.
Сұлбадан көріп отырғанымыздай
дайын процестер кезегінде
Процестердің диспетчерленуі және кезектермен жұмыс келесі сұлбада көрсетілген.
Сурет 5. Процестің диспетчерленуінің графикалық түрі.
Дайын процестер кезегінен
әрбір процесс соңында
Операциялық жүйеде процестер диспетчерленуін әдетте бірнеше жоспарлаушылар орындайды, олардың әрқайсысының шақырылу жиілігі, анықталған міндеті бар. Операциялық жүйелерде үшке дейін әртүрлі жоспарлаушылар болуы мүмкін: ұзақмерзімді, ортамерзімді, қысқамерзімді. Жоспарлаушылардың атқаратын функциялары өздерінің аттарына сәйкес.
Ұзақмерзімді жоспарлаушы
Ұзақмерзімді жоспарлаушы орындалуға дайын әрекеттерді немесе міндеттерді процестер кезегіне қосылуын қадағалайды, яғни процесті жүзеге асыру орындалар алдында ұзақмерзімді жоспарлаушы жаңа процесті дайын процестер кезегіне қосады немесе оның орындалуын тоқтата тұрады. Ұзақмерзімді жоспарлаушы қандай процестер бір уақытта орындалатынын шешеді, яғни ол процестер арасындағы параллелділік пен үйлесілімдікті қадағалайды. Әдетте қарапайым компьютерлерде ұзақмерзімді жоспарлаушылар қолданылмайды, онда жаңа процестер орындалуға автоматты түрде жіберіледі. Бірақ бұл жоспарлаушы үлкен жүйелерде қолдануда өте маңызды, себебі көлемді жүктеме кезінде параллелді орындалатын процестерді қадағалау қажет.
Ортамерзімді жоспарлаушы
Виртуалды жадысы бар барлық жүйелерде ортамерзімді жоспарлаушы процестерді уақытша негізгі жадыдан жанама жадыға тасымалдайды, мысалы қатқыл дискіге. Ортамерзімді жоспарлаушы процесті тасымалдауды келесі шарттар орындалса ғана орындай алады:
Процесс негізгі жадыға көшеді, егер онда оған жеткілікті орын болса немесе процесс күтіп тұрған күйден шықса. Бұл жағдайда жоспарлаушы негізгі жадыны босату үшін басқа процесті шығарып тастайды. Қазіргі таңдағы қосалқы жадыда виртуалды адрестік кеңістікті бейнелеуді жүзеге асыратын көптеген жүйелерде ортамерзімді жоспарлаушы жаңа процестерді негізгі жадыдан шығарылған процесс жүзінде қарастыра отырып ұзақмерзімді жоспарлаушы ретінде қолданыла алады. Соның нәтижесінде жүйе негізгі жадыға программалық кодты жүктейді егер оған ол орындау үшін керек болса, бұл сұраныс бойынша жүктеу немесе “жалқау жүктеу” деп аталады.
Қысқамерзімді жоспарлаушы
Бұл деңгейдегі жоспарлушы қандай процестер келесі орындалу керек және процессор қандай процесс ретінде көрсетілуі жөн екенін анықтайды. Жүйедегі уақыт бөлінісін қамтамасыз ету үшін шығару және енгізу жоспарлаушыларын пайдалануға болады. Мұндай жоспарлаушылармен жұмыс істеу сұлбасы келесі суретте көрсетілген:
Сурет 6. Жүйеге шығару және енгізу жоспарлаушысын енгізу.
Жоғарыда айтылғандарды қысқаша қорытындыласақ, процесс – бұл оны орындау кезіндегі қолданушы программасы. Процестер бумалық және интерфейстік деп ажыратылады. Процесс команда санағышынан, стектен, мәліметтер секциясынан тұрады. Процесс жаңа, орындалуға дайын, күтіп тұрған, орындалып жатқан, аяқталған күйлерде болады. Операциялық жүйе процестерін басқару үшін процестерді басқару блогы құрылады, өз кезегінде ол процессор күйінен, командалар санағышынан, процессор регистрінен, диспетчерлеу ақпаратынан, жадыны басқару ақпаратынан, енгізу-шығару күйі жайында ақпараттан тұрады.
Операциялық жүйедегі процестерді басқару үшін келесідей кезектер қолданылады: тапсырмалар кезегі, орындалуға дайын процестер кезегі, енгізу-шығаруды күтіп тұрған процестер кезегі.
Информация о работе Процестер диспетчерлеуін орындайтын жоспарлаушылар