Орталық санашықтың уақытын пайдалану арқылы басқару. ОЖ- де орталық санашықтың
таратылған белсенділігін беру үшін есепті таңдаудың алгоритміне ОЖ нақты экспулатациялық
қасиетіне байланысты. ОЖ жұмысының тиімділігін бағалау үшін қолданылатын алгоритмді таңдау
толығымен тиімділік критерилерімен анықталады. Сондықтан орталық санашықтың уақытын
пайдалану арқылы басқаруды біз сіздермен ОЖ типтерін қарастырамыз.
Бірінші жағдай. Менде жүйенің үлкен көлемді есептеу қуатын талап ететін көп есептер немесе
программалар бар. Бұл есептерді саналатын есептер деп атайды, олар есептеудің үлкен көлемін талап
етеді және сырт құрылғыларға аз қатынайды. Бұл есептер бір есептеу жүйесінде орындалуы керек. Бұл
есептер дестесінің орындалу кезіндегі жүйенің жұмысы үшін тиімділік критерии не болып табылады?
Қандай параметрлер жиынын айтуға болады: егер олар үлкен болса- онда жақсы, егер керсінше болса
нашар. Бұндай жағдай үшін есептеу жүйесінің жұмыс істеу тиімділігі болып орталық санашықтың
жүктелі дәрежесі болып табылады. Егер орталық санашық күту режимінде аз тұратын болса, ал қалған
үрдістер алмасумен айналысатын болса, онда біз жүйе тиімді жұмыс істей алады деп айта аламыз.
Жүйенің тиімді жұмыс істеуін сәйкес жоспарлау алгоритмін қолданумен жүзеге асыруға болады. ОЖ
мүмкіндігіне қарап біз осы жүйеде бар барлық есептер жиынын өңдеуге жібереміз. Оны
мультипрограммалық режим қамтамассыз етеді. Бұл жағдайда орталық санашықтың уақытын
жоспарлау алгоритмі келесідей: егер орталық санашық бір үрдіске арналған болса, онда осы үрдіс
келесі жағдайлардың бірі келгенше орталық санашықта орналасады:
1.
Сыртқы құрылғыларға қатынау.
2.
Үрдістің айяқталуы.
3.
Үрдістің қайталануының тиянақталған фактісі.
Осы аталған жағдайлардың қайсысы орталық санашыққа беріледі сол кезде басқару келесі үрдіске
беріледі. Бір үрдістен екінші үрдіске басқаруды беру минимилизацияланған. Басқаруды бір үрдістен
екінші үрдіске бергенде ОЖ бірнеше әрекеттер орындауы керек, ал бұл уақыт жоғалуына әкеледі,
бұнда уақыттың жоғалуы минимилизацияланған. ОЖ- нің осындай режимде жұмыс істеуі дестелік
режим деп аталады.
Мысалы, компьютерлік класта отырған бірнеше адам әр қайсысы бөлек – бөлек мәтінді түзетіп
отыр. Әр терминалда мәтіндік түзеткіштің көшірмесі бар. Бірінші жағдайға көрсетілген жоспарлау
алгоритмін қолданатын болсақ жүйеде қандай өзгеріс болатынын қарастырайық. Мысалға,
6
пайдаланушылардың бірі терминалда уаќытша іске ќоспаѓан және белсенділік көрсетпейтін болса.
Орталыќ санашыќтыњ уаќыты осы үрдіспен байланысты, себебі түзеткіш жұмысќа дайын болѓан кезде
бұл үрдіс алмасудыњ аяќталмауын орындамаѓан. Осы уаќытта барлыќ тоќтап ќалѓан пайдаланушылар
уаќытша тоќтап тұрѓан ќолданушыны күтуге тура келеді. Уаќытша тоќтап ќалу жаѓдайы туындайды.
Ол бірінші жаѓдайѓа ыњѓайлы алгоритм, осы жүйеге ењ күшті машина көмегімен де
жарамайтындыѓын білдіреді. Сондыќтан ќамтамассыз ету мәселелерін көп санды есептеу ќызметініњ
ќолданушылар тапсырмасы үшін (интерактивті тапсырма), басќа тиімділік критериінен шыѓатын
басќа алгоритмдер ќолданылады.
Осындай жүйеге пайдаланушыныњ күту уаќыты критериі жарайды: ќандай- да бір ќозѓалысты
орындауѓа ұсыныс жіберген уаќытынан, жүйенніњ ұсынысќа жауабына дейін. Жүйе тиімділігі жүмыс
істесе, онда жүйеге орташа статистикалыќ күту уаќыты азыраќ.
Екінші жаѓдайды ќарастырамыз. Жүйеде үрдістердіњ кейбір саны және жоспаршыныњ орталыќ
санашыќ уаќытын, пайдаланушыныњ сұранысына жүйе реакциясыныњ уаќыты минимальды немесе
кепілді етіп тапсырманы тарату керек. Жүйеде уаќыт кванты деп аталатын (жалпы жаѓдайда, уаќыт
кванты- ол жүйе келтіргенде өзгеретін маѓына), ∆t параметірі ќолданылады. Мультипрограммалыќ
өњдеудегі көптеген үрдістер жиыны екі ќосалќы бөлікке бөлінеді. Бірінші бөлікті орындауды
жалѓастыруѓа дайын есес үрдістер ќұрайды, мысалы өздеріне ауыстыруѓа сұраныс берген және
нәтижені күтіп жатќан үрдістер. Орындауѓа дайын үрдістер де бар. Дәл осы уаќытта орталыќ
санашыќтаѓа үрдіс келесі жаѓдайлардыњ біреуі келгенше оны басќарады:
1. аусытыруѓа сұранысымен назар аудару
2. үрдістіњ аяќталуы
3. осы үрдіске берілген ∆t квант уаќытыныњ сарќылуы
Осы жаѓдайлардыњ біреуі түскенде операциялыќ жүйені жоспарлаушысы орындауѓа дайын
үрдістерден тањдайды, кейбір үрдістер және оѓан орталыќ санашыќ қорларын береді. Ал ол осы
үрдіске тәуелді наќты операция жүйесін ќолданѓан жоспарлау алгоритммен тањдайды. Мысалы, үрдіс
кездейсоќ тањдалынуы мүмкін. Екінші тәсіл үрдістерді тізбектелген өту (артынан жүрумен) болады,
мысалѓа біз үрдістерден алдымен бір жұмысты алып, содан соњ ол босаѓан кезде орталыќ санашыќ
орындауѓа дайын үрдістерге беріледі. Келесі тапсырма алынатын үшінші критери, оратлыќ санашыќта
атќарылмаѓан осы үрдіс болуы мүмкін. Осы жаѓайда жүйе, ењ көп уаќытты, үрдісті тањдай алады.
Осы алгоритмдер операциялыќ жүйеде таратылған болуы керек, олар қарапайым болады, әйтпесе
жүйе тиімсіз жұмыс істейді.
Операциялық жүйенің осындай типті уақыт бөлуі ОЖ деп аталады. Ол пайдаланушы сұранысына
жүйе реакциясының уақыты азайған тәртібінде жұмыс істейді. Сұранысқа жауап уақыты аз болғаны
үшін, шынында қолданушыда барлық жүйе қорларын соған берілгені туралы иллюзия пайда болуы
керек.
Енді келесі тапсырманы қарастырамыз Автопилотпен басқарылатын ұшақ бар делік, онда
автопилот төмендеу операциясын орындайды. Әр ұшақта жерден қанша биіктікте тұратынын өлшейтін
құрал бар. Ұшақтың жұмыс тәртібін басқару функциялары қайсыбір берілген программалар арқылы
компьютер атқарады. Егер бізде автопилот жүйесі бар болса және ұшақ төмендеп бара жатса, онда
жүйе ұшу биіктігі бойынша бақыланады. Осы ұшаққа қатысты бірнеше тапсырмаларды орталық
компьютер шеше алады: ұшу биіктігін бақылайды, жанармайдың деңгейін бақылайды, қозғалтқыш
жұмыстарының көрсеткіші және т.б.д. осы функциялардың басқаруын әр үрдіс өзі алады.
Операциялық жүйе дестесі бізде және бактағы жанармай деңгейін бақылаймыз делік. Осы кезде
авариалық жағдай туындайды, өйткені ұшақ төмендеп барады оны операциялық жүйе байқамайды.
Жүйеде уақыттың бөлінуі болып жатыр делік. Бізде уақыт алмасу жүйесі сапасының бірі тиімсіздігі
болып табылады, яғни жүйеде үрістен – үрдіске ауысу саны көп қарастырылғандықтан, ал бұл
функцияның сыиымдылығы жеткілікті. Тағы осындай жағдай: Биіктік нолге жетті, ал операциялық
жүйе тіркеу кестесінің ауыстыруымен айналысып жатыр, мұндай нұсқада жарамайды. Осындай
тапсырмаларды шешкенде жоспарлаудың өзінің құралы қажет. Осы жағдайда нақты уақыттағы
операциялық жүйе қолданылады, бұл жүйенің кепілді реакциясының алдын ала анықталған жиыны сол
немесе басқа жағдайы пайда болуы негізгі критери болып табылады. Орталық санашықтың уақытын
басқару функциясымен және орталық саншықты жоспарлауда екі фактіге назар аударамыз. Бірінші
факт ол, көбіне есептеу жүйесінің эспулатациялық қасиеті анықталатын ОС уақытын бөлу жоспарлау
жүйесінде таратылған. Біз ОЖ-нің үш типтік түрлерін қарастырамыз: дестелік жүйенің өңделуі, уақыт
бөлу жүйесі және нақты уақыт жүйесі. Бүгінгі таңда нақты уақыт жүйесін ОЖ-ң бір санаты деп айтуға
7
болады. Windows ОЖ-сі қандай да бір объектілерді басқармайды, егер олардың нақты уақыты өте
критикалы болса және де СОЛЯРИС немемсе LINUX т.б ОЖ басқармайды, өйткені осы жүйелер
нақты уақыт жүйесі болып табылмайды.
Бірінші екі режимді, дестелі және уақыт бөлу, жалпы ОЖ-де жасауға болады (вертуальды түрде).
Нақты, үлкен ОЖ-лер аралас жүйелер болып табылады, оларда ОС жоспарлау элементінде
қайталанатын тапсырмаларды басқаратын алгоритм сияқты және интерактивті тапсырма немесе
келесіге қалдырылған тапсырмалар болады.
Достарыңызбен бөлісу: |