Операциялық жүйелердің даму бағыттары

Автор работы: Пользователь скрыл имя, 10 Марта 2013 в 18:44, курс лекций

Описание работы

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

Файлы: 1 файл

1 дәріс.doc

— 93.00 Кб (Скачать файл)

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

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

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

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

 Бұл терминдердің  негізгі айырмашылығы.

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

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

    1. ОЖ және қолданбалы программа арасындағы интерфейсті ұйымдастыру;

2.  Жадыдағы тапсырмалардан кезек ұйымдастыру;

3.  Бір тапсырмадан  екінші тапсырмаға ауысу;

4.  Ақпаратты  жадыжын таңдау және аусытыру, орналастыру процессін реттеу;

5. Файлдар түріндегі  сыртқы тасымалдауыштардағы ақпараттардың  сақталуын ұйымдастыру және анықталған категориядағы қолданушыға нақты файлмен қатынасты қамтамасыз ету;

6. Коммуникация  құралдарымен қамтамасыздандыру;

7. Деректерді  мүлтіксіз (корректно) алмастыру  үшін әр түрлі ресурстармен  жұмыс істеген кезде пайда  болатын және өз әрекеттерінің  координациясын программамен алдын ала ескеретін жанжалды (конфликт) оқиғаларды шешу керек, яғни: жүйені синхронизациялау құралдарымен жабдықтау керек. Келесі период (1980 жылдан қазірге дейін)  дербес компьютерлерде шығарылатын есептердің даму күрделілігі мен әр түрлілігі, олардың жұмыстарының сенімділігін арттыру қажеттілігі, үлкен есептеу машинасы архитектурасына тән барлық қасиеттердің практикада жолдануына әкеледі.

  Соңғы операциялық  жүйелер дербес компьютерлер  үшін мультипрограммалық және  мультиесептік режимдерді жүзеге асырады. Негізгі сәулеттік принциптері бойынша операциялық жүйені микроядролық және монолиттіге бөлуге болады.  Бір жағынан бұл бөлініс шартты түрде көрсетілген. Мысал келтіретін болсақ микроядролық операциялық жүйеге QNX негізгі уақыт операциялық жүйесін қатынастыруға болады. Ал монолитті  операциялық жүйесі  WIN 95/98  немесе Linux  операциялық жүйесі. Win ядросын біз өзгерте  алмаймыз , бізге оның алғашқы кодтары белгісіз және бізде ядроны жинау үшін арналған программалар жоқ.  Linux  ОЖ-не біз керек программалық модульдермен драйверларды қосып ядроны жинауымызға болады.

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

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

 Текстің  редакциялауы, программаны аударуы,  оның құрастыруы, орындалуы үрдіс  болуы мүмкін. Бір программаны  аудару ол бір үрдіс, ал келесі программаны аудару – ол басқа үрдіс.

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

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

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

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

Бұл  келісім  жадыда бірнеше үрдістің санашықтың босауын күтіп, ал бірнеше үрдістер босаған қорларды қолдануға дайын  кезде орындалады. Бір қорды қолдану  үшін ( енгізу –шығару құрылғысы, деректер массиві, оперативті жад т.б.)  үрдіс операциялық жүйенің супервизорына қатынасады. Супервизор-орталық басқару мөдулінен тұрады, бұл мөдул бірнеше мөдулден тұрады: енгізу-шығару супервизоры, үзу супервизоры, программалар супервизоры, есептер диспетчері т.б. –негізгі шақыру арқылы (командалар ) – өзінің шартын хабарлайды. Бұл кезде қордың түрі көрсетіледі, керек болса оның  мөлшемі (мысалы жолшық саны , баспа құрылғысы,шығатын деректердің мөлшемі т.б.)

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

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

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

  1. Сыртқы құрылғыларға қатынау.
  2. Үрдістің  айяқталуы.
  3. Үрдістің қайталануының тиянақталған фактісі.

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

