Алматы экономика және статистика академиясы академияның оқу-әдістемелік кеңесінің



жүктеу 5.37 Kb.
Pdf просмотр
бет7/11
Дата30.04.2017
өлшемі5.37 Kb.
1   2   3   4   5   6   7   8   9   10   11

 
 
 
 
 

 
 
69 
 
 
Лекция  №6.Файлдық  жҥйелер.  Негізгі  тҥсініктер,  құрылымы. 
Функциялары.  Файлдарды  ұйымдастыру  әдістері.  Файлдар  құрылымы 
және  атрибуттары.  Иерархиялық  каталогтық  жҥйелер.  Файлдар 
құрылымы және мысалдары 
Әр бір операциялық жүйе бір түсініктемеге қолданылады оның бірі болып 
үрдіс табылады. Ал екіншітүсінік, олда ӛте маңызды – ол файл түсінігі.  
Файлдық  жүйе  –  бұл  операциялық  жүйенің  компоненті,  ол  файлды 
құрады,  сақтайды  және  атаулы  деректер    жиынына  қатынас  құрады.  Бұл 
атаулы деректер жиынын файл деп атайды. 
Файлдың негізгі қасиеттері.  
1.  Файл  –  бұл  аты  бар  және  осы  атқа  сілтеп  файл  мазмұнымен 
әрекеттесуге мүмкіндік беретін бір объект. Әдетте файл аты – ол тізбекті бір 
символдар, оның үзындығы операциялық жүйеге байланысты. 
2. Орналасудан  файлдың тәуелсіздігі. Нақты файл жұмыс орындау үшін 
файлдың сыртқы құрылғыда орналасуы жайында ақпараттың қажеті жоқ. 
3. Енгізу-шығару функцияларының  жиынтығы.Әр бір операциялық жүйе 
файлмен  алмасуды  қамтитын  функциялар  жиынтығын  анықтайды.  Кӛбінесе 
функциялар жиынтығы келесі сұраныстардан тұрады: 
1.
 
файлды  жұмыс  жасау  үшін  ашу.  Бар  немесе  жаңа  файлды  ашуға 
болады. 
 2.  Оқу/жазу.  Кӛбінесе  файлдармен  алмасу  бірнеше  деректер  блогымен 
ұйымдастырылуы  мүмкін.  Алмасу  жасалынатын  деректер  блогы  екі  түсінік 
кӛрсетеді.  Бір  жағынан  әр  есептеу  жүйесіне  деректер  блогының  мӛлшері 
белгілі,  және  олар  алмасуға  тиімді  болып  табылады,  ол  программалы  – 
аппаратты  мӛлшерлер.  Басқа  жағынан  бұл  деректер  блогы  реалды  алмасу 
кезінде  программистермен  ӛзгертілуі  мүмкін.  Оқу/жазу  функцияларында 
оқитын немесе жазылатын деректердің кӛбісінде алмасуға арналған деректер 
блогының  мӛлшері  және  деректер  блогының  саны  белгіленеді.  Таңдалған 
деректер  блогының  мӛлшері  реалды  алмасудың  тиімділігіне  байланысты, 
мысалы  бір  машинаның  деректер  блогының  тиімді  мӛлшері  256  Кб  болып 
табылады, ал сіз 128 Кбайтан алмасу орындағыңыз келеді, сонда сіз екі рет 
қатынас  құрасыз.  Бір  рет  алмасу  орындау  үшін  сіз  оны  екі  бӛліп  алмасу 
орындайсыз, бұл жағдайда операциялық жүйе тиімсіз  элеметтерді ӛзі түзеуі 
мүмкін. Түзелмеген жағдайда ол сіздің қатеңіз.  
3.  Файлдық  нұсқағышпен  басқару.  Әр  бір  ашық  файлмен  файлдық 
нұсқағыш  байланысты.  Бұл  нұсқағыш  бойынша  әр  бір  уақытта  алмасу 
орындайтын  келесі  файлдың  мекені  кӛрсетіледі.  Ол  блокпен  алмасу 
орындалған  соң  нұсқағыш  бір  блоктан  кейінгі  позицияға  ӛтеді.  Файлмен 
жұмыс ұйымдастыру үшін бұл нұсқағышты басқаруды білу қажет. Файлдық 
нұсқағышты  басқару  үшін  арнайы  функция  бар.  Нұсқағыш  дегеніміз  ол 
файлды ашу функциясымен байланысты бір айнымалы. 

 
 
70 
 
4.  Файлды  жабу.  Бұл  операция  екі  функция  арқылы  жүзеге  асырылуы 
мүмкін: 
1.
 
ағымдағы файл мазмұнын сақтау және жабу 
2.
 
