Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Камтамасыздандыру.docx
Скачиваний:
43
Добавлен:
26.02.2016
Размер:
180.27 Кб
Скачать

Конец формы

Тақырып 1. Ресурс, үрдіс, модульдік принциптері және сәйкестілік ұғымы

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

Кілттік сөздер: үрдіс, үрдістің дескрипторы, үрдістің контексі, ресурс, Критикалық секция, семаофра, көпжолды өңдеу, модульдік принцип, виртуалдау принципі, үйлесімділік принципі, мобильдік принципі  

Дәріс жоспары (1 сағат)

  1.  Басымдылықтар. Үрдістер арасында ресурстарды үлестіру стратегиясы.

  2.  Үрдістер диспетчерленуі. Виртуалды машина концепциясы.

  3.  Есептеуіш ресурстарды басқару тұрғысынан операциялық жүйелердің (ОЖ) тағайындалуы және құрамы. UNIX және Windows NT операциялық жүйелерінде басқаруды ұйымдастыру.

  4.  Көптапсырмалы ортада есептеуіш жұмыстардың кезектілігіне қызмет көрсетуді ұйымдастыру.

  5.  Жұмыстарды басқару жүйесі.

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

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

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

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

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

  1.  Осы үрдісті, яғни оның дескрипторын және контексті суреттейтін ақпараттық құрылымдар құру;

  2.  Жаңа үрдіс дескрипторын дайын үрдістер кезегіне қосу;

  3.  Үрдістің кодтық сегментін оперативті жадыға немесе свопинг аумағына қосу.

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

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

Осы мақсатта қазіргі ОЖ өз механизмі, көпжіптік тазартқыштағы стек ақпараттық есептегіші болады. (multithreading). Бұл орайда «жіп» немесе «лек» ұғымы енгізіеді.

Лектерді жеңілдетілген үрдістер деп те айтады. Олар бір күйден екінші күйге ауыса алады. Мына күйлердің біреуінде бола алады: ОРЫНДАЛУЫ, КҮТУ және ДАЙЫН БОЛУ. Бір лек блокта болса, сол үрдістің басқа легі орындала береді.

Алайда олар жекелеген үрдістер тәрізді тәуелді емес. Осындай лектердің барлығының адрестік кеңістігі бірдей. Яғни, бірдей жаһандық айнымалыларды бөледі. Бұдан басқа ашық файлдар, таймерлер, сигналдарды бөледі.

Сонымен, лектердің өз ақпараттық есептегіші, регистрі, лектер-ұрпақтар, күйлері болады.

Лектер адрестік кеңістікті, ашық файлдарды, таймерлерді, семафорларды, статистикалық ақпаратты бөледі.

Үрдістер мен лектерді құру мен басқару үшін Win32 функциялары

Жаңа қосымшаны іске қосу үшін жаңа үрдіс құру керек. Ол үшін Win32 функцияларын пайдалану қажет.

  1.  WinExec ( 'путь\имя_приложения параметры_командной_строки', 1) – ашық терезеде іске қосу.

  2.  CreateProcess() – үрдіс құру

Екінші функция параметрлер санының көп болғанын қалайды (олардың көбісі үнсіздік бойынша 0 немесе nil мәндеріне ие), бірақ басқаруға келгенде мүмкіндіктері мол.

Үрдісті аяқтау үшін ExitProcess() и TerminateProcess функциялары пайдаланылады. Үрдістің орындалуын басқару үшін мына функциялар қолданылады.

  1.  GetCurrentProcess() – ағымдық үрдісті сипатын алу

  2.  SetPriorityClass() – үрдіс приоритет класын өзгерті.

Лекті құруға CreateThread функциясы қызмет етеді, лекті аяқтауға ExitThread және TerminateThread функциялары қызмет етеді..

Лек приоритетін басқару үшін мына функциялар қолданылады:

GetCurrentThread() – ағымдық үрдістің сипатын алу.

  1.  SetThreadPriority() – үрдіс шеңберіндегі лектің қатыстық приоритетін орнату.

  2.   Функциялар параметрлері жөніндегі толығырақ ақпаратты Win32.hlp және Windows.pas. файлдарынан іздеу қажет.

Синхрондау тәсілдері мен үрдістердің өзара әрекеттестігі

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