Мысалы, компьютерлік класта отырған бірнеше адам  әр қайсысы бөлек – бөлек  мәтінді түзетіп отыр. Әр терминалда мәтіндік түзеткіштің көшірмесі бар. Бірінші жағдайға көрсетілген жоспарлау алгоритмін қолданатын болсақ жүйеде қандай өзгеріс болатынын қарастырайық. Мысалға, пайдаланушылардың бірі терминалда уаќытша іске ќоспаѓан және белсенділік көрсетпейтін болса. Орталыќ санашыќтыњ уаќыты осы үрдіспен байланысты, себебі түзеткіш жұмысќа дайын болѓан кезде бұл үрдіс алмасудыњ аяќталмауын орындамаѓан.  Осы уаќытта барлыќ тоќтап ќалѓан пайдаланушылар  уаќытша тоќтап тұрѓан ќолданушыны күтуге тура келеді. Уаќытша тоќтап ќалу жаѓдайы туындайды. Ол бірінші жаѓдайѓа ыњѓайлы алгоритм, осы жүйеге ењ күшті машина көмегімен де жарамайтындыѓын білдіреді. Сондыќтан ќамтамассыз ету мәселелерін көп санды есептеу ќызметініњ ќолданушылар тапсырмасы үшін  (интерактивті тапсырма), басќа тиімділік критериінен шыѓатын басќа алгоритмдер ќолданылады.

Осындай  жүйеге пайдаланушыныњ күту уаќыты критериі жарайды: ќандай- да бір ќозѓалысты орындауѓа ұсыныс жіберген уаќытынан, жүйенніњ ұсынысќа жауабына дейін. Жүйе тиімділігі жүмыс істесе, онда жүйеге орташа статистикалыќ күту уаќыты азыраќ.

Екінші жаѓдайды ќарастырамыз. Жүйеде үрдістердіњ кейбір саны және жоспаршыныњ орталыќ санашыќ  уаќытын, пайдаланушыныњ сұранысына жүйе реакциясыныњ уаќыты минимальды немесе кепілді етіп тапсырманы тарату керек. Жүйеде  уаќыт кванты деп аталатын (жалпы жаѓдайда, уаќыт кванты- ол жүйе келтіргенде өзгеретін маѓына), ∆t параметірі ќолданылады. Мультипрограммалыќ өњдеудегі көптеген үрдістер жиыны екі ќосалќы бөлікке бөлінеді. Бірінші бөлікті орындауды жалѓастыруѓа дайын есес үрдістер ќұрайды, мысалы өздеріне ауыстыруѓа сұраныс берген және нәтижені күтіп жатќан үрдістер. Орындауѓа дайын үрдістер де бар. Дәл осы уаќытта орталыќ санашыќтаѓа үрдіс келесі жаѓдайлардыњ біреуі келгенше оны басќарады:

  1. аусытыруѓа сұранысымен назар аудару
  2. үрдістіњ аяќталуы
  3. осы үрдіске берілген ∆t квант уаќытыныњ сарќылуы

Осы жаѓдайлардыњ біреуі түскенде операциялыќ жүйені жоспарлаушысы  орындауѓа дайын үрдістерден  тањдайды, кейбір үрдістер және оѓан орталыќ санашыќ қорларын береді. Ал ол осы үрдіске тәуелді наќты операция жүйесін ќолданѓан жоспарлау алгоритммен тањдайды. Мысалы, үрдіс кездейсоќ тањдалынуы мүмкін. Екінші тәсіл үрдістерді тізбектелген өту  (артынан жүрумен) болады, мысалѓа біз үрдістерден алдымен бір жұмысты алып, содан соњ ол босаѓан кезде орталыќ санашыќ орындауѓа дайын үрдістерге беріледі. Келесі тапсырма алынатын  үшінші критери, оратлыќ санашыќта атќарылмаѓан осы үрдіс болуы мүмкін. Осы жаѓайда жүйе, ењ көп уаќытты, үрдісті тањдай алады.  Осы алгоритмдер операциялыќ  жүйеде таратылған болуы керек, олар қарапайым болады, әйтпесе жүйе тиімсіз жұмыс істейді.

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