файлды жою. 
Файлды жапқан соң онымен барлық байланыс тоқтатылады. 
4.  Деректерді  қорғау.  Кӛп  стратегиялық  шешімдер  апараттық  деңгейде 
және опреациялық жүйе деңгейінде қайталанады. Егер  мультипрограммалық 
режимді  еске  алсақ,  онда  бір  қажет  болып  табылатын  ол  жадыны  және 
деректерді қорғау. Файлдық жүйені қарастыратын болсақ, олда операциялық 
жүйе сияқты бірқолданбалы болуы мүмкін. Бұл жағдайда деректерді қорғау 
проблемалары  болмайды,  ӛйткені  операциялық  жүйеде  жұмыс  жасап 
отырған    адам    барлық  файлдардың  иесі  болып  табылады.  Бірқолданбалы 
операциялық жүйеге мысал келтірсек, ол MS-DOS, Windows 95. Машинаны 
іске  қосып  басқа  қолданушылардың  дискіде  орналасқан  барлық  файлдарын 
жойып  жіберуге  болады,  себебі  бұл  жүйелерде  қорғау  жоқ.  Кӛпқолданбалы 
жүйе  кӛппайдаланушылардың  жұмысын  дұрыс  істеуіне  қамтамасыз  етеді. 
MS-DOS операциялық жүйесі мультипрограммалық режимде жұмыс жасауы 
мүмкін,  бірақ  егер  бір  үрдісте  қате  кетсе  онда  операциялық  жүйе  жұмысы 
бұзылады.  Кӛпқолданбалы  жүйе  ақпараттарды  қорғауды  қамтамасыз  етеді. 
Негізінде  қорғау  проблемасы  тек  қана  файлдық  жүйемен  байланысты  емес. 
Реалды  операциялық  жүйе  деректердің  қорғанысын  барлық  аймақтарда 
қамтиды: бұл файлдар, үрдістер және қорлар. 
HPFS  файлдық жүйесінің компоненттері. Бұл файлдық жүйенің негізгі 
мақсаттарының  бірі  ол  үзын  аттарды  қолдану.  (FAT  –  форматында  8.3,  ал  
HPFS  -  жоқ).  Бұл  файлдық  жүйе  FAT  жүйесінің  барлық  атрибуттарын 
қолдайды. Каталогтарды дискілік кеңістіктің орта жолдарына орналастырады 
және осы арқылы жүйенің шапшаңдылығы кӛтеріліді. 
Үлестіру  кестесінде  картада  әр  секторға  бір  бит  бӛлінеді.  Картадағы 
позициялық орны дискідегі позициялық орынды анықтайды. Бұнда 1- сектор 
бос  емес  екенін  білдіретін  жағдай,  ал  0-  бос.  Бір  лентада  бір  файл  емес, 
каталогпен бірнеше файл орналасады. 
Бұл  құрылым  үзілмейтін  және  файлдардың  фрагментті  құрылымдарына 
белгіленген. Үзілмейтін файлда кӛрсету үшін 4 байттан екі сан қолданылады. 
Бірінші  сан  бірінші  блоктың  нұсқағышын  белгілейді,  екінші  –  мӛлшер  (бір 
бірінен кейін жұретін блоктар саны). 
Блок мӛлшері – 1 сектор. 
Фрагментті  файлдар  Extent-  терден  тұрады.  Оның  әр  қайссына  екі  сан 
бӛлінеді (2-4 байт). 
Файлдық  жүйе  файлдар  үшін  аталған  қасиеттердің  бәріне  ие  және 
бірнешеулерін  қосады.  Бұл  қасиеттер  файлдық  жүйенің  құрылымдық 
ұйымдастырылуымен байланысты. 

 
 
71 
 
Сыртқы  есте  сақтау  құрылғылардың  кейбір  кеңістіктерін  осы  кеңістік 
ауқымды 
файлдардың 
ұйымдастырылуын 
қалай 
ұйымдастыруды 
қарастырамыз. 
1.
 
Үздіксіз 
сегментті 
файлдарды 
бір 
деңгейде 
ұйымдастыру. 
“Бірдеңгейде”  термині  –  жүйе  ерекше  аталған  файлдармен  жұмыс  істеуді 
қамтамассыз  етеді.  Кеңістік  шегінде  сырқы  есте  сақтау  құрылғысы  кталог 
деп аталатын мәліметтерді сақтау үшін арналған кейбір аумақтарға бӛлінеді. 
 
Аты 
 Бастапқы блок 
  Соңғы блок 
 
