Дәрістің мақсаты



Дата19.12.2022
өлшемі22,95 Kb.
#58309
Байланысты:
лекция 3


ОПЕРАЦИЯЛЫҚ ЖҮЙЕЛЕРДІҢ ҚҰРЫЛЫМЫ МЕН ТҰРҒЫЗЫЛУ ПРИНЦИПТЕРІ


2.1 Дәрістің мақсаты

Дәрістің мақсаты операциялық жүйелердің құрылымы мен тұрғызылу принциптерімен танысу.


2.2.3 Басым режимдегі ядро


Қосымшалардың жұмыс барысын сенімді басқару үшін операциялық жүйе оларға қарағанда қандайда бір басымдылықтарға ие болуы керек. Олай болмаса, бұрыс жұмыс жасап тұрған қосымша ОЖ жұмысына араласуы мүмкін, мысалы, оның кодтарының бөліктерін бүлдіруі мүмкін. Егер операциялық жүйені құрастырушылардың шешімдері қосымшалардан қорғалмаған жүйе модульдеріне орналастырылса, бұл шешімдердің қаншалықты элегентты және тиімді болғанына қарамастан-ақ, олардың барлық әрекеттері нәтижесіз болады. Операциялық жүйенің ерекше өкілеттілігі болуы керек, себебі мультибағдарламалық режимде қосымшалардың компьютер ресурстарына таласы болған жағдайда арбитр ролін ойнау үшін керек. Ешбір қосымшаның ОЖ бақылауынсыз қосымша жады аймағын алу, ОЖ рұқсат етілген уақыт аралығынан артық процессорды ұстау, ортақ қолданылатын сыртқы құрылғыларды тікелей басқаруға мүмкіндіктері болмайды.
Арнайы аппараттық құрылғылардың көмегінсіз операциялық жүйеге басымдылықты беру мүмкін емес. Компьютер аппаратурасы жок дегенде екі жұмыс режимінде жұмыс жасауы керек – қолданушы режимі (user mode) және басым режимде, сонымен қатар, ядро режимі (kernel mode), немесе супервизор режимі (supervisor mode) деп те атайды. Яғни операциялық жүйе немесе оның кейбір бөлімдері басым режимде, ал қосымшалар – қолданушы режимінде жұмыс жасайды.
Ядро ОЖ барлық функцияларын орындайды, көбінде ядро ОЖ басым режимде жұмыс істейтін бөліміне айналады. Кейде бұл қасиет – басым режимдегі жұмыс – «ядро» түсінігінің негізгі анықтамасы болады.
Қосымшалар бағыныңқы күйге қойылады. Бұл қолданушы режимінде процессорды тапсырмадан тапсырмаға ауыстыру, енгізу-шығару құрылғыларын басқару, үлестіру және жадыны қорғау механизмдеріне қол жеткізумен байланысты кейбір сыни командаларды орындауға тыйым салу арқылы жүргізіледі. Қолданушы режимінде кейбір нұсқауларды орындауға шартсыз тыйым салынады (бұл сияқты нұсқауға басым режимге өту нұсқаулығы жататыны анық), ал кейбіреулерін орындауға белгілі бір жағдайларда ғана тыйым салынады. Мысалы, қатты дисктің контроллеріне қатынауда барысында енгізу-шығару нұсқаулықтары қосымшаларға тыйым салынған болуы мүмкін, қатты диск ОЖ және барлық қосымшаларға ортақ мәліметтерді сақтайды, бірақ нақты бір қосымшаның монопольді иелігіне бөлінген тізбектелген портқа қатынауда рұқсат етілген. Маңыздысы сыни нұсқаулықтарды орындауға рұқсат беретін шарттар толығымен ОЖ бақылауында болады және бұл бақылау қолданушы режимі үшін шарттсыз тыйым салынған нұсқаулықтар жиыны арқасында жүзеге асырылады.
ОЖ жадыға қатынау басымдылығыда дәл осы сияқты жүргізіледі. Мысалы, жадыға қатынау нұсқаулығын орындау егер нұсқау ОЖ бұл қосымшаға бөлінген жады аумағына қатынаса қосымшаға рұқсат етіледі, ал егер ОЖ немесе басқа қосымшалар тұрған жады аумағына қатынаса, рұқсат етілмейді. ОЖ жадыға қатынауды толық бақылауы жадыны қорғау механизмдерін конфигурациялау нұсқаулығы немесе нұсқаулықтарын (мысалы, IBM мэйнфрейдарында жадыны қорғау кілттерін немесе Pentium процессорларының жадысындағы дескрипторлар кестесі көрсеткішін өзгерту) тек басым режимде ғана орындауға болатындығының арқасында мүмкін болады.
Операциялық жүйе жадыны қорғау механизмін тек өз жады аумағын қосымшалардан қорғау үщін ғана емес, сонымен бірге ОЖ қандайда бір қосымшаға бөлген жады аумағын басқа қосымшалардан қорғау үшін де қолданады. Әрбір қосымша өзінің адрестік кеңестігінде жұмыс істейді деп айтады. Бұл қасиеті бұрыс жұмыс жасап тұрған қосымшаларды өз жады аумағына оқшаулайды, содан оның қателіктері басқа қосымшаларға және ОЖ әсер етпейді.
Аппаратты жүзеге асырылатын басымдылық деңгейлерінің саны, және ОЖ құптайтын басымдылық деңгейлерінің саны арасында тура сәйкестік жоқ. Intel компаниясының төрт деңгейді қамтамасыз ететін процессорлары негізінде OS/2 операциялық жүйесі үш деңгейлі басымдылық жүйесін, ал Windows NT, UNIX және тағы басқа кейбір операциялық жүйелер екі деңгейлі жүйемен шектелуде.
Ал, бір жағынан егер аппаратурада тым болмағанда басымдылықтың екі деңгейі болса, онда ОЖ осының негізінде бағдарламалық жолмен жетік қорғаныс жүйелерін жасайды.
Бұл жүйе, мысалы иерархияны құрап тұрған басымдылықтардың бірнеше деңгейін құптай алады. Басымдылықтың бірнеше деңгейінің болуы ОЖ модульдерінің арасында өкілеттіліктерді дәлірек бөлуді де және қосымшалар арасында да дәлірек бөлуді мүмкін етеді. ОЖ ішінде басымдырақ өкілеттілікті бөліктермен қатар басымдылығы төмен өкілеттілікті бөліктердің болуы бағдарламалық кодтардың ішкі қателіктеріне ОЖ бекемділігін арттырады. Себебі бұл қателіктер белгілі бір деңгейлі басымдылықты модульдердің ішіне ғана тарайды. Қолданбалы модульдер ортасында басымдылықтарды дифференциациялау күрделі қолданбалы кешендерді тұрғызуға мүмкіндік береді, мұнда басымдылығы жоғарырақ модульдер, мысалы басымдылығы төменірек модульдердің мәліметтеріне қатынап және олардың орындалуын басқара алады.
ОЖ процессордың басымдылықтарының екі режимінің негізінде ресурстарды жекелей қорғаудың күрделі жүйесін тұрғыза алады, мысал ретінде файлдармен каталогтарды қорғаудың типтік жүйесін келтіруге болады. Бұл сияқты жүйе кез келген қолданушыға әрбір файлға және каталогқа қатынау құқығын беруді мүмкін етеді.
Ядроның басым режимге ауысуы арқылы қамтамасыз етілетін операциялық жүйенің бекемділігін арттыру, жүйелік шақыртулардың орындалу уақытын біраз бәсеңдету арқылы жүзеге асады. Басым ядроны жүйелік шақырту процессордың қолданушы режимінен басым режиміне ауысуын иннициализациялайды, ал қосымшаға кері оралғанда – басым режимнен қолданушы режиміне ауысады. Процессорлардың барлық типтерінде ауысудың қосымша екі ретті ұстап қалуының әсерінен режимді ауыстыруы бар процедурасына өту режимді ауыстыруы жоқ процедураны шақыртудан баяуырақ орындалады.
Басым ядро және қолданушы режиміндегі қосымшалар негізінде тұрғызылған ОЖ архитектурасы шындығында да классикалық бола түсті. Оны көптеген танымал ОЖ қолданады: UNIX, VAX VMS, IBM OS/390, OS/2 және әртүрлі өзгешеліктері бар Windows NT.
Кейбір жағдайларда ОЖ құрастырушылар бұл классикалық архитектураның шегінен шығып, ядро мен қосымша жұмысын бір режимде ұйымдастырады. Novell компаниясының NetWare мамандандырылған ОЖ Intel x86/ Pentium процессорларының басым режимін ядро жұмысы үшін де, өздерінің ерекше қосымшалары NLM жүктелетін модульдерінің жұмысы үшін де қолданады. ОЖ бұл сияқты тұрғызғанда қосымшалардың ядроға қатынауы режимдерді ауыстыру сияқты емес, жылдам орындалады, бірақ дұрыс жұмыс жасамай тұрған қосымшалардан ОЖ модульдері алып тұрған жадыны қорғаудың берік аппараттық қорғаны жоқ. NetWare құрастырушылары өз операциялық жүйелерінің сенімділігін әлеуетті төмендетті, өйткені оның мамандандырылған қосымшаларының жиыны әрбір қосымшаны толық дұрыстаудың есебінен бұл архитектуралық кемшіліктің орнын жабады. Басым режим жұмысын мүлдем қолдамайтын процессорлар үшін әзірленген операциялық жүйелердің ядросымен қосымшалары да бір режимде жұмыс жасайды. Бұл сияқты процессорлардың мысалы ретінде IBM компаниясының процессорларына негіз болған Intel 8088/86 процессорын алуға болады.бұл компьютерлер үшін Microsoft компаниясы әзірлеген MS-DOS операциялық жүйесі жүйе ядросын құрайтын msdos.sys және io.sys модульдерінен тұрды (бірақ, бұл модульдер үшін «ядро» атауы қолданылмайтын, ал негізінен ядро болып табылатын). Оларға жүйелік шақыртуларымен command.com командалық интерпретатор, жүйелік утилиттер және қосымшалар қатынайтын. MS-DOS архитектурасы ОЖ архитектурасына сәйкес келеді. Дұрыс жазылмаған қосымшалар негізгі MS-DOS модульдерін бүлдіре алатын, тіптен, кейде ондай жағдайлар болып та тұратын, бірақ MS-DOS (және де сол сияқты MSX, СР/М сияқты ДК арналған ертеректегі операциялық жүйелер) қолдану аясы ОЖ сенімділігіне жоғары талаптар қоймайтын.

