Файлдык системалар

Операциялык системанын файлдар менен иштеген бөлүгү файл системасы деп аталат. Бул колдонуучуга төмөнкү параметрлерди берет.

·      алардын программаларынан же анын маалыматтары менен колдонуучунун интерфейсинин функцияларын ишке ашыруучу жана файлдарды башкаруу системасын жигердүү пайдаланган атайын башкаруу программалары аркылуу аталган маалыматтар топтомун (файлдарды) түзүү, жок кылуу, атын өзгөртүү (жана башка операциялар);

·      файлдар катары диск эмес перифериялык түзүлүштөр менен иштөө;

·       файлдардын ортосунда, түзмөктөрдүн ортосунда, файл менен аппараттын ортосунда маалымат алмашуу (жана тескерисинче);

·       файлдарды башкаруу тутумунун программалык модулдарына жетүү аркылуу файлдар менен иштөө (API бөлүгү файлдар менен иштөөгө багытталган);

·      файлдарды уруксатсыз кирүүдөн коргоо.

Эреже катары, бардык заманбап операциялык системалар тиешелүү файл системаларына ээ. Ал эми кээ бир операциялык системалар бир нече файл системалары менен иштөө мүмкүнчүлүгүнө ээ. Бул учурда, бири орнотулган файл тутумдары жөнүндө сөз болот.

MS DOC жана Windows персоналдык компьютердин операциялык системаларында FAT (File Allocation Table) файлдык системасы болгон. Жаңы Windows NT операциялык системасынын өнүгүшү NTFS (New Technology File System) деп аталган жаңы файлдык системанын пайда болушуна алып келди.

5.2. FAT файл системасы

Бул файл системасы өзүнүн атын төмөнкү тизмектерди түзгөн жөнөкөй таблицадан алган:

·       логикалык дисктин түз адрестелүүчү бөлүмдөрү, аларда файлдарды же алардын фрагменттерин жайгаштыруу үчүн бөлүнгөн;

·       диск мейкиндигинин бош аймактары;

·       дисктин бузулган жерлери (бул аймактарда кемчиликтер бар жана катасыз маалыматтарды окууга жана жазууга кепилдик бербейт).

FAT файл тутумунда ар кандай логикалык дисктин диск мейкиндиги эки бөлүккө бөлүнөт: системанын аймагы жана маалымат аймагы.

Логикалык дисктин тутумдук аймагы форматтоо учурунда түзүлөт жана инициализацияланат, ал эми кийинчерээк файл түзүмү менен иштөөдө жаңыланат. Логикалык дисктин маалымат аймагы кадимки файлдарды жана каталог файлдарын камтыйт, бул объекттер түпкү каталогдун үстүнө коюлган иерархияны түзөт. Каталог элементи кадимки файл же каталог файлы боло турган файл объектисин сүрөттөйт.

Берилиштер аймагы система аймагынан айырмаланып, операциялык системанын колдонуучу интерфейси аркылуу жеткиликтүү. Системанын аймагы төмөнкү компоненттерден турат (логикалык дарек мейкиндигинде биринин артынан бири жайгашкан):

·       жүктөө жазуусу (Boot Record, BR);

·       резервдик секторлор (Reserved Sectors, ResSec);

·       файлдарды бөлүштүрүү таблицалары (File Allocation Table, FAT);

·      тамыр каталогу (Root Directory, RDir).

Файлды бөлүштүрүү таблицасы абдан маанилүү маалымат структурасы болуп саналат. Бул маалымат аймагынын дарек картасы деп айта алабыз, ал маалымат аймагынын ар бир бөлүгүнүн абалын да, анын белгилүү бир файл объектисине таандыктыгын да сүрөттөйт.

Бүт маалымат аймагы деп аталган кластерлерге бөлүнөт. Кластербул логикалык диск дарек мейкиндигинде бир же бир нече чектеш секторлор (тагыраак айтканда, маалыматтар чөйрөсүндө гана). Кластер - файлга (же тамыр эмес каталогго) бөлүнгөн диск мейкиндигинин эң кичинекей даректүү бирдиги. Кластерлер логикалык дисктин маалымат зонасында даректүү бирдиктердин санын азайтуу максатында киргизилген.