“Бастапқы  блок”  берілген  атпен  басталған  файлдағы  сырқы  есте  сақтау 
құрылғысы  кеңістігіндегі  салыстырмалы  орынға  жіберіледі.  “Соңғы  блок” 
осы  файлдың  соңғы  болатынын  анықтайды.  Файлды  ашу  функциясы 
каталогтағы  файл  атын  табуға,  оның  басын  және  соңын  табады  (  бұл 
мәліметтер  аз  орын  алуы  мүмкін,  бұл  туралы  кейінірек  айтылыды).  Бұл 
әрекет ӛте қарапайым және де каталогты операциялық жүйе жадына сақтауға 
болады, сонымен қатар ауыстырулар санын азайтуға болады. Егер жаңа файл 
құрылса,  онда  ол  бос  орынға  жазылады.  Каталогтар  атына  ұқсас  бос 
кеңістікті кесте болуы мүмкін. 
Оқу жазу қосымша аустыруларсыз- ақ жүреді, сондықтан ашу барысында 
біз  мәліметтердің  орналасу  аумағын  аламыз.  Оқу  осы  блокты  құрылымға 
сәйкес  жүреді  және  қосымша  ешқандай  ақпарат  қажет  емес.  Осыған  сәйкес 
ауыстыру ӛте тез жүреді. 
Осындай файлға қосымша ақпаратты жазу қажет болған да не болады? ( 
ал  осы  файлдан  кейін  бос  кеңістік  жоқ).  Бұл  жағдайда  жүйе  екі  рет  келіп 
түсуі  мүмкін.  Біріншісі,  ешқандай  орын  болмайды  дейді  және  сіз  ӛзіңіз  бір 
нәрсе істеуіңіз  керек,  мысалы осы  файлды басқа орынға  ауыстыратын және 
қосымша ақпаратты табатын қандайда бір үрдіс енгізуіңіз керек. 
Бұл ауыстыру – едәуір қымбат тұратын функция. Екіншісі  – ауыстыруда 
қабылданбайды.  Бұл  файлды  ашу  барысында  қосымша  орын  алып  қою 
керектігін  білдіреді,  осыдан  файлдық  жүйе  бос  буфер  ӛлшемін  анықтайды, 
егер  ол аз болса, онда осы файл сыйатын бос орынды табу керек. 
Сонымен,  біз  бұл  ұйымдастырудың    ауыстыру  барысында  тимдіек  енін 
білдік, бірақ кеңістік болмаған жағдайда файл үшін тиімсіз болады. Сондай 
ақ  үзақ  уақыт  жұмыс  барысында  мүндай  файлдық  жүйеде  оперативтік 
жадыдағы  сияқты  болады,  яғни  бос  фрагменттер  болған  жағдайда,  бірақ 
олардың  арасында  файл  орналастыра  алмаймыз.  Мүндай  файлдық  жүйені 
ұйымдастыру  үшін  фрагментациялаумен  күрес  бұл  барлық  файлдарды  бір- 
біріне тығыз орналастыратын кезеңдік компессия. 
Мұндай  ұйымдастыру  бір  рет  қолданылатын  файлдық  жүйе  үшін 
жарамды  болуы  мүмкін,  сондықтан  қолданғыштар  саны  кӛп  жағдайда 
фрагментация  ӛте  тез  жүреді,  ал  компрессияның  тұрақты  енгізілуі-  жүйе 

 
 
72 
 
үшін  ауыр  болады.  Басқа  жағынан  жүйе  қарапайым  және  ешқандай 
шығындарды қажет етпейді. 
2.
 
Блокты файлдарды ұйымдастырудың файлдық жүйесі.  Сыртқы есте 
сақтау  кеңістіге  блоктарға    бӛлінген  (ауыстырулар  үшін  тиімді  блоктар). 
Файлдық  жүйеде  мұндай  типті  ақпараттарды  орналастыру  беттік 
ұйымдастырылуы жедел жадыға үрдістер ақпараттарын орналастыруға ұқсас 
жүреді.  Жалпы  жағдайда  әрбір  файл  атымен  осы  файл  мәліметтері 
орналасқан блоктар санының жинағымен байланысты. Бұл блоктар саны рет-
телген, яғни блоктар барлық қондырғы бойынша таратылуы мүмкін. Мұндай 
ұйымдастыруда фрагментациялау болмайды, дегенмен блоктардың жойылуы 
мүмкін  (егер  файл блокта бір байттықорын  алса,  онда блок бос емес  болып 
есептеледі).  Демек,  компрессиялау  мәселесі  жоқ  және  бұл  жүйені  кӛп 
қолдану  ұйымдастыру  барысында  қолдануға  болады.  Бұл  жағдайда  әрбір 
файлмен  атрибуттар  жинағына  байланысты:  файл  аты,  пайдаланушы  аты. 
Мұндай  ұйымдастыру  жоғарыдағы  жағдайлардақажет  етілетін  ерекше 
аттардың  болмауына  мүмкіндік  береді.  Бұндай  жүйеде  аттар  ерекшелігі  тек 
бір қолданудағы файлдар арасында қажет.  
Мұндай  файлдарды  каталог  арқылы  ұйымдастыруға  болады.  Каталог 
құрылымы келесі түрде болуы мүмкін. Каталог қатарлардан тұрады; әр бір I- 
ші қатар файлдық жүйенің I- блогына сәйкес келеді. Бұл қатар блок бос не-
месе бос емес екендігі туралы ақпараттан тұрады. Егер ол бос болмаса, онда 
бұл қатар файл аты мен қолдану аты кӛрсетіледі және қандайда бір қосымша 
ақпарат болуы мүмкін. 
Ауыстыру  барысында  жүйе  әртүрлі  әрекет  етуі  мүмкін.  Файл  ашу  бары-
сында жүйе барлық каталог бойынша жүреді және файлдың логикалық блок-
тарына  сәйкес  кесте  тұрғызылады  не  болмаса  әрбір  ауыстыру  кезінде  осы 
сәйкестікті іздеу жүзеге асырылады. 
Файлдық  жүйені  мұндай  ұйымдастыру  бір  рет  қолданудағы  шектерде 
бірдеңгейлі болып табылады, яғни барлық файлдар тораптармен байланысты. 
3.  Иерархиялық  файлдық  жүйе.  Файлдық  жүйенің  барлық  файлдары 
бағана  деп  аталатын  құрылымда  тұрғызылған.  Бағана  түбінде  файлдық 
жүйенің түбі болады. Егер бағана түйіндері беттік болса, онда бұл файл ката-
логты файл болып табылады. Мұндай иерархиялық файлдық жүйеге ат қою 
әртүрлі тәсілдермен жүргізіледі. 
Бірінші түрі – файлға ат қою, жақын каталогқа сай болады, яғни біз F0 ка-
талогына жақын болатын файлды қарастырсақ- бұл файл 1 немесе F2 файлы 
болады. Мұндай жүйеде ат қойғанда аттар бір деңгейде қайталана бермейді. 
Басқа жағынан барлық файлдар бағана кӛмегімен байланысты болғандықтан, 
біз файлдық жүйеден нақты нақты файлға жол ашатын, барлық файл аттары-
нан  тұратын  файлдың  толық  аты  туралы  айта  аламыз.  F3  файлының  толық 
аты мына түрде белгіленеді: /F0/ F1/ F3/. 
Мұндай ұйымдастыру толық және қысқа атты файлдармен  жұмыс істеуге 
мүмкіндік  береді.  Толық  атты  файлдың  ӛз  жолы  бар,  ал  кез  келген  бағана 

 
 