2.2.4 ОЖ тұрғызудың модульдік құрылымы.


ОЖ құрылымы модульді сипатта болады. ОЖ құрылымдаудың көп қолданатын тәсілі оның барлық модульдерін екі топқа бөлу:

  • ядро – ОЖ негізгі қызметтерін атқаратын модульдер;

  • ОЖ қосалқы функцияларын атқаратын модульдер.

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

  • Утилиттер – ОЖ басқару және сүйемелдеуінң жеке тапсырмаларын шешетін бағдарламалар;

  • жүйелік өңдеуші бағдарламалар – мәтіндік және графикалық редакторлар, компиляторлар, құрастырушылар және т.с.с ;

  • қолданушыға қосалқы қызмет түрлерін ұсынатын бағдарламалар – қолданушы интерфейсінің арнайы нұсқасы, калькулятор, ойындар және т.с.с.;

  • процедуралар библиотекасы (жинағы) – қосымшаларды құрастыруды қысқартатын, әртүрлі тағайындаулары бар модульдер.

Утилиттер – қолданушыға сервистік қызметтерді ұсынатын қызмет етуші бағдарламалар. Негізінен олардың толық экранды, мәзір түрінде ұйымдастырылған қолданушымен өзара әрекеттесетін интерфейсі бар. Кейбір жағдайларда ғана интерфейс сұратулар түрінде ұйымдастырылады.
Мысалы, DOS құрамына әртүрлі мақсаттарға арналған ондаған утилиттер кіреді. Ал іс жүзінде олардың тек кейбіреулері ғана жиі қолданылады: FORMAT.COM, MODE.COM, KEYB.COM, FDISK.EXE, DISKCOPY.COM және т.б.
Windows утилиттерінің мысалдары: мәліметтерді архивтеу, жүйені қалпына келтіру, дискті дефрагментациялау, дискті тазарту, жүйе туралы мәлімет, Windows (Windows Update) жаңарту утилиті және т.б.
Қарапайым қосымшалар сияқты өз тапсырмаларын орындау үшін бағдарламаларды және ОЖ кітапханаларын өңдеуші утилиттер де жүйелік шақырулар арқылы ядро функцияларына қатынайды.
ОЖ ядроға және қосымша-модульдерге бөлу ОЖ оңай кеңейтілуін қамтамасыз етеді. Жоғары деңгейлі функцияны қосу үшін жаңа қосымшаны жасау жеткілікті және жүйе ядросын құрайтын жауапты функцияларды өзгертудің қажеті жоқ. Алайда, ядро функциясына өзгерістер енгізу қиынырақ болуы мүмкін, және бұл қиындық ядроның өзінің құрылымдық ұйымдастырылуына байланысты болады. Кейбір жағдайларда ядроны әрбір жөндеу оны толық қайта компиляциялауды талап етуі мүмкін.
Утилиттер, жүйелік өңдеуші бағдарламалар және кітапхана түрінде рәсімделген ОЖ модульдері әдетте жедел жадыға тек өз функцияларын орындау уақытына ғана жүктеледі, яғни олар транзитті болып келеді. Жедел жадыда үнемі тек оның ядросын құрайтын ең қажетті ОЖ кодтары ғана болады. ОЖ бұл сияқты ұйымдастыру компьютердің жедел жадыны үнемдейді.
Ядро негізіндегі ОЖ архитектурасының маңызды қасиеті ядро функцияларын басым режимде орындаудың арқасында ОЖ кодтарын және мәліметтерін қорғау болып табылады.


2.3 Дәріске арналған сұрақтар

2.3.1 ОЖ негізіне салынған негізгі тұжырымдамалар қандай?


2.3.2 Монолитті ядро және микроядроға қандай сипаттамалар тән?
2.3.3 Басым режимдегі ядро жұмысын сипаттаңыз.
2.3.4 ОЖ қандай модульдерден тұрады?

Достарыңызбен бөлісу:




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

    Басты бет