Енді келесі тапсырманы қарастырамыз Автопилотпен басқарылатын ұшақ бар делік, онда автопилот төмендеу операциясын орындайды. Әр ұшақта жерден қанша биіктікте тұратынын өлшейтін құрал бар. Ұшақтың жұмыс тәртібін басқару функциялары қайсыбір берілген программалар арқылы компьютер атқарады. Егер бізде автопилот жүйесі бар болса және ұшақ төмендеп бара жатса, онда жүйе ұшу биіктігі бойынша бақыланады. Осы ұшаққа қатысты бірнеше тапсырмаларды  орталық компьютер шеше алады: ұшу биіктігін бақылайды, жанармайдың деңгейін  бақылайды, қозғалтқыш жұмыстарының көрсеткіші және т.б.д. осы функциялардың басқаруын әр үрдіс өзі алады. Операциялық жүйе  дестесі бізде және бактағы жанармай деңгейін бақылаймыз делік. Осы кезде авариалық жағдай туындайды, өйткені ұшақ төмендеп барады оны операциялық жүйе байқамайды. Жүйеде уақыттың бөлінуі болып жатыр делік. Бізде уақыт алмасу жүйесі сапасының бірі тиімсіздігі болып табылады, яғни жүйеде үрістен – үрдіске ауысу саны көп қарастырылғандықтан, ал бұл функцияның сыиымдылығы жеткілікті. Тағы осындай жағдай: Биіктік нолге жетті, ал операциялық жүйе тіркеу кестесінің ауыстыруымен айналысып жатыр, мұндай нұсқада жарамайды. Осындай тапсырмаларды шешкенде жоспарлаудың өзінің құралы қажет. Осы жағдайда нақты уақыттағы операциялық жүйе қолданылады, бұл жүйенің кепілді реакциясының алдын ала анықталған жиыны сол немесе басқа жағдайы пайда болуы негізгі критери болып табылады.  Орталық санашықтың уақытын басқару функциясымен және орталық саншықты жоспарлауда екі фактіге назар аударамыз. Бірінші факт ол, көбіне есептеу жүйесінің эспулатациялық қасиеті анықталатын ОС уақытын бөлу жоспарлау жүйесінде таратылған. Біз ОЖ-нің үш типтік түрлерін қарастырамыз: дестелік жүйенің өңделуі, уақыт бөлу жүйесі және нақты уақыт жүйесі. Бүгінгі таңда нақты уақыт жүйесін ОЖ-ң бір санаты деп айтуға болады.  Windows ОЖ-сі қандай да бір объектілерді басқармайды, егер олардың нақты уақыты өте критикалы болса және де СОЛЯРИС немемсе LINUX  т.б ОЖ басқармайды, өйткені осы жүйелер нақты уақыт жүйесі болып табылмайды.

Бірінші  екі режимді, дестелі және уақыт бөлу, жалпы  ОЖ-де жасауға болады (вертуальды түрде). Нақты, үлкен ОЖ-лер аралас жүйелер болып табылады, оларда ОС жоспарлау элементінде қайталанатын тапсырмаларды басқаратын алгоритм сияқты және интерактивті тапсырма немесе келесіге қалдырылған тапсырмалар болады.

  ОЖ-нің жіктеуі (классификация) ОЖ-нің тағайындауын (белгілеуін) және олардың орындайтын функцияларын қарастыра отырып, ең ортақ жіктеушілер принципін негізге ала отырып, барлық алуан түрлі ОЖ-лерді жіктеуге болады:

1. Бір мезгілде  бар программалық процесстердің  санына байланысты ОЖ-лер бірпрограммалы және мультипрограммалы болып бөлінеді. Мультипрограммалық ОЖ-нің, бір программалық ОЖ-ден айырмашылығы есептеу процессі компьютер жадында бір мезгілде бір процессорда кезекпен орындалатын бірнеше программаның болуын ұйымдастыру;

2.  Есептеу  жүйесіне қатынасы бар қолданушылар саны бойынша, бір қолданушы және көп қолданушы ОЖ-і болып танылады. Көп қолданушы жүйелері бірнеше қолданушыға бір мезгілде жүйесіне қатынасқа мүмкіндік береді. Бұл жағдайда әр қолданушы өзінің терминалымен жұмыс істейді, бірақ барлық есептеулер бір компьютерде шығарылады.

3.   Белгілеуі  бойынша ОЖ-лер әмбебабтық және  мамандандырылған болып бөлінеді. Мамандандырылған ОЖ-лер бекітілген  программалар жиынымен жұмыс  істейді.

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

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

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

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

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

Информация о работе Операциялық жүйелердің даму бағыттары