73 
 
түбінен кез келген түйінге дейін бір- ақ жол болады, демек осымен аттарды 
ерекшелеу  мәселесі  шешіледі.  Алғаш  рет  бұл  60-  жылдар  соңында  Беркли 
университетінде  жасалған  Multex  операциялық  жүйесінде  қолданды.  Бұл 
шешім  кӛптеген  операциялық  жүйелер  нәтижесінде  пайда  болады.  Осы 
иерархияға сәйкес әрбір файлға қандай да бір атрибуттарды байланыстыруға 
болады. Бұл жүйенің құрылымы ат қою мәселесі болмаған жағдайда кӛп рет 
қолдану  жұмыстарын  ұйымдастыру  үшін  жақсы  және  мұндай  жүйе  ӛте 
жақсы жетістіктерге ие. 
4.Персонификация  және  операциялық  жүйедегі  мәліметтерді  қорғау.  
Бұл нюанс қарапайым, сонымен қатар күрделі. Қарапайымдылығы- ол тура-
лы бірнеше сӛз ғана айтамыз, күрделігі – ұзақ айтылатын мәселелері бар. 
Персонификация  –  бұл  нақты  қолдану  идентификациялаудағы 
операциялық  жүйе  мүмкіндігі  және  осыған  сәйкес  мәліметтерді  сақтау 
бойынша әрекеттер қабылдай аламыз. 
Егер  біз  MS-DOS операциялық жүйесін қарастыратын болсақ, онда ол – бір 
рет қолданылады. 
Операциялық  жүйенің  екінші  деңгейі  –  бұл  қолдануларды  тіркеуге 
мүмкіндік  беретін  операциялық  жүйелер,  бірақ  барлық  қолданулар  кейбір 
субъектілерді жинақтау түрінде кӛрсетіледі және бір-бірімен байланыспайды. 
Мұндай  операциялық  жүйелерге  мысал  ретінде  main-frame  –  компьютерлер 
үшін  IBM  фирмасының  кейбір операциялық  жүйелері  бола  алады.  Мысалы, 
дәріс беруші тыңдаушыларының қайсы топтан екенін білмейді, бірақ барлық 
отырғандар  оның  курсын  колданушылар.    Бұл  бір  жағынан  жақсы,  бір  
жағынан  жаман.  Дәрісті  тыңдау  –  бұл  жақсы,  бірақ  осы  дәріс  беруші  сұрақ 
беру жаман, себебі ол бір күнде барлығынан сұрап үлгірмейді. Оған  барлық 
тыңдаушыларды қалайда бӛлу керек, ал қалай бӛлу кезек – белгісіз. 
Осындай персонификация жағдайында функциялармен қамтамасыз етеді, 
бірақ ұйымдастыру қолдану тобының түзілуін болжамайды.  
Құрылымдық  ұйымдастыру  тәсілдері  .  Құрылымдық  ұйымдастыру  – 
файлдық ақпараттарды орналастыру ережелерін анықтайды. 
Құрылымдық ұйымдастыруды былай ажыратады: 
-
 
байланысты файлдарды орналастыру 
-
 
байланыссыз файлдарды орналастыру 
Байланыстыүлестірукезіндефайлдықақпараттыэлементтеріфизикалықтас
ушыдаорналасады. 
Адрестікаймақбойынша 
(дискүшін-бұлсекторлар). 
Мұндайтәсілүздіксізфайлдарүшінтән, дисктікеңістіктіқолданументиімді. 
Бастапқыкемшіліктері 
– 
оныңжекеэлементтерінежетужәнефайлтазалауындағықиындық. 
Бұданбасқажазулардыесепкеалудыжүргізужәнедисктікеңістіктіқолданубӛлше
ктердеңгейіндежүргізіледі. 
Блоктыфайлдардытаратустратегиясыедәуіртиімдіболыптабылады. 
Бұлжағдайдаараласқанбӛлшіктерүздіксізнемесеауыспалыӛлшемблоктарында
біріктіріледі. 

 
 