Ар бир файл кластерлердин бүтүн санын ээлейт. Бул учурда акыркы кластер толук колдонулбай калышы мүмкүн, ал кластердин көлөмү чоң болсо, диск мейкиндигинин байкаларлык жоготууга алып келиши мүмкүн. Флоппи дисктерде кластер бир же эки секторду ээлейт, ал эми катуу дисктерде анын өлчөмү бөлүмдүн өлчөмүнө жараша болот.

FAT таблицасында бир эле файлга (же каталог файлына) таандык кластерлер чынжырчага байланган. FAT16 файл тутумунда кластердин номерин көрсөтүү үчүн 16 биттик сөз колдонулат, ошондуктан сизде кластерлер (0дон 65535ке чейинки сандар менен).

Windows NT/2000/XPде FAT файл тутумунун бөлүктөрүнүн өлчөмү 4097 МБ чейин болушу мүмкүн. Бул учурда кластер 128 секторду бириктирет.

Берилиштер аймагын жеке секторлорду колдонуунун ордуна секторлордун жыйындысы катары кластерлерге логикалык бөлүү төмөнкүдөй мааниге ээ:

·       биринчи кезекте, FAT үстөлдүн өзү азаят;

·       файлдардын мүмкүн болгон фрагментациясы азаят;

·       файлга жетүү тездеди, анткени ал үчүн бөлүнгөн диск мейкиндигинин фрагменттеринин чынжырларынын узундугу бир нече эсеге кыскарган.

·       Бирок, өтө чоң болгон кластердин өлчөмү, айрыкча көп сандагы кичинекей файлдарда, маалымат аймагын натыйжасыз пайдаланууга алып келет.

Файлды жазуу үчүн жаңы кластер бөлүнгөндө, биринчи акысыз кластер алынат. Дисктеги файлдар өзгөргөндүктөн, бул файл фрагментациясына алып келет, мында бир файлдын маалыматтары чектеш кластерлерге эмес, кээде өтө алыскы кластерлерге жайгаштырылып, татаал чынжырларды түзөт. Бул файлдар менен иштөөдө олуттуу жайлоого алып келет.

FAT таблицасы дискке кирүү учурунда өтө интенсивдүү колдонулгандыктан, ал адатта оперативдүү эстутумга жүктөлөт (киргизүү/чыгаруу буферлерине же кэшке) жана ал жерде мүмкүн болушунча көпкө калат. Эгерде таблица чоң болсо жана файлдын кэши, тескерисинче, салыштырмалуу кичине болсо, анда бул таблицанын эң акыркы кирген фрагменттери гана эс тутумга жайгаштырылат.

FAT таблицасынын өтө маанилүүлүгүнөн улам, ал, адатта, эки бирдей нускада сакталат, экинчиси дароо биринчиден кийин келет. FAT көчүрмөлөрү бир эле учурда жаңыланат, биринчи нускасы гана колдонулат. Эгерде кандайдыр бир себептерден улам ал жок болуп чыкса, анда экинчи нускага кире аласыз.

5.3. NTFS файл системасы

NTFSди долбоорлоодо ишенимдүүлүккө, файлдарга жана каталогдорго кирүүнү чектөө механизмдерине, кеңейтилген функционалдуулукка, чоң дисктерди колдоого жана башкаларга өзгөчө көңүл бурулган.

NTFS менен иштөөдө колдонулган негизги түшүнүктөрдүн бири – бул көлөм түшүнүгү. Көлөм логикалык диск катары каралышы мүмкүн болгон логикалык диск мейкиндигин билдирет, башкача айтканда, көлөмдө диск тамгасынын идентификатору болушу мүмкүн.

Ишенимдүүлүк жөнүндө сөз болгондо, NTFS өзүн-өзү айыктыруучу кээ бир мүмкүнчүлүктөргө ээ. Ал системанын бүтүндүгүн текшерүүнүн ар кандай механизмдерин, анын ичинде транзакцияларды каттоону колдойт, бул файлды жазуу операцияларын атайын система журналына каршы кайра ойнотууга мүмкүндүк берет.

NTFS серверлер үчүн файлдык система катары иштелип чыккандыктан, ал үчүн кайра жүктөөлөрсүз үзгүлтүксүз иштөөнү камсыз кылуу абдан маанилүү, ишенимдүүлүгүн жогорулатуу үчүн начар секторлорду запастык секторлор менен чукул алмаштыруу механизмин киргизди.

