Назар аударыңыз. Бұл материалды сайт қолданушысы жариялаған. Егер материал сіздің авторлық құқығыңызды бұзса, осында жазыңыз. Біз ең жылдам уақытта материалды сайттан өшіреміз
Жақын арада сайт әкімшілігі сізбен хабарласады
Бонусты жинап картаңызға (kaspi Gold, Halyk bank) шығарып аласыз
Операциялық жүйелер
Дипломдар мен сертификаттарды алып үлгеріңіз!
Материалдың толық нұсқасын
жүктеп алып көруге болады
«Операциялық жүйелер, орта және қабықшалар»
Кіріспе. Курс мақсаты мен мәні. Операциялық жүйелердің даму бағыттары. Операциялық жүйелердің даму тенденциялары.
1 Негізгі ұғымдар мен анықтамалар
Операциялық жүйе (ОЖ) – компьютердің аппаратурасы мен қосымшалары (және пайдаланушылары) арасындағы интерфейс ретінде болатын бағдарламалық қамтама бөлігі.
ОЖ екі негізгі функцияны орындайды:
-
Пайдаланушы-бағдарламалаушыға компьютердің нақты аппаратурасының орнына жұмыс істеуге ыңғайлы болатын кеңейтілген виртуальді машинаны ұсынады. Виртуальді машина – бұл пайдаланушы үшін берілген конфигурацияны нақты бар компьютердің бағдарламалық және аппараттық құралдарымен модельдейтін есептеуіш жүйесі. ОЖ аппараттық машинаны виртуальді машинаға түрлендіретін бағдарламалық қамтама қабаты болып табылады. Виртуальді машина конфигурациясының нақты машина конфигурациясынан айтарлықтай ерекшелігі болуы мүмкін.
-
Компьютердің ресурстарын рационалды түде басқару есебінен оны пайдалану тиімділігін арттырады.
ОЖ ресурстарын екі топқа бөлуге болады (1.1-сурет):
-
бағдарламалық ресурстар (процестер, виртуальді адрестік кеңістік, енгізу-шығару ішкіжүйесі);
-
аппараттық ресурстар (процессорлар, жады, құрылғылар).
Сурет 1.1 – Ресурстар классификациясы
Әрбір аппараттық ресурсқа онымен тығыз байланысқан қандай да бір бағдарламалық ресурс (мысалы, процессор мен процесс) сәйкес келетінінен назар аударайық.
Бейнелеп айтқанда, ОЖ-нің негізгі функциясын сиқырлаушылық деп есептеуге болады – жүйенің нақты бейнесінен жоғарылау күйге түрленуі. Мысалы, операциялық жүйе бір процессорда бірнеше бағдарламаны бірмезгілде орындау иллюзиясын жасай алады. Нәтижесінде пайдаланушы виртаульді машинаны нақты бар машинадан архитектурасы өте жоғары компьютер ретінде қабылдайды.
Операциялық жүйе ядросы – операциялық жүйенің негізгі функцияларын орындайтын модульдер. Бұл модульдер әдетте, процестерді, жадты, енгізу-шығару құрылғыларын басқаруды қолдайды. Операциялық жүйе ядросының коды процессор жұмысының пұрсатты режимінде орындалады.
Операциялық жүйенің кейбір компоненттері осы операциялық жүйе үшін стандартты форматтағы қарапайым қосымшалар болып табылады. Оларды операциялық жүйенің көмекші модульдері деп атайды. Сондықтан көп жағдайда операциялық жүйе мен қосымшалар арасында шекара жүргізу қиынға соғады. Әдетте, қандай да бір бағдарламаның операциялық жүйеге тиістілігі туралы шешімді өндіруші қабылдайды.
3 Операциялық жүйелердің даму бағыттары.
ОЖ-лердің төменде келтірілген тарихи буындарын атап көрсету қабылданған:
-
Нөлдік буын. Алғашқы компьютерлерде ОЖ-лер болмаған. Бұл алғашқы компьютерлердің пайда болуынан бастап ХХ ғасырдың 50-ші жылдары ортасына дейінгі период.
-
Бірінші буын. Пакеттік өғдеу, мультибағдарламалық ОЖ-лер. ХХ ғасырдың 50-жылдарының ортасында пайда болды.
-
Екінші буын. Көпрежимді ОЖ-лер, нақты уақыт ОЖ-лері. ХХ ғасырдың 60-жылдарында пайда болды.
-
Үшінші буын. Дербес компьютерлерге арналған ОЖ-лер, желілік ОЖ-лер. ХХ ғасырдың 80-жылдарының басында пайда болды
-
Төртінші буын. Үлестірілген ОЖ-лер. ХХ ғасырдың 90-жылдарының басында пайда болды
4 Операциялық жүйелердің даму тенденциялары
Бірінші ОЖ ХХ ғасырдың 50-жылдары ортасында пайда болды. Ол IBM-701 компьютері үшін General Motors компаниясының зерттеу лабораториясында жасалды. ХХ ғасырдың 60-жылдары ортасына дейін операциялық жүйелер тегін таратылатын. 1.2-суретте белгілі ОЖ-лер және олардың жасалған жылдары көрсетілген.
Кейбір операциялық жүйелерге мінездеме берейік.
-
Atlas. Бұл ОЖ Манчестер (Англия) университетінде жасалды. Алғаш рет осы операциялық жүйеде пайда болған ерекшеліктердің көбі (мысалы, жадты беттік басқару) қазіргі уақытта қазіргі заманғы операциялық жүйелердің стандартты бөліктері болып табылады.
-
XDS-940. Бұл жүйе Беркли (АҚШ) университетінде жасалды. Бұл уақыты бөлінген операциялық жүйелер болды. Ол пайдаланушылық бағдарламаға процестерді анықтап, олармен жүйелік шақырулар арқылы жұмыс істеуге мүмкіндік берді.
-
THE. Эйндховен Техникалық мектебінде (Голландия) жасалды. Жүйе қабатты архитектуралы болды және семафорлар көмегімен синхронизацияны орындай отырып, параллель процестермен жұмыс істей алды.
-
CTSS. Жүйе Массачусетс технологиялық институтында (АҚШ) уақытты бөлу механизмімен болатын экспериментальды жүйе ретінде жасалды.
-
MULTICS. Бұл жүйе де Массачусетс технологиялық институтында жасалды және CTSS жүйесінің дамытылған түрі болып табылды. Өз кезегінде бұл жүйе Unix операциялық жүйесінің алдыңғы түрі болып табылады.
-
OS/360. IBM/360 копьютерлерінің үлкен әулеті үшін арналған операциялық жүйе. Ол ассемблер тілінде мыңдаған бағдарламалаушылармен жазылды және миллиондаған қатарлы кодты ұсынды.
-
Unix. Unix операциялық жүйесінің ресми туылған күні деп 1970 жылдың 1-қаңтары саналады. Осы сәттен бастап кез келген Unix жүйесі өзінің жүйелік уақытын есептеуді бастайды. Шындығында бұл операциялық жүйенің бірінші нұсқасы 1969 жылы жасалды.
Сурет 1.2 – Белгілі операциялық жүйелер
2. Операциялық жүйелердің жіктелігі. Операциялық жүйенің функциялары мен міндеттері. Мультипрограммалау. Уақыт бөлу режимдері.
1 Операциялық жүйелердің жіктелігі
1.1 Орталықтандыру типі бойынша жіктеу
Бірінші және негізгі жіктеу негізіне операциялық жүйені орталықтандыру (байланыстылық) дәрежесін жатқызамыз (2.1-сурет).
Сурет 2.1 – Орталықтандыру типі бойынша жіктеу
Бұл жіктеу операциялық жүйелер жасалатын аппараттық платформалар ерекшеліктерін назарға алады.
1. Орталықтандырылған (жергілікті) ОЖ-лер. Бұл жүйелер жалғыз локальді компьютер ресурстарын басқарады. Оларға алгоритмдер жағынан алғанда екі әртүрлі ішкікластар кіреді: - Бірпроцессорлы жүйелер; - Көппроцессорлы жүйелер.
2. Желілік ОЖ-лер. Мұндай жүйелер желі пайдаланушыларына нақты желілік аппаратураға қарағанда жұмыс істеуге ыңғайлы қайсыбір виртуальді машинаны ұсынады. Алайда, пайдаланушы желілік ресурстарға қол жеткізу үшін әрқашан арнайы операцияларды орындайды. Желілік жүйелер үш негізгі компоненттен тұратын қосымша желілік құралдардан тұрады:
-
ОЖ-нің серверлік бөлігі – жергілікті ресурстарды және ортақ пайдалану қызметтерін ұсыну құралдары;
-
ОЖ-нің клиенттік бөлігі – алыстатылған ресурстар мен қызметтерге қол жеткізу сұраныстарының құралдары;
-
ОЖ-нің транспорттық құралдары – желі компьютерлері арасында хабарламалар алмасуды қамтамасыз ететін құралдар.
3. Үлестірілген ОЖ-лер. Олар желі пайдаланушысына желілік ресурстардың мөлдірлігінің (ашықтығының) ең үлкен дәрежесін беретін бірыңғай орталықтандырылған виртуальді машинаны ұсынады. Үлестірілген жүйелер тығыз кооперацияда жұмыс істеу үшін желінің барлық компьютерлерін біріктіреді. Мұндай жүйелерде жұмыс істеу барысында қосымшаны іске қосатын пайдаланушы оның нақты қай компьютерде орындалып жатқанын білмейді.
Бұл жіктеудің қызықты негіздемесі бар. Параллель және үлестірілген архитектуралар классификациясының негізгі мінездемесі деп ортақ немесе үлестірілген (әрбір түйін үшін локальді) жадты айтады. Осыдан келіп, есептеуіш жүйелерін екі класқа бөлуге болады.
-
Күшті байланысты жүйелер. Бұған бірнеше біртекті процессорлардан және ортақ жад массивінен тұратын жүйелер жатады.
-
Әлсіз байланысты жүйелер. Бұл әрқайсысының өз жадысы бар біртекті есептеуіш түйіндерінен тұратын жүйелер.
Бағдарламалық қамтаманы да екі класқа бөлуге болады.
-
Күшті байланысты бағдарламалық қамтама. Бұған бірнеше есептеуіш модульдерінде орындалу барысында көбіне бір-бірімен байланысқан бағдарламалар жатады.
-
Әлсіз байланысқан бағдарламалық қамтама. Ол есептеуіш модульдеріне бір-бірінен тәуелсіз болуына, бірақ қажет жағдайда шектеулі мөлшердегі тәсілдермен өзара әрекет етуіне мүмкіндік береді.
Нәтижесінде осы жұптар арасында төрт әртүрлі комбинацияны алуға болады, олардың үшеуі мағыналы болып табылады және келесі операциялық жүйелер типін анықтайды (2.2-сурет).
Сурет 2.2 – Орталықтандыру типі бойынша жіктеудің негіздемесі
1.2 Ресурстарды басқару алгоритмдерінің ерекшеліктері бойынша жіктеу
Ресурстарды басқару алгоритмдерінің ерекшеліктері бойынша ОЖ жіктеуінің төмендегідей аспектілері бар:
1. Көпесептілікті қолдау
-
Біресепті ОЖ-лер пайдаланушының компьтермен өзара әрекетін қарапайым әрі ыңғайлы ете отырып, оған виртуальді машинаны ұсыну функциясын орындайды.
-
Көпесепті операциялық жүйелер қосымша түрде бірлесіп пайдаланатын ресурстарды бөлуді басқарады. Бірінші кезекте олар бірмезгілде бірнеше есепті бір процессорда орындау мүмкіндігін береді.
2. Көппайдаланушылық режимді қолдау
-
Бірпайдаланушылық ОЖ-лер бір пайдаланушының ақпараттарын басқа пайдаланушының санкцияланбаған қол жеткізуінен қорғау құралдарын ұсынбайды. Мұндай жүйелер ресурстарды бөлу мүмкіндіктерін ұсынбайды.
-
Көппайдаланушылық ОЖ-лерде ақпаратты қорғау құралдары бар.
3. Көпағындықты қолдау. Көпағындық ОЖ-лер процессорлық уақытты тек процессорлар арасында ғана емес, сонымен қатар процестердің жеке бұтақтары – ағындар арасында да бөлу мүмкіндігін береді.
4. Көппроцессорлы өңдеуді қолдау. Көппроцессорлы ОЖ-лер бірнеше процессорлармен жұмыс істеу мүмкіндігін ұсынатын ресурстарды басқарудың күрделі алгоритмдерін реализациялайды.
1.3 Аппараттық платформалар ерекшеліктері бойынша жіктеу.
Аппараттық құралдар спецификасы ОЖ спецификасында бейнеленеді. Бұл классификациядағы компьютерлердің әрбір типінің ОЖ-лер қасиетіне тікелей әсер ететін белгілі бір қасиеттері бар.
Дәл қазір төмендегідей ОЖ-лер тобы айтарлықтай қызығушылық тудырып отыр:
-
қуатты серверлер үшін ОЖ-лер;
-
жұмыс станциялары және дербес компьютерлер үшін ОЖ-лер;
-
қалта компьютерлері үшін ОЖ-лер.
1.4 Пайдалану облыстарының ерекшеліктеріне қарай жіктеу
Пайдалану облыстарының ерекшеліктеріне қарай көпесепті ОЖ-лер үш типке бөлінеді:
1. Пакеттік өңдеу операциялық жүйелері. Олар есептер пакетімен жұмыс жасайды, және процессордың бір есептен екіншісіне ауысуы тек белсенді есептің өзі процесордан бас тартқан жағдайда ғана орындалады.
2. Уақытты бөлу операциялық жүйелері. Мұндай жүйелер әрбір есепке процессорлық уақыттың қандай да бір квантын ұсынады. Бұл жерде осы операциялық жүйелерді диалогтық ретінде пайдалануға мүмкіндік беретіндей бағдарламаның жауап беру уақыты қабылдауға болатындай жеткілікті болады.
3. Нақты уақыт операциялық жүйелері. Олар қандай да бір технологиялық объекттер мен процестерді басқару үшін қолданылады. Оларда бағдарлама жауап беруге жететіндей шектелген уақыт болады.
Көптеген қазіргі заманғы операциялық жүйелер өзінде әртүрлі типтегі жүйелердің қасиеттерін үйлестіре алды. Мысалы, есептің бір бөлігі уақытты бөлу режимінде, ал бір бөлігі нақты уақыт режимінде орындалады.
1.5 Жүйе ядросының типі бойынша жіктеу
Ядро архитектурасының төменде келтірілген негізгі түрлері бар.
1. Монолитті ядро. Мұндай ядро пұрсатты режимде жұмыс істейтін және бір процедурадан екіншісіне жылдам өтуді пайдаланатын бір бағдарлама ретінде жинақталады (2.3а сурет).
2. Қабатты ядро. Бұл жағдайда операциялық жүйе компоненттері жақсы ұйымдастырылған функционалдылық пен интерфейс деңгейін құрайды. Алдыңғы жағдайдағыдай компоненттер пұрсатты режимде жұмыс істейді (2.3б сурет).
3. Микроядро. Микроядро аппаратураны басқару бойынша минимум функцияларды орындайды. Әдетте, оған машиналық-тәуелді бағдарламалар, үзілулерді өңдеу мен процестерді басқарудың кейбір функциялары қосылады. Жоғарылау деңгейдегі функциялар операциялық жүйенің мамандандырылған компоненттерін – процессор сервері, файлдық сервер және т.б. орындайды. Бұл компоненттер пайдаланушылық, пұрсатты емес режимде жұмыс істейді. Берілген архитектура «клиент-сервер» тәсіліне негізделген және кеңейтуге болатындығымен, сенімділікпен, шыдамдылықпен мінезделеді (2.3в сурет).
4. Экзоядро. Бұл архитектураның негізгі идеясы - функциялардың үлкен кітапханасын пайдалана отырып бағдарламаны құрастыру сияқты операциялық жүйені жинауға болатындығында. Нәтижесінде ол қосымшалардың қайсыбір жиынтығы үшін ең аз қажетті жинақты ғана қоса алады. Ядро архитектурасының бұл типі қазіргі уақытта әйгілі болып келеді.
Ядро архитектурасының айтарлықтай дәрежеде операциялық жүйенің барлық архитектурасына әсер ететінін айта кеткен жөн.
Сурет 2.3 – Ядро архитектурасын типі бойынша жіктеу
2 Операциялық жүйенің функциялары мен міндеттері
Операциялық жүйенің негізгі функциясы
Бейнелеп айтқанда, ОЖ-нің негізгі функциясын сиқырлаушылық деп есептеуге болады – жүйенің нақты бейнесінен жоғарылау күйге түрленуі. Мысалы, операциялық жүйе бір процессорда бірнеше бағдарламаны бірмезгілде орындау иллюзиясын жасай алады. Нәтижесінде пайдаланушы виртаульді машинаны нақты бар машинадан архитектурасы өте жоғары компьютер ретінде қабылдайды.
3 Мультипрограммалау. Уақыт бөлу режимдері.
Мультипрограммалу экзоядрода жүзеге асырылады. VM/370 жүйесінде әрбір пайдаланушы нағыз машинаның дәл көшірмесін ғана алады. Pentium-де 8086 виртуалды машинасы режимінде әрбір пайдаланушы басқа машинаның дәл көшіресін алады. Осы идеяны дамыта отырып, Массачусетс технологиялық институтының зерттеушілері әрбір пайдаланушыны нақты компьютердің абсолютті көшірмесімен қамтамасыз ететін (бірақ ресурстардың ішкі жиынымен) жүйені жасап шығарды. Мысалы, бір виртуалды машина дискте 0-ден 1023-ке дейінгі нөмірлі блоктарды, ал келесісі- 1024-тен 2047-ге дейінгі блоктарды және т.с.с. ала алады.
Ядро режимінде төменгі деңгейде экзояро (exokernel) деп аталатын бағдарлама жұмыс істейді. Оның міндетіне виртуалды машиналар үшін ресурстарды үлестіру, содан кейін оларды пайдалануды тексеру (машинаның бөтен ресурсты пайдалану әрекетін тексеру) енеді. Әрбір виртуалды машина пайдаланушы деңгейінде өз операциялық жүйесімен жұмыс істей алады.
Экзоядро схемасының артықшылығы - бейнелеу деңгейінсіз амалдай алуға мүмкіндік беретіндігінде. Жұмыс істеудің басқа әдістерінде әрбір виртуалды машина 0-ден қайсыбір максимумге дейінгі блоктар нөмірлеуімен өзінің меншікті дискісін пайдаланудамын деп есептейді. Сондықтан виртуалды машина мониторы дискте адрестерді түрлендіру кестесін (және барлық басқа ресурстарды) қолдауы тиіс. Берілген ресурс қай виртуалды машинаға бөлінгені туралы жазбаны ғана сақтау қажет экзоядро бар болған жағдайда түрлендіру қажеттілігі мағынасыз болып қалады. Мұндай тәсілдің тағы бір артықшылығы бар: ол көпесептілікті (экзоядрода) пайдаланушы операциялық жүйесінен (пайдаланушы кеңістігінде) ең аз шығындармен бөліп алады, өйткені бұл үшін оған тек бір виртуалды машинаның басқа машина жұмысына араласуына рұқсат етпеу ғана қажет.
3. Арнай міндетті және әмбебап операциялық жүйелер. Процессорді басқару.
1. Арнай міндетті және әмбебап операциялық жүйелер.
Монолитті жүйе
Жалпы жағдайда монолитті жүйені ұйымдастыру үлкен ретсіздік болып табылады. Яғни, осы сияқты құрылым жоқ. Операциялық жүйе әрқайсысы өзіне қажет кезде басқа процедураларды шақыра алатын процедуралар жинағы ретінде жазылған. Мұндай техниканы пайдалану барысында жүйенің әрбір процедурасы параметрлер және нәтижелер терминдерінде қатаң анықталған интерфейске ие болады, және олардың әрқайсысы өзіне қажетті қайсыбір жұмысты орындау үшін кез келген басқасын шақыру мүмкіндігіне ие.
Монолитті жүйені тұрғызу үшін барлық жеке процедураларды жинақтау қажет, содан кейін оларды жинақтаушы (компоновщик) көмегімен бірыңғай объекттік файлға байланыстыру қажет. Мұнда іске асырудың жасырын детальдері толығымен жоқ - әрбір процедура кез келген басқа процедураны көреді (ақпараттың көп бөлігі модуль үшін локальді болып табылатын және модуль процедураларын тек арнайы анықталған кіріс нүктелері арқылы ғана шақытуға болатын модульдерден тұратын құрылымға қарағанда). Алайда мұндай монолитті жүйелердің өзі қайфсыбір құрылымға ие. Операциялық жүйелерден қолдау табатын жүйелік шақыруларға жүгіну барысында параметрлер қатаң анықталған орныдарға – регистрлер немесе стекке орналасады, одан кейін ядро шақыру немесе супервизор шақыруы ретінде белгілі үзілудің арнайы командасы орындалады.
Клиент-сервер моделі
VM/370 жүйесі дәстүрлі операциялық жүйе кодының айтарлықтай бөлігін жоғары деңгейге, CMS жүйесіне (кеңейтілген машинаны қамтамасыз ететін) тасымалдау арқылы қарапайымдылық жағынан ұтады.
Алайда VM/370 және бұл жерде де күрделі кешендік бағдарлама болып қала береді, өйткені бірнеше виртуалды 370-х машиналарын модельдеу оңай емес (әсіресе, егер сіз оны жеткілікті түрде тиімді еткіңіз келсе).
Қазіргі кездегі операциялық жүйелерді дамытуда кодты ары қарай жоғарғы деңгейге ауыстыру және ядро режимінен минимальді микроядроны қалдыра отырып барлық мүмкін нәрселерді жою барысындағы тенденция бақыланады. Әдетте, бұл операциялық жүйенің көптеген есептерін орындауды пайдаланушылық процестерге арта салумен жүзеге асырылады. Қандайда бір операцияға сұраныс ала отырып, мысалы файл блогын оқу, пайдаланушы процесі (қызмет көрсетілетін процесс немесе клиенттік процесс деп аталатын) оны өңдеп, ажауап қайтаратын серверлік (қызмет көрсететін) процеске сұраныс жібереді.
2. Процестер және басқару ағымдары. Процесс ұғымы.
Процесс ұғымы қазіргі операциялық жүйелердегі негізгі ұйымдардың бірі болып табылады. Операциялық жүйе тұрғысынан алғанда, процесс жұмыс бірлігі, жүйелік ресурстарды тұтынуға өтініш. Егер процесс пен программа арасындағы қатынасты айтатын болсақ, онда келесі екі бекітім әділ:
-
программа бұл процесс күйінің бөлігі.
-
программа жұмысты орындау үшін бір процестен көбірек шақыруы мүмкін.
Процестер операциялық жүйеде иерархия құрайды. Соған сәйкес, туылған процестерді – берілген процестердің ұрпақтары, ал туылған процестің ата-анасын – бабасы деп атайық. Процестің негізгі күйлерін белгілейік (3.1 сурет):
Сурет 3.1 – Процесстің күйлері
-
процессорда – процесс барлық қажетті ресурстарға, оның ішінде процессорға ие, беленді күй;
-
дайындық – процесс орындауға кезекте;
-
күту – процесс оқиғаның аяқталуын күтеді;
-
тоқтату – процесс тоқтатылған;
-
құру – процесті құру үшін қажетті әрекетті орындау;
-
яқтау – процестің сәтті аяқталуымен байланысты әрекетті орындау;
-
зомби – процесс бітті, бірақ баба оның аяқталуын қабылдамады;
Процесті құру негізінде келесі әрекеттер орындалуы керек:
-
процеске ерекше нөмір беру (ID);
-
процесті жүйеге белгілі процестер тізімін қосу;
-
бастапқы приоритетті анықтау;
-
процеспен басқару блогын қалыптастыру;
-
қажетті ресурстарды бөлу.
3 Ағымдылықты қолдайтын процестер.
Басқару (thread) ағымы – программа командаларын табиғи ретпен орындау. Процестер традициялық және көп ағымды болып бөлінеді. Бір процестегі көп ағымдылықтың артықшылықтары бар. Бір процесте екі ағым арасында контексті ауыстырып қосу екі процесс арасындағы контексті ауыстырып қосудан оңайырақ. Орындау стегі мен процессор регистрінің мазмұны етегінен басқа барлық мәліметтер ағымдар арасында бөлінеді. Осылайша, көп ағымдылық тиілу параллеллизмді ұсынады. Көп ағымдылық қажет болатын программалардың тұтас класын көрсетуге болады: операциялық жүйелер, желілік серверлер, орныққан жүйелер, есептеу программалары.
Сигналдар – UNIX операциялық жүйесінде процестің қызметін үзуге болатын, программалық құрал. Сигналдар механизмі процестерге үрей оқиғаларға әсер етуге мүмкіндік береді. Әрбір сигналға сәйкесінше қойылады:
-
сигнал нөмірі;
-
символдық тұрақты;
-
сигналдардың бес класының біріне жатқ