Мультибағдарламаландыру тәртібінде орындалып жатқан үрдістердің синхрондалу сауалдарын толыққанды дәрежеде ескермей өту – қанағатсыз қызмет, тіпті жүйенің толықтай құлдырауына соқтыруы мүмкін. Мысалға, файлдарды баспаға шығару бағдарламасын (принт-сервер) қарастырайық. Аталған бағдарлама келіп тускен реттілігінде арнайы жалпыға ортақ файлға тіркелеген барлық файлдарды баспаға шығарады. Барлық үрдіс-клиенттерге жетерлік ерекше құбылмалы NEXT, оның сұраныс файл ұстанымдарының файл атауын тіркеудегі алғашқы бос нөмірі болады.Үрдіс-клиенттер аталған құбылмалымен танысып, оны сәйкес сұраныс файл ұстанымдарына тіркеп, бірлікке NEXT мағынасын қосады. R үрдісі қандай да бір сәтте өз файлын басылымға шығаруға бел буды делік, сол себепті ол мағынасы мысалға 4 тең құбылмалы NEXT мағынасымен танысты. Үрдіс аталған мағынаны ескерсе де, орындалуы үзіліске ұшырау себебінен (мысалға, квант жойылуы салдарынан) файл атауын орнықтыруға үлгермеді. (например, в следствие исчерпания кванта). Файлды баспаға шығаруды көздеген S үрдсі де  құбылмалы NEXT мағынасымен танысып, өз файлының атауын төртінші ұстанымға орнықтырып, құбылмалылықтың мағынасын бір бірлікке ұлғайтты. Басқару R үрдісіне ретті берілген жағдайда ол өзінің орындалуын жалғастыра отырып, алдыңды итерация нәтижесінде алынан  бос ұстаным мағынасына сәйкес S үрдісі файлының атауы үстінен файл атауын 4 ұстанымға тіркейді.

Сурет 1. Синхрондау қажеттілігінің мысалы

Осылайша, S үрдісі өз файлын шығарылған күйін көруі екі талай. Синхрондаудың ахуалды күрделілігі – туындайтын жайтттардың реттіліксіздігі салдарынан болады. Аталған жағдайда барлығы үрдістердің жылдамдығы мен олардың арасындағы үзіліспен анықталады. Сондықтан да, өзара қатынасатын үрдістерді тоқтату – күрделі мінджеттіліктердің бірі болып табылады. Екі не одан да көп үрдістер бөлісілген деректерді өңдеп, ақырғы нәтиже жарыс деп аталынатын үрдістердің жылдамдық қатынастарына тәуелді келеді.

Үрдістерді синхрондаудағы маңызды түсінік – бағдарламаның критикалық секциясы. Критикалық секция – бұл бөлісілген деректерге қол жеткізу орындалатын бағдарламаның дербес бөлігі. Қандай да бір ресурстарғақарасты жарыс эффектісін болдырмау мақсатында бағдарламаның әрбір критикалық секциясында аталған ресурспен байланысты бір үрдістің болуынқамтамасыз ету қажет. Бұл тәсіл өзара жойылым деп аталады.

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

Екінші тәсіл – блоктаушы құбылмалыларды қолдану тәсілі.Әрбір бөлісілген ресурспен 1 мағынасын иемденетін екілік құбылмалылық байланысады, егер де ресурс бос  болса (еге де бір үрдіс аталған үрдіспен байланысты критикалық секцияда орнықса), егер ресурс қызметте болса 0 мағынасы белгіленеді.  

Жоғарыда келтірілген мысал синхрондаудың тағы да бір ахуалы - дедлок (deadlocks), клинчи (clinch) немесе тығырықтар деп аталынатын өзара блоктарды айғаруға ықпал етеді. Жайттардың саралануы салдарынан екі үрдіс бір-бірін өзара блоктауы мүмкін. Үрдіс жылдамдықтарының қатынасына сәйкес  олар бір-брінен тәуелсіз бөлісілген ресурстарды қолданыла алады (г), немесе бөлісілген ресурстарға қарасты реттілік қалыптасыра алады (в), я болмаса бірін-бірі өзара блоктауға қабілетті келеді. екеуі де ресурстарды ортақ пайдалану салдарынан туындаса да, Тығырықты жағдайларды қарапайым реттіліктерден ажырата білуіміз қажет: үрдіс кідіріп, ресурстың босауын күтеді. Дегенмен реттілік те – қалыпты үрдіс ретінде танылады. Ол, ресурс аталған жағдайда қол жетекізу аясынан тыс болғанда тауындап, кейіннен қайтара іскеқосылады.Тығырық, атауынан байқағанымыздай, шешілімі жоқ есеп болып табылады.

Сурет 2. (a) принтер мен дискіні бөлетін А және В бағдарламаларының кескіндері, (б) өзара блок (клинч); (в) бөлісілген дискіге қалыптасқан реттілік, (г) ресцурстардың тәуелсіз қолданылуы.

