«жаратылыстану» институты



бет46/99
Дата04.10.2022
өлшемі2.45 Mb.
#461924
1   ...   42   43   44   45   46   47   48   49   ...   99
ОЖ УМКДд

Дәріс мақсаты: файлдарды ұйымдастыру амалдарын қарастыру.
Файлдық жүйелердің негізгі қасиеттері. Файлдық жүйе файлдар үшін аталған қасиеттердің бәріне ие және бірнешеулерін қосады. Бұл қасиеттер файлдық жүйенің құрылымдық ұйымдастырылуымен байланысты.
Сыртқы есте сақтау құрылғылардың кейбір кеңістіктерін осы кеңістік ауқымды файлдардың ұйымдастырылуын қалай ұйымдастыруды қарастырамыз.
1) Үздіксіз сегментті файлдарды бір деңгейде ұйымдастыру. “Бірдеңгейде” термині – жүйе ерекше аталған файлдармен жұмыс істеуді қамтамассыз етеді. Кеңістік шегінде сырқы есте сақтау құрылғысы кталог деп аталатын мәліметтерді сақтау үшін арналған кейбір аумақтарға бөлінеді.
“Бастапқы блок” берілген атпен басталған файлдағы сырқы есте сақтау құрылғысы кеңістігіндегі салыстырмалы орынға жіберіледі. “Соңғы блок” осы файлдың соңғы болатынын анықтайды. Файлды ашу функциясы каталогтағы файл атын табуға, оның басын және соңын табады (бұл мәліметтер аз орын алуы мүмкін, бұл туралы кейінірек айтылыды). Бұл әрекет өте қарапайым және де каталогты Жүйелік бағдарламалау жадына сақтауға болады, сонымен қатар ауыстырулар санын азайтуға болады. Егер жаңа файл құрылса, онда ол бос орынға жазылады. Каталогтар атына ұқсас бос кеңістікті кесте болуы мүмкін.
Оқу/жазу қосымша аустыруларсыз-ақ жүреді, сондықтан ашу барысында біз мәліметтердің орналасу аумағын аламыз. Оқу осы блокты құрылымға сәйкес жүреді және қосымша ешқандай ақпарат қажет емес. Осыған сәйкес ауыстыру өте тез жүреді.
Сонымен, біз бұл ұйымдастырудың ауыстыру барысында тимдірек енін білдік, бірақ кеңістік болмаған жағдайда файл үшін тиімсіз болады. Сондай-ақ, ұзақ уақыт жұмыс барысында мұндай файлдық жүйеде оперативтік жадыдағы сияқты болады, яғни бос фрагменттер болған жағдайда, бірақ олардың арасында файл орналастыра алмаймыз. Мүндай файлдық жүйені ұйымдастыру үшін фрагментациялаумен күрес - бұл барлық файлдарды бір- біріне тығыз орналастыратын кезеңдік компессия.
Мұндай ұйымдастыру бір рет қолданылатын файлдық жүйе үшін жарамды болуы мүмкін, сондықтан қолданғыштар саны көп жағдайда фрагментация өте тез жүреді, ал компрессияның тұрақты енгізілуі - жүйе үшін ауыр болады. Басқа жағынан жүйе қарапайым және ешқандай шығындарды қажет етпейді.
2) Блокты файлдарды ұйымдастырудың файлдық жүйесі. Сыртқы есте сақтау кеңістіге блоктарға бөлінген (ауыстырулар үшін тиімді блоктар). Файлдық жүйеде мұндай типті ақпараттарды орналастыру беттік ұйымдастырылуы жедел жадыға үрдістер ақпараттарын орналастыруға ұқсас жүреді. Жалпы жағдайда әрбір файл атымен осы файл мәліметтері орналасқан блоктар санының жинағымен байланысты. Бұл блоктар саны реттелген, яғни блоктар барлық қондырғы бойынша таратылуы мүмкін. Мұндай ұйымдастыруда фрагментациялау болмайды, дегенмен блоктардың жойылуы мүмкін (егер файл блокта бір байттықорын алса, онда блок бос емес болып есептеледі). Демек компрессиялау мәселесі жоқ және бұл жүйені көп қолдану ұйымдастыру барысында қолдануға болады. Бұл жағдайда әрбір файлмен атрибуттар жинағына байланысты: файл аты, пайдаланушы аты. Мұндай ұйымдастыру жоғарыдағы жағдайларда қажет етілетін ерекше аттардың болмауына мүмкіндік береді. Бұндай жүйеде аттар ерекшелігі тек бір қолданудағы файлдар арасында қажет.
3) Иерархиялық файлдық жүйе. Файлдық жүйенің барлық файлдары бағана деп аталатын құрылымда тұрғызылған. Бағана түбінде файлдық жүйенің түбі болады. Егер бағана түйіндері беттік болса, онда бұл файл каталогты файл болып табылады. Мұндай иерархиялық файлдық жүйеге ат қою әртүрлі тәсілдермен жүргізіледі.
Бірінші түрі – файлға ат қою, жақын каталогқа сай болады, яғни біз F0 каталогына жақын болатын файлды қарастырсақ- бұл файл 1 немесе F2 файлы болады. Мұндай жүйеде ат қойғанда аттар бір деңгейде қайталана бермейді. Басқа жағынан барлық файлдар бағана көмегімен байланысты болғандықтан, біз файлдық жүйеден нақты нақты файлға жол ашатын, барлық файл аттарынан тұратын файлдың толық аты туралы айта аламыз. F3 файлының толық аты мына түрде белгіленеді: /F0/ F1/ F3/.
Мұндай ұйымдастыру толық және қысқа атты файлдармен жұмыс істеуге мүмкіндік береді. Толық атты файлдың өз жолы бар, ал кез келген бағана түбінен кез келген түйінге дейін бір-ақ жол болады, демек осымен аттарды ерекшелеу мәселесі шешіледі. Алғаш рет бұл 60-жылдар соңында Беркли университетінде жасалған Multex Жүйелік бағдарламасында қолданды. Бұл шешім көптеген Жүйелік бағдарламалау нәтижесінде пайда болады. Осы иерархияға сәйкес әрбір файлға қандай да бір атрибуттарды байланыстыруға болады. Бұл жүйенің құрылымы ат қою мәселесі болмаған жағдайда көп рет қолдану жұмыстарын ұйымдастыру үшін жақсы және мұндай жүйе өте жақсы жетістіктерге ие.
Құрылымдық ұйымдастыру тәсілдері. Құрылымдық ұйымдастыру – файлдық ақпараттарды орналастыру ережелерін анықтайды.
Құрылымдық ұйымдастыруды былай ажыратады:
- байланысты файлдарды орналастыру;
- байланыссыз файлдарды орналастыру.
Байланысты үлестіру кезінде файлдық ақпаратты элементтері физикалық тасушыда орналасады. Мекендік аймақ бойынша (диск үшін-бұл секторлар). Мұндай тәсіл үздіксіз файлдар үшін тән, дискті кеңістікті қолданумен тиімді.
Тізімде бос секторлар немесе блоктар қалмаған жағдайда жадыны бөлуге оның бос болмағандығынан бұғатталу фазасы болады.
Файлдарды ұйымдастырудың блоктық тәсілдері
1) Блоктық тізбекті құрылым
Белгілер.
Мекендік бөлік деректер теруімен байланысқан және осымен байланысты келесі блоктың мекенжайын табу қажет.
Қарапайым орындалуы (блоктарды тізімге қосу және алу).
Бұл тәсілдің негізгі кемшілігі ол тізбекті блоктардың ішіндегі блоктарға тікелей қатынау мүмкіндігінің жоқтығы. Белгілі кемшілікті жою үшін келесі тәсіл қолданылады, ол блоктты-индексті үлестіру тәсілі.
2) Файлдарды блокты-индексті үлестіру.
Бұл кестелерде жолды енгізу үшін өрістер бар.
1-қадам. Индексті блокты файлға жалғау (тіркеу).
Физикалық блоктар алдын ала индексті блокқа жалғанбайды.
2-қадам. Әр физикалық блоктың файлмен байланысуы индексті тізімнің элементіне белгіленген блок мекенжайы жазылуы арқылы жасалынады.
3-қадам. Блокқа мекендеу индексті белгілеу арқылы жасалынады.
1) Файлдар картасы арқылы үлестіру
FAT-файлдар үлестіру картасы. Бұл кестенің сыйымдылығы тасушыдағы деректер блогының санына тең.
0...15-тасушыдағы физикалық мекенжайы. Бұл үлестіру вариантында FAT блоктан бөлінген. FAT-та әр файлға блокаралық байланыс тізбекшесі беріледі.
Кестені қалыптастыру үшін екі өлшемді жиын қолданылады, мұнда жол саны дискідегі физикалық блок санына тең. Кестедегі элементтердің позициялайтын нөмірі дискідегі блок нөміріне сәйкес. Массивтің екінші элементі ағымдағы нөмірді байланыстырады және сілтейді. Әр ағымдағы нөмір тек қана біреумен байланысады. Директорийдің мекендік бөлігінде тізбекшінің басқы блогының мекенжайы беріледі.
Блоктың ерекшелену принципі: стандарт-ерекшелену-файлды құру, файлға бірінші бос блоктардан қосымша блоктар таусылғанша болады және бір блокты бірнеше файл қолдануы мүмкін емес. Бұл тәсілдің негізгі кемшілігі ол жұмыстың тиімділігі әсер ететін дискілік жадының көлемінің шектелуі.
Файлдың жасалынуы мен ашылуы.
Жаңа файл немесе бар файлды ашу үшін CreateFile функциясы қолданылады, оның келесі прототипі бар:
Handle CreateFile
LPCTSTR lpFileName, // файл аты
DWORD dwDesiredAccess, // рұқсат ету тәсілі
DWORD dwShareMode, // бірігіп қолдану режімі LPSECUTITY_ATTRIBUTES IpSecurutyAttributes, // қорғау атрибуттары
DWORD dwCreationDisposition, // файл жасау немесе ашу
DWORD dwFlagsAndAttributes, // флагтар мен атрибуттар
HANDLE hTemplateFile // файл атрибуттары) ;
Дәріс 11. Файлдық жүйенің менеджері. Файлдарды қорғау мен сақтау. Жадыны бірігіп қолдану


Достарыңызбен бөлісу:
1   ...   42   43   44   45   46   47   48   49   ...   99




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

    Басты бет