74 
 
Байланыссызүлестірукезіндефайлғажадыбӛлінеді, 
тасушыныңэлементтеріретіндесекторларнемесеблоктарболуымүмкін. 
Бұлжағдайдабасқаружүйесібосблоктарнемесесекторлардыңтізімінжүргізеді.  
Оларқажетуақыттабӛлінеді. 
Әрбӛлінгенкездебосблокбосатылыпжәнеонысұрағанфайлдыңбӛлінгенсектор
ынабайланыстырады. 
Тізімдебоссекторларнемесеблоктарқалмағанжағдайдажадыныбӛлуге 
оныңбосболмағандығынанбұғатталуфазасыболады. 
Файлдардыұйымдастырудыңблоктықтәсілдері 
1. Блоктықтізбектіқұрылым 
 
 
Белгілер. Адрестік бӛлік деректер теруімен байланысқан және осымен 
байланысты келесі блоктың адресін табу үшін оны ОЖадыға оқу қажет. 
Қарапайыморындалуы (блоктардытізімгеқосужәнеалу). 
         Бұл тәсілдің негізгі кемшілігі ол тізбекті блоктардың ішіндегі блоктарға 
тікелей қатынау мүмкіндігінің жоқтығы. Белгілі кемшілікті жою үшін келесі 
тәсіл қолданылады, ол блоктты-индексті үлестіру тәсілі. 
         2.  Файлдарды блокты-индексті үлестіру. 
        Бұл кестелерде жолды енгізу үшін ӛрістер бар. 
1-қадам. Индексті блокты файлға жалғау (тіркеу).  
Физикалық блоктар алдын ала индексті блокқа жалғанбайды. 
2-қадам.    Әр  физикалық  блоктың  файлмен  байланысуы  индексті  тізімнің 
элементіне белгіленген    блок адресі жазылуы арқылы жасалынады. 
3-қадам.  Блокқа адрестеу индексті белгілеу арқылы жасалынады. 
        3. Файлдар картасы арқылы үлестіру 
FAT-файлдар  үлестіру  картасы.Бұл  кестенің  сыйымдылығы  тасушыдағы 
деректер блогінің санына тең. 
        0...15-тасушыдағы  физикалық  адресі.  Бұл  үлестіру  вариантында  FAT 
блоктан  бӛлінген.  FAT-та  әр  файлға  блокаралық  байланыс  тізбекшесі 
беріледі. 
Блоктың ерекшелену принципі: 
 
Стандарт-ерекшелену-файлды  құру,  файлға  бірінші  бос  блоктардан 
қосымша  блоктар  таусылғанша  болады  және  бір  блокты  бірнеше  файл 
қолдануы мүмкін емес. Бұл тәсілдің негізгі кемшілігі ол жұмыстың тиімділігі 
әсер ететін дискілік жадының кӛлемінің шектелуі.       
 
Негізгі әдебиеттер 2 [146-187], 3 [35-45] 
Қосымша әдебиеттер 18 [124–137],158[262-293] 
Бақылау сұрақтары 
1. Құрылымдық ұйымдастырудың тәсілдері 
2. Байланысты үлестірудің кемшілігі 
3. Файлдарды блокті  ұйымдастыру тәсілдері 
4. Файлдарды блокті-индексті үлестіру тәсілдерінің белгілері 
5. Кандай битті белгілер файлдың атрибутында жазылады 

 
 
75 
 
 
 
 
 
 
 
 
Лекция  №7.Енгізу-шығаруды  басқару,  ұйымдастыру  режимдері.  Енгізу-
шығару  аппаратурасының  принциптері.  Енгізу-шығару  құрылғылары. 
Құрылғы контроллері. Енгізу –шығаруды ұйымдастыру режимдері. 
Енгізу-шығару  жүйесін  басқару  –ол  ОЖ-гі  негізгі  функцияларының  бірі 
және ОЖ  жобалауының ең қиын аймақтарының бірі. 
Енгізу-шығару  құрылғыларының  кӛптігінен    және  олардың  түрлі 
табиғаттарынан  қиыншылықтар  туады.  Сондықтан  ОЖ-ні  құрушылардың 
арасында оңай есеп тұрған жоқ. Олар енгізу-шығару құрылғыларының тиімді 
басқаруды  ғана  емес  қолданба  программистер  құрылғылардың  түріне 
қарамастан  деректерді  оңай  оқып,  сақтау  үшін  ыңғайлы,  тиімді  виртуальды 
интерфейсті құру қажет. 
Бір  модельге  бірнеше  түрлі  құрылғыларды  біріктіретін  жүйелік    енгізу-
шығару  әмбебап  болу  қажет.  Біріншіден  ол  бар  құрылғылардың 
қажеттіліктерін  ескеру  қажет.  Екіншіден  бірнеше  параллель  орындалып 
жатқан есептерге енгізу-шығару құрылғыларына қатынауды ескеру қажет. 
        Қолданбалы  программалар  ӛздері  енгізу-шығару  құрылғылары  тікелей 
