6.2. Windows NT ОЖ НУОЖ дәрежесінде
6.2.1 НУОЖ ретінде Windows NT-ті қолдану мүмкіндігі
6.2.1.1. НУОЖ негізінде Windows NT қолдану үшін Microsoft аргументі
6.2.1.2. НУОЖ негізінде Windows NT қолдануға қарсы аргумент
6.2.2. Windows NT ОЖ үшін нақты уақыт кеңейтілулері
6.2.2.1 Windows NT жүйе үшін нақты уақыт кеңейтілуі туралы толығырақ
6.1 Windows NT. Негізгі сипаттамалары.
1993 жылдың ортасынан бастап, Microsoft «жаңа технологиялар» ( New Technology
-NT) деп аталатын жаңа ОЖ шығара бастады.
Windows NT ОЖ басынан бастап, қазіргі заманғы ОЖ-ге ұсынылатын барлық
талаптармен жобалана бастады:
кеңейтілуі
тасымалдылық
сенімділік
үйлесімділік
өнімділік
Бұл қасиеттер клиент – сервер, микроядролар, объектілер сияқты құрылымды
жобалаулар технолдогияларын қолдану арқылы қол жеткізілді.
Windows NТ-да ығыстырушы көп міндетті механизм қолданылады ( preemptive
multitasking). Тізбекті басқару үшін Windows NT Server басымдықты механизмді
пайдаланады, Windows NT есептеуіш процестің симметриялы көп процессорлы ұйымды
пайдаланады, оған сәйкес ОЖ процессорлар арасындағы жадыны бөліп кез келген бос
процессор мен барлық процессорларда бір мезгілде орындалады. Windows NT Server 16
параллельді процессорды ұстанады.
Енгізу/шығару құрылғыларын басқару кезінде Windows NT асинхронды жолды
қолданады.
6.1.1. Құрылымы: NT executive және қорғалған жүйелер
Windows NT құрылымын жасағанда жеткілікті дәрежеде микроядро
тұжырымдамасы қолданылады. Осы идеяға сай ОЖ бірнеше жүйелерге бөлінеді, олардың
әрқайсысы жеке сервисті қызметтер жиынтығын орындайды, мысалы жады сервисі,
процестерді құру сервисі, процестерді жоспарлау сервисі. Мұның қалай жұмыс
жасайтынын толығырақ қарастырайық.
Құрылымы бойынша Windows NT 2 бөлік ретінде ұсынылады: (1 сурет)
1.
тұтынушы режимінде жұмыс жасайтын ОЖ бөлігі
2.
ядро режимінде жұмыс жасайтын ОЖ бөлігі
Ядро режимінде жұмыс істейтін ОЖ бөлігі executive – орындаушы бөлігі деп
аталады. Ол виртуальды жадыны, объектілерді (қорларды) , енгізу/шығару және файлдық
жүйені (сонымен қатар желілік қорлар), процестердің өзара әсерлесуі және қауіпсіздік
жүйелерін басқаратын компоненттерден тұрады. Бұл компоненнтер модульаралық
байланыс арқылы өзара байланысады. Әрбір компонент басқаларын мамандандырылған
ішкі процедуралар жиынтығы арқылы шақырады.
Windows NТ-ның екінші тұтынушы режимінде жұмыс істейтін бөлігі- қорғалған
жүйелер деп аталатын серверлерден құралады. Windows NТ серверлері қорғалған жүйелер
деп аталады, өйткені олардың әрқайсысы жеке жадысы басқа процестерден NТ executive
виртуальды жадыны басқару жүйесімен бөлінген процесте орындалады.
Қорғалған жүйенің тірегін Windows NТ executive орындаушы бөлігі қамтамасыз
етеді, ол ядро кеңістігінде жұмыс істейді және дискке ешқашан көшірілмейді. Онық
құраушы бөліктері:
Объект менеджері
Қауіпсіздік мониторы
Процестер менеджері
Виртуальді жады менеджері
Енгізу/шығару жүйесі
Орындаушы бөлігі ,өз кезегінде, NТ ядросы (оны микроядро деуге
болады)ұсынатын төменгі деңгей қызметіне негізделген.
Ядроның негізгі қызметі:
процестерді жоспарлау
үзілулер мен ерекше жағдайларды өңдеу
көп процессорлы жүйелер үшін процессорларды синхрондау
ақаудан кейін жүйені қалпына келтіру
Ядро артықшыланған режимде жұмыс істейді және ешқашан жадыдан
өшірілмейді. Ядроға үзілу арқылы ғана көңіл аударуға болады. Ядро машиналы-тәуелді
процедуралардың көп бөлігі бір жерде аппартты абстракция деңгейінде (Hardware
Abstraction Level HAL) орналасқан. HAL NT executive және аппаратты қамтамасыз ету
арасында орналасады және жүйеден үзілу бақылаушылар, енгізу/шығару интерфейстері
және процессорлар арасындағы өзара әсерлесу механизмдерін жасырады. Мұндай шешім
Windows NТ-ға бір платформадан екіншісіне HAL қабатын ғана айырбастау жолымен өте
оңай тасымалдауға мүмкіндік береді.
3
сурет Windows NT-ның құрылымы
6.1.2. Windows NT тұжырымдамалары
6.1.2.1 Көптеген қолданбалы орталар
Windows NT операциялық жүйені бес қолданбалы ортасын пайдаланады: MS –
DOS, 16- разрядты Windows, OS/2 1.x, POSIX, 32 разрядты Windows (Win32 ).
6.1.2.2. Объекті – бейімделген бағыт
NT толығымен объекті – бейімделгіш болмағанымен, оның негізінде обектілер
жатыр. Атаулардың бірігіп қолдануының және жүйелік қорлардың есептік біркелкі
формасы, қауіпсіздігін қамтамасыз етудің қарапайым және арзан әдісі және
модификациялық барлық осы қасиеттерге объекті моделді қол жеткізуге болады. Әрбір
объект 2 бөліктен тұрады:
объектінің тақырыбы
объектінің денесі
олар объектінің стандартты және ауыспалы деректерінен тұрады. Объект менеджері
объектінің тақырыбымен жұмыс жасайды, ал қалған компоненттер executive өздері
жасаған объекті түрінің денелерімен жұмыс істейді.
Объектінің тақырыбының кез келген түрінде төмендегі белгілер болады:
аты
каталог
қауіпсіздік дескрипторы
қорларды қолдануға квоталар
ашық сипаттаушылар есептегіші
ашық сипаттаушылардың деректер қоры
тұрақты/уақытша белгілер
тұтынушы/ядро режимі
объектілердің түріне нұсқаушы
Объектінің тақырыбынан басқа әрбір объект денеден тұрады. Онық формсаты
және мазмұны осы объектінің түрімен анықталады. Барлық обектілерде бірдей формат
денесі болады. Объектіні құру кезінде орындаушы бөлігі осы түрдегі обектінің денедегі
деректерге операция жасау.
6.1.2.3. Процестер және тізбектер
Windows NT-ның процестері келесі сипаттардан тұрады:
Windows NT-ның процестері объектілер формаларында іске асырылған және
оларға қол жеткізу объектінің қызметтері арқылы жүзеге асырылады.
Windows NT-ның процестері көп тізбекті ұйымнан тұрады.
Объекті – процестер объекті тізбектер сияқты синхрондаудың орнатылған
құрылғыларынан тұрады.
Windows NT-ның процес менеджері –процестер арасында, «әке- ұрпақ» секілді
қатынастарды қолдамайды.
Кез келген жүйеде «процесс» ұғымы келесілерден тұрады:
Орындалушы код
Виртуальды адрес жиынтығынан тұратын және процесті қолданатын
меншікті адресті кеңістік
Операциялық жүйе процеске тағайындалған файлдар, семафорлар сияқты
жүйе қорлары
Ең болмағанда бір орындалатын тізбектің болуы
6.1.2.4 Процестер мен тізбектерді жоспарлау алгоритмі
Windows NT-да ығыстырушы көпміндеттілік іске асырылған. Оның негізінде
операциялық жүйе тізбектің процесорларды қашан босататынын тоспайды, ол берілген
уақытты кетріп болғаннан кейін еріксіз оны орындаудан дайын кезекте жоғары
басымдықты тізбек пайда болса босатады
Windows NT 2 класқа бөлінген 32 деңгейлі приоритеттен тұрады:
Нақты уақыт класы
Айнымалы приоритет класы
16 –дан 31 диапазон аралығында орналасқан приоритеттері бар нақты уақыт тізбектері
приоритетті процес болып табылады және уақыт бойынша критикалық міндеттің
орындалуы үшін қолданылады.
6.1.2.5. NT үзілулерін өңдеу
Өңдеу екі кезеңде жүргізіледі:
Алдымен ең қысқа үзілудің қамтамасыз ету бағдарламасы орындалады (ISR)
Кейін жұмыс DPC – кейін қалдырылған шақыру процедураларымен
аяқталады.
Келесі оқиғалар ағыны туындайды:
Үзілу пайда болады
Процессор PC, SP сақтайды және диспетчерді шақырады
ОЖ контексті сақтайды және ISR-ды шақырады
ISR-де критикалық жұмыс орындалады (оқу/жазу аппарат регистрлерін)
DPC кезеккке қойылады
ОЖ контексті қалпына келтіреді
Процессор PC, SP қалпына келитіреді
Кезекте тұрған DPC DISPATCH LEVEL приоритеті деңгейінде орындалады
Барлық DPC аяқталғаннан кейін ОЖ қосымшаның орындалуына көшеді
6.1.2.6 Желілік құрылғылар
Windows NT желілік құрылғыларды жаңарту негізінде келесі қасиеттерге ие болады:
Драйверлер деңгейінде ендірілген. Бұл қасиет жылдам әсер етуді қамтамасыз
етеді.
Ашықтық –динамикалық –жүктеу-жүктелу жеңілдігіне негізделген.
RPC –ның болуы, аталған конвейер мен пошталық жәшіктерге жіктелген
қосымшалар үшін арналған
Корпорация шеңберінде желіні құруға рұқсат ететін қосымша желілік
құрылғылардың болуы. Қосымша қауіпсіздік құрылғылары
орталықтандырылған административтік қарсы тұру қабілеті.
6.2. Windows NT ОЖ НУОЖ дәрежесінде
6.2.1 НУОЖ ретінде Windows NT-ті қолдану мүмкіндігі
6.2.1.1. НУОЖ негізінде Windows NT қолдану үшін Microsoft аргументі
Жүйенің көпміндеттілік
Көп процессорлықты қолдау
Preemtion міндеттері
Preemtion үзілулері және оларда жасыру мүмкіндігі
Асинхронды енгізу/шығару
HAL интерфейсі арқылы құрылғыға тура қол жеткізу
Арнайы приоритет сызбалары
6.2.1.2. НУОЖ негізінде Windows NT қолдануға қарсы аргумент
Жүйенің ядросы Preemptive емес
DPC механизм кемшіліктері
Нақты уақыт класындағы приоритеттің аз көлемі
Приоритеттің инверсия мәселелері шешілмеген
Жоғары приоритетті міндеттер төменгі приоритеттілермен блокка
қойылуы мүмкін
VirtualLock шақыруына қарамастан белсенді емес процестің барлық беттері
(мысалы, мәліметтерді күтетін) дискіге көшірілуі мүмкін
Windows NT үшін жүйелік шақырулар уақыты мен үзілулердің блокка қойылу
уақыты келтірілмейді
Жүйені дисплей мен перне тақтасыз қолдану мүмкін емес
Жүйе НУОЖ үшін жадыға үлкен көлемді сұраныстарды ұсынады
Осы кемшіліктерді жою үшін компаниялар программалық (аппараттық)
құрылғыларды ұсынады.
6.2.2. Windows NT ОЖ үшін нақты уақыт кеңейтілулері
6.2.2.1 Windows NT жүйе үшін нақты уақыт кеңейтілуі туралы толығырақ
Кеңейтілуді жасаушылар екі жолмен жүрді:
1.
НУОЖ ядросын Windows NT ядросына қосымша ретінде қолданды. Бұл «LP
Eleknroniks» және «Radisys» ф ирмасының шешімі болды. Бірінші жағдайда Windows NT-
пен қатар VxWorks ОЖ жұмыс істейді, екінші жағдайда InTime . Сонымен қатар нақты
уақыт байланыс қосымшалары мен Windows NT қосымшалары үшін қызметтер
жиынтығы ұсынылады.
VenturCom фирмасының нақты уақыт кеңейтілу нұсқалары басқаша болды. Бұл
жерде нақты Windows NT-да кідірістер мен тоқтап қалу себептерін зерттеуге және осы
себептерді нақты уақыт жүйесі арқылы жою жолымен «интегралдау» тәсілін қолданды.
«VenturCom» фирмасының шешімімен Windows NT аппаратты абстракция деңгейінде
жаңарту-драйверлердің аппаратурамен өзара әсерлесетін программалық қабатқа
негізделген.
СДЖ арналған бақылау жұмыстары:
1.
Windows NT – ның басты сипаттамалары
2.
Windows NT-да микроядро концепциясы не арқылы жүзеге асырылады?
3.
Windows NT-да қандай 2 режим бар?
4.
Windows NT-да сервистер мен серверлер қандай режимдерде орындалады және
олардың өзара әсерлесулері қалай орындалады?
5.
Серверлердің, сервистердің, енгізу/ шығару менеджерлерінің , микроядро және
аппаратты абстракция деңгейлерінің негізгі қызметтері.
6.
Windows NT-ның барлық программаларын біртұтас жүйеге біріктіретін басты
құрал не?
7.
ОЖ-нің қандай қолданбалы орталдарын Windows NT қабылдайды?
8.
Объектіленр деген не, олар не үшін қолданылады және олар қандай бөліктерден
тұрады?
9.
Windows NT-да процестер мен тізбектер қалай жүзеге асырылады?
10.
Windows NT-дағы тізбектердің жоспарлау алгоритмдері
11.
Windows NT-нің интерактивті есептер үшін қандай жоспарлау жүзеге
асырылады?
12.
Windows NT-дағы үзілулерді өңдеу
13.
Windows NT-дағы желілік құралдар
14.
NT НУОЖ ретінде қолдану мүмкіндігі. «Иә» және «жоқ» аргументтері
15.
NT НУОЖ ретінде қолдану мүмкіндігінің 2 шешімі
Ұсынылатын әдебиеттер:
А.В.Гордеев, А.Ю.Молчанов. Системное программное обеспечение. — "Питер",
2002. — 736с
7. 7 дәріс. «Классикалық» НУОЖ. Объекті-бейімделген жүйелер.
Дәріс жоспары
7.1. «Классикалық» НУОЖ
7.1.1. QNX ОЖ
7.1.1.1. QNX ОЖ-нің басты сипаттамалары
7.1.1.2. QNX микроядросының архитектурасы
7.1.1.2.1. Шын ядро
7.1.1.2.2. Жүйелік процестер
7.1.1.2.3. Құрылғылар драйверлері
7.1.1.2.4. Процесаралық байланыс (IPC)
7.1.1.3. QNX хаттар тасымалының ОЖ ретінде
7.1.1.4. QNX желі ретінде
7.1.1.4.1. Бірлік компьютер моделі
7.1.1.4.2. Желінің тиімді ұйымдастырылуы
7.1.2. pSOS
7.1.3. VxWorks
7.2 Объекті- бейімделген жүйелер
7.2.1. OS-9
7.2.1.1. OS-9 басты сипаттамалары
7.2.2. Linux ОЖ үшін нақты уақыт кеңейтілулері
7.2.3.1. Linux-те ядролардың жүктелуші модульдері
7.2.3.2. Linux негізіндегі жүйелер
7.2.3.3. Linux жүйесінің даму бағыттары
7.2.4. Soft Kernel
7.1. «Классикалық» НУОЖ
Программалауға сүйенетін классикалық процедураларға негізделген жүйелерді
қарастырайық.
7.1.1. QNX ОЖ
7.1.1.1. QNX ОЖ-нің басты сипаттамалары
QNX жүйесін QNX SoftWare Systems (USA) фирмасы өндіреді. Басты
сипаттамалары:
3.
Классикалық жүйелер түрі: self-hosted
4.
Архитектура: Микроядро негізінде
5.
Стандарт: POSIX 1003
6.
Қасиеттері НУОЖ-нікіндей:
-
көп міндеттілік: POSIX 1003
-
көп процессорлық
-
32 деңгейлі приоритет
-
жоспарлау: FIFO, round robin, адаптивтік
-
preemptive ядросы
7.
ОЖ жасау (host): UNIX/Windows.
8.
Процессорлар (target):Intel 80x86
9.
Байланыс сызықтары host/target: Ethernet, Arcnet, Serial, Token Ring.
10.
Ең аз өлшемі: 60 Kb
11.
Синхрондау және өзара әсерлесу құралдары: POSIX 1003 (семафорларб mutex . . .)
12.
Жасау құралдары:
-
Компилятор С/С++, түзеткіш, QNX анализдеушісі және тәуелсіз жеткізушілерден
(мысалы , Watcom/ SyBase)
-
QNX үшін X Windows / Motif
QNX бұл жоғары модульділік, тиімділік, қарапайымдылық деген атқа 2 іргелі
принцип арқылы қол жеткізді:
Микроядролық архитектуралар
Хаттарға негізделген процесаралық байланыс
7.1.1.2. QNX микроядросының архитектурасы
QNX өзара әсерлесуші процестердің тобына жауапты шағын ядродан құралады.
Келесі суреттен көріп отырғанымыздай, құрылым иерарихиядан гөрі көбінесе топқа
ұқсайды-бірнеше ойыншылар бірдей рангтің бір-бірімен және өзінің ядро «төрттігімен»
өзара әсерлеседі.
5. сурет. Жүйелік менеджерлермен суреттелетін QNX микроядросы
Шын ядро
Ядро- кез келген операциялық жүйенің негізі, QNX-те оған 2 қызмет арналған:
Хаттар тасымалы- микроядро барлық жүйенің барлық процестер
арасындағы барлық хаттардың жолын басқарады.
Доспарлау- бұл микроядроның бөлігі, ол процес өз күшін хат және үзілу
нәтижесі ретінде өзгерткен сайын шақырылады.
Жүйелік процестер
QNX конфигурациясы келесі жүйелі процестерден тұрады:
Процестер менеджері (Proc)
Файлдық жүйе менеджері (Fsys)
Құрылғылар менеджері (Dev)
Желілік менеджер (Net)
Құрылғылар драйверлері
Құрылғылар драйверлері- анықталған аппаратты құралдар үшін талап етілетін ОЖ-
ні құралдармен әсерлесуден қорғайтын процестер.
Процесаралық байланыс (IPC)
QNX қарапайым, бірақ мықты IPC мүмкіндіктерін қамтамасыз етеді.
7.1.1.3. QNX хаттар тасымалының ОЖ ретінде
QNX-те хат дегеніміз- бір процестен келесіне өтетін байттар пакеті. QNX-те хаттың
құрамына ешқандай арнайы көңіл бөлінбейді-хаттағы деректердің тек хатты жіберуші мен
қабылдаушыға маңызы зор.
7.1.1.4. QNX желі ретінде
Ең қарапайым формада локальді желі бірнеше біріккен компьютерлер ортасындағы
файлдар мен перифериялық құралдарды бірігіп қолдану механизм арқылы қамтамасыз
етіледі. Процестер желінің барлық жерінде осы әдіспен байланысады.
Бірлік компьютер моделі
QNX негізінен глобальді желілік ОЖ ретінде жасалған. QNX желісі әмбебап
микрокомандалар жиынтығынан компьютерлерді қабылдайды.
Желінің тиімді ұйымдастырылуы
QNX-тегі желіде әрбір түйінге оның номері беріледі, кейін ол оның
идентификаторы болады. Бұл номер QNX желілік немесе жеке ОЖ ретінде
орындалатынын анықтайды.
7.1.2. pSOS
pSOS жүйесі Integrated Systems (Santa Clara, USA) фирмасымен өндіріледі. 2000
жылы ақпанда фирманы Wind River Systems (Alameda, CA, USA) компаниясы алды.
Басты сипаттамалары:
1. Түрі: host/target
2. Архитектура: Микроядро негізінде
3.
Стандарт: өзіндік
4.
Қасиеттері НУОЖ-нікіндей:
-
көп міндеттілік
-
көп процессорлық
-
255 деңгейлі приоритет
-
жоспарлау: приоритетті
-
preemptive ядросы
5.
ОЖ жасау (host): UNIX/Windows.
6.
Процессорлар (target): Motorola 68xxx, Intel 80x86, ARM, MIPS, Power PC
7.
Байланыс сызықтары host/target: тізбекті канал, Ethernet.
8.
Ең аз өлшемі: 15 Kb
9.
Синхрондау және өзара әсерлесу құралдары: семафорлар, mutex , оқиғалар
және т.б.
10.
Жасау құралдары:
С/С++/ADA жасаудың интегралданған ортасы
7.1.3. VxWorks
VxWorks жүйесі Wind River Systems (Alameda, CA, USA) фирмасымен өндіріледі.
Басты сипаттамалары:
1. Түрі: host/target
2. Архитектура: монолитті
3.
Стандарт: өзіндік және POSIX 1003
4.
Қасиеттері НУОЖ-нікіндей:
-
көп міндеттілік
-
көп процессорлық
-
256 деңгейлі приоритет
-
жоспарлау: приоритетті
-
preemptive ядросы
5.
ОЖ жасау (host): UNIX/Windows.
6.
Процессорлар (target): Motorola 68xxx, Intel 80x86, Power PC , SPARC, Alpha,
ARM, MIPS.
7.
Байланыс сызықтары host/target: тізбекті канал, Ethernet, VME шинасы
8.
Ең аз өлшемі: 5.8 Kb
9.
Синхрондау және өзара әсерлесу құралдары: семафорлар POSIX 1003, кезектер,
белгілер...
10.
Жасау құралдары:
-
TORNADO С/С++ жасаудың интегралданған ортасы
-
UNIX үшін эмуляторы VxSIM
-
WindView есептердің күйінің графикалық визуалиаторы
7.2 Объекті- бейімделген жүйелер
7.2.1. OS-9
7.2.1.1. OS-9 басты сипаттамалары
1. Түрі: host/target
2. Архитектура: микроядро негізінде
3.
Стандарт: өзіндік , UNIX –қа ұқсас шақырулар
4.
Қасиеттері НУОЖ-нікіндей:
-
көп міндеттілік
-
көп процессорлық
-
255 деңгейлі приоритет
-
жоспарлау: приоритетті, FIFO, арнайы жоспарлау механизмі
-
preemptive ядросы
5.
ОЖ жасау (host): UNIX/Windows.
6.
Процессорлар (target): Motorola 68xxx, Intel 80x86, Power PC , ARM, MIPS.
7.
Байланыс сызықтары host/target: тізбекті канал, Ethernet
8.
Ең аз өлшемі: 16 Kb
9.
Синхрондау және өзара әсерлесу құралдары: бөлінетін жады, семафорлар,
оқиғалар, белгілер
10.
Жасау құралдары:
-
Hawk - С/С++ жасаудың интегралданған ортасы
-
PersonalJava – Java виртуальді машинасы
7.2.3. Linux ОЖ үшін нақты уақыт кеңейтілулері
11.
Linux негізіндегі жүйелерді қарастырамыз- UNIX жүйесімен еркін
таралады. Ол үстел компьютерлерінде өзінің тегін және сапалы күшінде тараған. Intel
80x86 машиналарында процессор мен пайда болғаннан кейін қазір Alpha , SPARC, Power
PC , ARM, Motorola 68xxx, MIPS процессорларын қабылдайды .
Linux жүйесінің нақты уақыт талаптарына 3 бағыт жатады:
1.
Нақты уақыт жүйелеріне қатысты POSIX стандартын қолдау. POSIX 1003. 1с
(thread міндеттермен жұмыс) стандарты қабылданды, POSIX 1003. 1б стандартының бөлігі
ғана қабылданды: жадыны басқару механизмі және есептерді жоспарлау механизмі жүзеге
асырылады, таймерлермен жұмыс істеу механизмдері, белгілер, POSIX семафорлары,
хаттар кезегі әлі жүзеге асырылмаған.
2.
Арнайы құрылғыны қолдау, олардың ең маңыздысы VME шинасы. VME. PCI
мостын қолдау бар. ПЕСҚ-нан Linux –тың орындалуын қамтамасыз ету бойынша
жұмыстар жүргізіліп жатыр. Нақты уақыт жүйелері жүйе таймерлерінің жоғарылауы
маңызды.
3.
Жүйе ядросы үшін preemption механизмін іске асыру. Бұл механизм бір жағынан
жүйенің нақты уақыт жүйесі деп атау үшін қажет, екінші жағынан, ол жүзеге асырылу
үшін өте күрделі. Linux басқа UNIX жүйелері сияқты көпке дейін жүйе өзегіне кіруге
қарсы болды, және preemtive болмайды.
Linux ядросы үшін preemption жүзеге асырудың бірнеше жобалары бар. Есептерді
шешу тәсілдері бойынша оларды екі топқа бөлуге болады.
1.
preemption механизмі жүйе ядросын көшіру арқылы жүзеге асырылады. Осы
жолда ең сапалы нәтижелерге қол жеткізуге болады, бірақ қазіргі уақытта сапалы
нәтижелер жоқ өйткені:
A.
Ядроның үлкен көлеміне байланысты жұмыстың көлемі өте үлкен
B.
Ядроның өзгеру жылдамдығы өте жоғары, өзгерістер нақты уақытқа байланысты
емес
2.
preemption механизмі микроядроны жазу арқылы жүзеге асырылады, ол үзілулер
мен есептерге диспетчер жауап береді. Linux ядросы төменгі приоритетпен жұмыс
істейді, мұндай жүйедегі міндеттер екі топқа бөлінген:
A.
тек микроядроның басқаруымен жұмыс істейтін процестер, бұл процестер Linux
ядросында үзілетіндіктен нақты уақыт талаптарын қанағаттандырады.
B.
Linux басқармасымен жұмыс істейтін процестер, сонымен қатар микроядро
басқарумен жұмыс істейтін есептер, бірақ Linux функцияларын қолданады; бұл процечтер
Linux ядросында блокка қойылатындықтан, нақты уақыт талаптарын
қанағаттандырмайды.
Мұндай жолдың кемшілігі нақты уақыт процестерінің қызметімен қамтамасыз
етілетін микроядроны жүзеге асырудың қажеттілігі. Мысалы, нақты уақыт процесі
коммуникациялық портпен жұмыс істегісі келсе, ( мысалы, COM порты), онда бұл
порттың драйвері Linux ядросынан микроядроға ауыстырылуы қажет.
7.2.2.1. Linux негізіндегі жүйелер
RT-Linux
KURT
7.2.2.2. Linux жүйесінің даму бағыттары
Linux және Hurd
Карнеги-Меллон университетінде Machжобасы жасалынды- операциялық жүйенің
микроядролық архитектурасы. Микроядро процестерді, олардың арасындағы хаттар
айырбасын, виртуальді жадыны және құрылғылар драйверлерін басқарады. Операциялық
жүйенің қалған бөлігі серверлер түрінде жүзеге асады- тұтынушылық режимде
орындалатын программалар.
Сервер тұтынушы үшін жүйенің түрін анықтайды. Жүзеге асқан сервер жүйені
UNIX немесе DOS- қа айналдырады.
Микроядро көп процессорлы жүйе жұмысына бейімделген, аппаратты
платформаның жоғарғы тәуелсіздігі мен тұтынушы құқығына ие қазіргі заманғы
технология.
Hurd, UNIX нұсқасы ретінде Mach микроядросының серверлер түріндегі жүзеге
асырылған. Еркін операциялық жүйе Hurd жүйесі жұмыс істеп тұрғанмен, әлі аяқталған
жоқ. Бұл міндеттерді Столлман RISC- машинасының желілік функциялары мен жүйенің
нұсқасының іске асырылуы ретінде санайды.
Hurd GNU жобасының аяқталған шағы - UNIX операциялық жүйесінің стандартты
еркін ортасын құру – оны FSF қоры құрады. Столлман қазірдің өзінде GNU – Linux
операциялық жүйесі толық іске асырылу жобасы бар деп аталады, өйткені Linux
құралына GNU жобасының программалық қамтамасыздандырылуы жатады. (
трансляторлар, редакторлар, утилиттер және т.б.)
Hurd үшін Linux файлдық жүйесінің серверін жасаушы Луи—Доминик Дюбо (
Louis –Dominique Dubeau) былай дейді: « Hurd өте жақсы жобаланған, ол сенімді ақтайды
деп ойлаймын. Hurd технологиясын микроядро негізінде Linux жүзеге асыру үшін
қолдану – қазіргі заманда ең тиімді шешімдердің бірі».
Сонымен , Linux және Hurd бір-біріне қарама-қарсы келе жатыр. Бұл Mach
микроядро серверлері болады.
Linux OSF микроядро негізінде
APPLE фирмасы MkLinux - Linux серверінің OSF микроядросына жұмысын
демеуші болды. Бұл жұмысты OSF Resarch Institute орындады. Барлық шығатын Intel
және Power Macintosh платформаларына арналған тексттер еркін таралады. – Linux сервер
GNU GPL лицензиясымен таралады, микроядро және басқа серверлер OSF Free Copуright
лицензиясымен таралады. Power Macintosh платформасына арналған нұсқа 1996 жылдың
жазында дайын болды.
7.2.4. Soft Kernel
Soft Kernel жүйесі Microprocess (Courbevoie, France) фирмасымен өндіріледі. Басты
сипаттамалары:
1. Түрі: host/target
2. Архитектура: объекті- микроядролар негізінде
3.
Стандарт: өзіндік
4.
Қасиеттері НУОЖ-нікіндей:
-
көп міндеттілік
-
көп процессорлық
-
255 деңгейлі приоритет
-
жоспарлау: приоритетті, FIFO
-
preemptive ядросы
5.
ОЖ жасау (host): UNIX/Windows.
6.
Процессорлар (target): Motorola 68xxx, Power PC , Intel 80960, ARM, SPARC.
7.
Байланыс сызықтары host/target: тізбекті канал, Ethernet
8.
Ең аз өлшемі: 40 Kb
9.
Синхрондау және өзара әсерлесу құралдары: семафорлар, белгілер, оқиғалар,
пошталық жәшіктер.
10.
Жасау құралдары:
-
SoftWorks - С/С++ жасаудың интегралданған ортасы
СДЖ арналған бақылау жұмыстары:
1.
Қандай НУОЖ классикалық ОЖ-ге, қандай НУОЖ объекті—бейімделгенге
жатады?
2.
QNX жүйесінің басты сипаттамалары
3.
Нақты уақыт қандай компоненттері QNX ОЖ-н қамтамасыз етеді?
4.
Қандай екі іргелі принципке QNX ОЖ негізделген?
5.
QNX ОЖ-нің микросының басты функциялары
6.
QNX ОЖ конфигурациясын қандай менеджерлер қолданады?
7.
Құрылғылар драйверлері деген не және олар қандай QNX ОЖ-де қызметтер
атқарады?
8.
pSOS ОЖ-нің басты сипаттамалары
9.
VxWorks ОЖ-нің басты сипаттамалары
10.
OS-9 ОЖ-нің басты сипаттамалары
11.
OS-9 ОЖ қандай программалау тілінде жазылған?
12.
OS-9 ОЖ жасау кезінде қандай талаптар қойылады?
13.
OS-9 ОЖ – дегі модульділік деген не?
14.
OS-9 ОЖ-ның ядросы қандай қызметтер атқарады?
15.
OS-9 ОЖ-ң жүйе сенімділігін қанағаттандырады?
16.
OS-9 ОЖ –де үзілулерді өңдеу программасы қалай жұмыс істейді?
17.
Linux жүйесінің басты даму бағыттары
18.
НУОЖ-ның даму тенденциялары
Ұсынылатын әдебиеттер:
1.
А.В.Гордеев, А.Ю.Молчанов. Системное программное обеспечение. — "Питер",
2002. — 736с. Соломейчук В.Г. Linux. Экспресс курс. – СПб.: БХВ – Петербург,
2005. – 277с.
2.
Стахнов А.А. Linux. Научное издание. 2-е изд. - СПб.: БХВ – Петербург, 2005. –
944с.
3.
Зыль С.Н. Операционная система реального времени QNX: от теории к практике. 2-е
изд., перераб. доп. – СПб.: БХВ – Петербург, 2004. – 191с.
4.
Операционная система реального времени QNX Neutrino 6.3. Системная
архитектура. пер. с англ./ гл. ред. Е. Кондукова. – М.: СПБ.: Нижний Новгород:
Питер, 2006. – 336с.
5.
Зыль С.Н. QNX momentics. Основы применения. – СПб.: БХВ – Петербург, 2005. –
255с.
6.
Болл Б., Хойт Д. Red Hat Linux.8/9. Настольная книга пользователя. пер. с англ. – М.:
СПб.: Киев: DiaSoft, 2005. – 921с.
7.
Цилюрик О., Горшко Е. QNX/UNIX. Анатомия параллелизма. – СПб.: М.: Символ,
2006. – 287с.
Достарыңызбен бөлісу: |