NTFS файл системасы Windows NT операциялык системасынын коопсуздук объектисинин моделин колдойт жана бардык томдорду, каталогдорду жана файлдарды өзүнчө объект катары карайт. NTFS файл жана каталог деңгээлинде коопсуздукту камсыз кылат. Бул томдорго, каталогдорго жана файлдарга кирүү уруксаттары колдонуучунун каттоо эсебине жана колдонуучу таандык болгон топторго жараша болушу мүмкүн дегенди билдирет.

NTFS чоң дисктерди эске алуу менен иштелип чыккан. Ал 100 ГБ жана андан жогору көлөмдөр менен иштөөдө абдан жакшы иштейт. Дисктин көлөмү канчалык чоң болсо жана андагы файлдар канчалык көп болсо, FAT16 же FAT32 ордуна NTFS колдонуудан ошончолук көп пайда алабыз. Көлөмдүн максималдуу мүмкүн болгон өлчөмдөрү (жана файлдын өлчөмү) 16 Эбайт (бир экзабайт байт, же болжол менен 16 000 миллиард гигабайт), ал эми Windows NT/2000/XP шартында иштегенде, FAT16 диски 4 ГБ, ал эми FAT32 диски 32 ГБ ашпашы керек.

Түпкү жана түпкү эмес каталогдордогу файлдардын саны (NTFSде алар "папкалар" - "папкалар" деп аталат) чектелбейт. Папканын структурасы "экилик дарак" деп аталган эффективдүү маалымат структурасына негизделгендиктен, файлдарды NTFS издөө убактысы файлдардын санына сызыктуу түрдө байланыштуу эмес (FAT негизиндеги системалардан айырмаланып).

Акырында, көлөмдөрдүн жана файлдардын акылга сыйбаган өлчөмдөрүнөн тышкары, NTFS да дисктеги мейкиндикти үнөмдөөгө жана ага көбүрөөк файлдарды жайгаштырууга мүмкүндүк берген камтылган кысууга ээ. Кысууну жеке файлдарга да, бүт папкаларга да, ал тургай томдорго да колдонсо болот.

Көптөгөн башка файл системалары сыяктуу эле, NTFS көлөмүнүн бүтүндөй колдонулуучу диск мейкиндигин маалымат бирдиктери катары даректелген маалымат блокторуна, кластерлерге бөлөт. NTFS файл системасы 512 байттан 64 КБга чейинки кластердин өлчөмдөрүн колдойт; белгилүү бир стандарт 2 же 4 КБ өлчөмүндөгү кластер. Кластердин өлчөмү 4 КБдан ашкан сайын, файлдарды жана папкаларды кысуу мүмкүн болбой калат.

NTFSдеги бардык диск мейкиндиги эки бирдей эмес бөлүккө бөлүнгөн. Дисктин биринчи 12% MFT деп аталган аймак үчүн сакталган (Мастер файл таблицасы - негизги файл таблицасы). Бул аймак MFT таблицасына (анын келечектеги өсүшүн эске алуу менен) арналган, ал бардык башка файлдардын жайгашкан жерин аныктоого мүмкүндүк берүүчү сервистик маалыматы бар атайын файл болуп саналат.

MFT зонасына эч кандай маалыматтарды жазуу мүмкүн эмес - ал ар дайым бош бойдон калат, ошондуктан MFT өссө, мүмкүн болсо, эч кандай фрагментация болбойт. Көлөмдүн калган 88% кадимки файлдарды сактоо мейкиндиги болуп саналат.

MFT 1 КБ белгиленген өлчөмдөгү жазууларга бөлүнөт жана ар бир жазуу файлга туура келет. Биринчи 16 файл табиятында кызмат болуп саналат жана операциялык системанын интерфейси аркылуу жеткиликтүү эмес - алар метафайлдар деп аталат, ал эми эң биринчи метафайл MFTдин өзү. Дисктин метафайлдык бөлүгү катуу белгиленген позицияга ээ болгон дисктин жалгыз бөлүгү. 16 MFT стол жазуулардын көчүрмөсү көлөмүнүн ортосунда сакталат - алар абдан маанилүү болгондуктан, ишенимдүүлүк үчүн.