байланысалмайды.Енгізу-шығару  сұрауына  керек  мәндерді  орнатып,  енгізу-
шығару супервизорына басқару беріледі. 
       Енгізу-шығаруды  басқару  режимдері.  Екі  негізгі  енгізу-шығару  режимі 
бар:  енгізу-шығару  құрылғыларының  дайындығын  сұрату  алмасу  режимі 
және үзілісі бар алмасу режимі. 
       Егер енгізу-шығару басқаруын орталық санашық атқарса онда ол басқару 
құрылғысына  бір  енгізу-шығару  құрылғысының  орындалуына  команда 
береді.  Енгізу-шығару  құрылғысы  команданы  орындап  орталық  санашыққа  
және сигналды басқаратын құрылғыға түсінікті сигнал жібереді. 
        Енгізу-шығару  құрылғысының  жылдамдылығы  орталық    санашықтың 
жылдамдылығынан тӛмен.  Сондықтан дайындық  сигналын    кӛп күту  керек, 
сигнал шыққанша драйвер еш нәрсе орындамайды. Сондықтан енгізу-шығару 
командасын  беріп  ол  құрылғыны  уақытша  ұмытып  басқа  программаның 
орындалуына кӛшкен жӛн.  Ал дайындық сигналы шыққан кезде оны енгізу-
шығару құрылғысының үзуге сұрау деп санаймыз. 
Ортақ  енгізу-шығару  құрылғылары,  құрылғыларды  жалғау.    Кӛп 
құрылғылар  бірігіп  қолдануды  қолдамайды.  Біріншіден  ол  тізбекті 
қатынайтын құрылғылар. Ондай құрылғылар жалғанған болуы мүмкін, яғни 
бір  есептеу  үрдіске  беріледі.  Бірақ  ол  есептеу  үрдістерінің  параллельді 
жұмыс  жасауына  мүмкіндік  бермейді және енгізу-шығару  құрылғыларының 

 
 
76 
 
босау  уақытын  күтеді.  Параллельді  орындалып  жатқан  есептер  арасында 
енгізу-шығару  құрылғыларын  қолдануын  ұйымдастыру  үшін  виртуальді 
құрылғылар түсінігі енгізіледі. 
 Виртуализация  принципін  қолдану  есептеу  жүйесінің    тиімділігін 
жоғарлатуға  мүмкіндік  береді.  Кӛбінесе  виртуалды  құрылғыға  –  спулинг 
терминін қолданады. 
Спулинг  дегеніміз-    операциялайтын  режимде  құрылғылармен  жұмыс 
иммитациясы. 
Спулингтің  негізгі  жұмысы  тізбекті  қатынайтын  құрылғыларының 
параллельді  бӛлінуінің  кӛрінісін  ұйымдастыру.  Бірақ  олар  монопольді  және 
жалғанған ретінде қолдану қажет. 
Мысалы, егер біз бірнеше қолданбаның қорытындысын басуға жіберетін  
болсақ  ,  онда  біз  түсініксіз  қорытындыға  ұшыраймыз.  Бірақ  әр  есептеу 
үрдісіне  виртуальді  принтер  беруге  болады  және    ағындылар  бірінші  рет 
магнитті дискідегі  арнайы спул файлына жіберіледі. 
Содан 
соң 
виртуалды 
басу 
аяқталған 
соң 
қабылданған 
пұрсаттылықтармен  және    қызымет  кӛрсету  пәні  бойынша  спул  файлдың 
мәні  принтерге  жіберіледі.  Спул  файлымен  басқаратын  жүйелік  үрдіс  – 
спулер деп аталады (spool-reader немесе spool-writer). 
         Программисті 
компьютерге 
орнатылған 
енгізу-шығару 
құрылғыларының  параметрлері  және  олардың  мүмкіншіліктері  мүмкіншілік 
болғанша  ойландырмау  керек.  Оған  тек  қолданатын  енгізу-шығару 
құрылғыларының  жалпы  мүмкіншіліктері  қажет.  Мысалы,  принтер  басуды 
білу қажет, ал магниттік дискіде жинақтауыш берілген адрес бойынша  (C-N-
S  координаты,  цилиндр  номері,  бастиек  номері  және  сектор  номері) 
деректерді жазу және оқу қажет. 
        Бірақ  программист  магниттік  дискімен  жұмыс  арасында  тікелей 
адрестеуді қолданбайды. Ол файлдық жүйе деңгейімен жұмыс жасайды. Бұл 
жағдайда  қандай  жинақтауыш,  қай  типті  және  моделі  компьютерде 
қолданылғаны файлдық жүйе  құрущыларын тәуелді болмауы қажет. 
        Негізгі  болып  саналатын  ол  жинақтауыштың  бары  және  оның 
цилиндрінің,  жазу-оқу  бастиегінің  және  магниттік  диск  жолының 
секторларының  бірнеше  сандарының  болуы  цилиндрдің,  бастиектің  және 
секторлардың  сандарының  мәні  жабдық  кестесінен  алынуы  мүмкін.  Бұл 
жағдайда  программисті  құрылғының  есептеу  жүйесіне  қалай  жалғанғаны 
ойландырмау керек. Сондықтан ол енгізу-шығару сұрау кезінде құрылғының 
логикалық атын белгілейді. 
        Виртуалды 