Қарастырылған мысалда (сурет 2.) тығырық екі үрдіспен қалыптасты, дегенмен бір-бірін өзара блоктауға үрдістердің біршама бөлігі қатыса алады.

Тығырық ахуалдары өз қатарына келесі міндеттіліктерді қосады:

  1.  Тығырықтарды қайтару 

  2.  Тығырықтарды анықтау

  3.  Тығырықтан кейін жүйені қалпына келтіру

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

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

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

Жолдар

Үрдістер жайында сөз қозғай отырып, операционды жүйе олардың жалпылығын қолдайтынын ескере кеткеніміз жөн: әрбір үрдістің өзіндік виртуалды мекен-жай кеңістігі болады, әрбір үрдіске өзіндік ресурстар – файлдар, терезелер, семаофралар тағайындалады. Мұндай жалпылық әрбір ресурс өзара бәсекелесуі кезінде бір үрдісті екіншсінен қорғау үшін қажетті. Көп жағдайда үрдістер бір компьютерді бөлісетінбірнеше тұтынушыға тиесілі, және же ОЖ үрдістерарасындағы қарама-қайшылықтарын шешуде арбитр рөлін атқарады.

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

Аталған мақсатта қазіргі заманғы ОЖ көпжолды өңдеуді (multithreading) қолданылады. Бұл ретте жаңа жол ұғымы (thread) енгізіледі.

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

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

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

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

Көп жолды өңдеу жүйенің қызмет нәтижелілігін көп міндетті өңдеумен салыстырғанда жоғарлатады. Мысалға, Windows көп міндетті ортасында бір уақытта электронды кесте мен мәтіндікредактормен жұмыс істеуімізге болады. Дегенмен, тұтынушы жұмыс парағының есептелуін сұрастырған жағдайда электронды кесте уақытша блокқа түседі. Көп жолды ортада кесте көп жолды өңдеудің мүмкіншіліктерін ескерумін жасалса, мұндай ахуалдардың туындауы екі талай және де тұтынушы аталған электронды кестеге қол жеткізе алады.

Операциялық жүйелерді құрудың негізгі принциптері:

Көптеген принциптердің ішінен ең маңыздыларын атап көрсетейік:

1 Модульдік принцип

2 Таңдаудың функционалдық принципі

3 ОЖ генерациялау принципі

4 Артықшылықтың функционалдық принципі

5 Виртуалдау принципі

6  Бағдарламалардың сыртқы құрылғылардан тәуелсіздік принципі  

7 Үйлесімділік принципі  

8 Ашық және өсіп жетілдіретін ОЖ-нің принципі

9 Мобильдік принципі  

10 Есептеуіштің қауіпсіздігін қамтамасыз ету принципі

Модульдік принципі

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

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

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

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

Функционалды іріктеу ұстанымы.

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

Операциялық жүйедегі генерация ұстанымы.

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

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

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

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

Функционал артықшылық ұстанымы.

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

Виртуализация ұстанымы.

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

- жұмыс логикасы біркелкі, көлемі бойынша  шектелмеген виртуалды жады .

- виртуалды процессорлардың жеке саны, паралельді және жұмыс уақытына бірлесіп әрекет етіп жұмыс істеуге  қабілетті.

- сыртқы виртуалды құрылғылардың жеке саны , виртуалды машина жадының паралельді немесе жүйелі  түрде жұмыс істеуге қабілеті, бұл осы не басқа виртуалды машина жұмысына қарағанда асинхронды немесе синхронды ынталандырылған  құрылғылар жұмысы.

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

Бағдарламалардың сыртқы құрылғылардан тәуелсіздік ұстанымы.

Сәйкестендіру ұстанымы.

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

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

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

Бір компьютер басқалардың бағдарламаларын орындау үшін (мысалы, IBM PC типіндегі ПК бағдарламасын Macintosh типіндегі Apple фирмасына  арналған бағдарламада орындау қажет), мұндай компьютерлер өзіне басынан түсініксіз  машиналы командалармен жұмыс істеуге тиісті.

Мұндай жағдайда  680×0 типті процессор (немесе PowerPC) 80×86 процессорына арналған екілік кодты орындауға тиісті.

80×86 процессорында озінің 80×86 екілік кодын иеленеді, сондықтан  оның не үшін  арналғаның анықтау үшін, содан соң 680×0 үшін жазылған эквиволентті бағдарламаны жүзеге асыру әрбір команданы тандауға тиісті.

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