құрылғыға  сәйкес  нақты  құрылғы  кесте  арқылы 
супервизормен таңдалады. Сонымен құрылғының қосылу тәсілі оның моделі 
және  оған  сәйкес  драйверлер  бірінші  жабдық  кестесінде  анықталады.  Ол 
виртуалды  құрылғыны  жүйелік  кестесімен  байланыстыру  үшін  екінші 
жүйелік  кестесі  қолданылады.  Шартты  біз  оны  виртуалды  логикалық 
құрылғының сипаттама кестесі дейміз.(DRT-device reference table). 

 
 
77 
 
Енгізу-шығару ҥрдісін басқару 
1-әрекет.  Орындалып  жатқан  программадан  енгізу-шығару  операциясына 
сұраныс супервизорға түседі. 
1.1-әрекет.  Супервизор  жүйелік  шақыруды  қабылданған  спецификацияларға 
сәйкестігін  тексереді  және  қате  болған  жағдайда  есепке  сәйкес  хабарлама 
жібереді. 
2-әрекет. Егер сұраныс дұрыс болса онда есеп енгізу-шығару супервизорына 
бағытталады. 
2.2-әрекет.  Супервизор  виртуаль  аты  арқылы  DRT  кестесінен  құрылғы 
кестесінен  сәйкес  UCB  элементін  табады.  Егер  құрылғы  бос  болмаса,  онда 
есеп сипаттаушы құрылғыны күтіп тұрған есептер тізіміне орналастырады. 
3-әрекет. Егер құрылғы бос болса, онда енгізу-шығару супервизоры UCB–дан  
құрылғының типін анықтайды және қажет болса санашықты іске қосады, ол 
құрылғыны  түсінетін  және  орындайтын  басқару  деректерін  және  кодтарын 
ашуға мүмкіндік береді. 
4-әрекет.  Енгізу-шығаруды  басқаратын 

программа

  дайын  болған  кезде, 
енгізу-шығару  супервизоры  басқаруды  сәйкес  драйверіне  береді(іске  қосу 
секциясы). 
5-әрекет.  Драйвер  басқару  операциясын  инициялизациялайды,  тайм-аут 
санауышын  нӛлдейді  және  санашыққа  орындалуға  дайын  есепті  қою  үшін 
супервизорға (есеп диспетчеріне) басқаруды қайтарады. 
6-әрекет.  Жүйе  жұмысты  кезегімен  орындайды,  бірақ  енгізу-шығару 
құрылғысы  жіберілген  команданы  орындап  болған  соң,  үзуге  сұраныс 
сигналын орнатады және үзу кестесі арқылы басқару жалғастыру секциясына 
беріледі.  Жаңа  команданы  алған  соң  құрылғы  оны  орындайды  және 
санашықпен  басқаруды  қайтадан  есеп  диспетчеріне  қайтарады,  ал  санашық 
ӛзінің  жұмысын  жалғастырады.  Сонымен  есептердің  параллель  ӛңделуі 
болады, соның кӛрісінде санашық енгізу-шығару операциларының басқаруын 
жүзеге асырады. 
     Синхронды 
және 
асинхронды 
енгізу-шығару. 
 
Енгізу-шығару 
операциясына  сұраныс  берген  есеп  берілегн  операциялардың  аяқталғанын 
күту  күйіне  супервизормен  ауыстырылады.  Аяқталу  секциясынан 
операцияның  аяқталғаны  жайлы  супервизор  хабарлама  алған  соң  ол  есепті 
орындалуға  дайын  күйіне  ауыстырады  және  ол  ӛзінің  жұмысын 
жалғастырады.  Бұл  жағдай  синхронды  енгізу-шығаруға  сәйкес  синхронды 
енгізу-шығару  кӛп  ОЖ  стандартты  болып  табылады.  Қолданбалардың 
орындалу  жылдамдығын  ұлғайту  үшін  қажет  болғанда  асинхронды  енгізу-
шығару қолданылады. Асинхронды енгізу-шығарудың қарапайым варианты, 
ол  сыртқы  құрылғылардың  деректерін  буферлі  шығару.  Бұл  кезде 
қолданбадағы  деректер  енгізу-шығару  құрылғыларына  жіберілмейді,  ал 
арнайы  жүйелік  буферге  жіберіледі.  Негізгі  логикалы  қолданбаға  шығару 
операциясы  бірден  орындалған  болып  саналады,  және  есеп  нақты 

 
 
78 
 
деректердің  құрылғыларға  жіберілген  үрдісін  күтудің  қажеті  жоқ.  Жүйелік 
буферден деректерді щығаруды енгізу-шығару супервизоры атқарады. 
     Енгізу-шығару  супервизорының  нұсқауы  бойынша  арнайы  жүйелік  үрдіс 
жүйелік  жады  аймағында  буферге  орын  бӛледі.  Асинхронды  деректерді 
енгізуді де ұйымдастыруға болады. Бірақ ол үшін тек қана жады аймағында 
құрылғылардан  оқып  деректерді  уақытша  сақтап,  бӛлінген  буферді 
операцияға  сұраныс  берген  есеппен  байланыстыру  ғана  емес  және  енгізу-
шығару операциясына сұранысты екі бӛлікке бӛлу(екі сұранысқа). 
     Бірінші  сұраныста  деректерді  оқу  операциясына  нұсқау  беріледі.  Бұл 
сұраныста  қосымша  параметр  беріледі  -  ол  есеп  сұранысқа  жауап  алатын 
және  берілген  ерекшеленген  буферді  идентификациялайтын  жүйелік 
обьекттің  аты.  Буфердің  атын  алып  есеп  ӛзінің  жұмысын  жалғастырады. 
Деректерді  асинхронды  енгізу  кезінде  есеп  енгізу-шығару  супервизоры 
арқылы  енгізу-шығару  операциясының  аяқталуын  күту  күйіне  ӛткізілмейді, 
ол  орындалу  немесе  орындалуға  дайын  күйінде  қалады.  Бірнеше  уақыттан 
соң  программистпен  анықталған  қажет  код  арқылы  есеп  енгізу-шығару 
операциясын аяқтауға екінші сұраныста береді. Бұл жағдайда сол құрылғыға 
(оның  коды  басқа)  есеп  жүйелік  объекттің  атын  кӛрсетеді  және  деректерді 
оқу операциясы ойдағыдай аяқталған жағдайда ол оларды жүйелік буферден 
сол  заматында  алады.  Егер  деректер  сыртқы  құрылғыдан  жүйелік  буферге 
аяғына  дейін  жазылып  үлгірмеген  жағдайда,  енгізу-шығару  супервизоры 
есепті енгізу-шығару операциясының аяқталуын күту күйіне ауыстырылады. 
    Асинхронды  енгізу-шығару  мультипрограммалық  ОЖ  қолданылады, 
әсіресе егер олар тредтер механизмі арқылы қолданылса. 
Енгізу-шығару  аппаратурасы  біріккен  аппаратты  санашықтар  сияқты 
қарастыруға  болады.  Бұл  санашықтарда  сыртқы  үрдістер  орындалады. 
Мысалы,  сыртқы  құрылғыға  сыртқы  үрдіс  біріккен  операциялар  ретінде 
кӛрсетіліп олар мысалы бір символдардың басылуы. Сыртқы үрдістер енгізу-
шығару  аппаратурасын  қолдана  отырып  олар  бір  бірімен  әрекеттеседі  және 
орталық санашықта орындалатын 

программалық

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

ішкі

 
үрдістердің  орындалуынан  айырмашылығы  бар.  Ішкі  және  сыртқы  үрдістер 
ӛздерінің жұмысы дұрыс орындалуы үшін олар синхрондалу қажет. Сыртқы 
және  ішкі  үрдістердің  жылдамдылықтарының  сәйкессіздігін  дұрыстау  үшін 
буферлеу  қолданылады.  Буферлер  арқылы  деректер  немесе  бір  үрдістен 
адрестелген  сыртқы  құрылғыға  жіберіледі  (сыртқы  құрылғыларының 
деректерін шығару операциясын) немесе сыртқы үрдістен бір программалық 
үрдіске (деректерді оқу операциясы). 
 
Негізгі әдебиеттер 2 [129-142], 9[237-248] 
Қосымша әдебиеттер 19[184–197], 16 [174-176] 
Бақылау сұрақтары 

 
 
79 
 
11.
 
Еңгізу-шығаруды басқару  жүйесінің жұмыс мақсаты 
12.
 
 Еңгізу-шығаруды басқару  жүйесінің негізгі функциялары 
13.
 
Есептеу  жүйесінде  еңгізу-шығаруды  басқару  үшін  қандай  принциптер 
қолданылады 
14.
 
Программалы еңгізу-шығаруды жүзеге асыру принциптері 
15.
 
Синхронды және асинхронды еңгізу-шығару, айырмашылығы 
 
Каталог: books
books -> Бағдарламасы бойынша жарық көрді Жайлыбай F. Таңдамалы. Астана: Фолиант, 2014
books -> Орынбасар Дөңқабақ ДӘуір дүЛДҮлдері
books -> Бағдарламасы бойынша шығарылды Редакция алқасы: С. Абдрахманов, Н. Асқарбекова, Р. Асылбекқызы
books -> Бағдарламасы бойынша жарық көрді
books -> Ұлы дала тұЛҒалары қҰдайберген
books -> Редакция ал қ
books -> Ббк 84 Қаз-7 82 Қазақстан Республикасының Мәдениет және ақпарат министрлігі Ақпарат және мұрағат комитеті «Әдебиеттің әлеуметтік маңызды түрлерін басып шығару»
books -> Анықтамалық Е. Тілешов, Д.Қамзабекұлы Алматы, 2014 «Сардар» Баспа үйі

жүктеу 5.37 Kb.

Поделитесь с Вашими друзьями:
1   2   3   4   5   6   7   8   9   10   11




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

    Басты бет