Які файлові системи використовуються в ос windows. Файлова система. Структура файлової системи

FAT16

Файлова система FAT16 почала своє існування ще за часів, що передували MS-DOS, і підтримується всіма операційними системами Microsoftдля забезпечення сумісності. Її назва File Allocation Table (таблиця розташування файлів) відмінно відображає фізичну організацію файлової системи, до основних характеристик якої можна віднести те, що максимальний розмір тома, що підтримується (жорсткого диска або розділу на жорсткому диску) не перевищує 4095 Мбайт. У часи MS-DOS 4-гігабайтні жорсткі дискиздавалися нездійсненною мрією (розкішшю були диски об'ємом 20-40 Мбайт), тому такий запас був цілком виправданим.

Том, форматований для використання FAT16, поділяється на кластери. Розмір кластера за замовчуванням залежить від розміру тома і може коливатися від 512 до 64 Кбайт. У табл. 2 показано, як кластер залежить від розміру тома. Зазначимо, що розмір кластера може відрізнятись від значення за замовчуванням, але повинен мати одне із значень, зазначених у табл. 2 .

Не рекомендується використовувати файлову систему FAT16 на томах більше 511 Мбайт, тому що для відносно невеликих за обсягом файлів дисковий простір буде використовуватися вкрай неефективно (файл розміром в 1 байт буде займати 64 Кбайт). Незалежно від розміру кластера, файлова система FAT16 не підтримується для томів більше 4 Гбайт.

FAT32

Починаючи з Microsoft Windows 95 OEM Service Release 2 (OSR2) у Windows з'явилася підтримка 32-бітної FAT. Для систем на базі Windows NT ця файлова система вперше стала підтримуватися в Microsoft Windows 2000. Якщо FAT16 може підтримувати томи об'ємом до 4 Гбайт, FAT32 здатна обслуговувати томи об'ємом до 2 Тбайт. Розмір кластера FAT32 може змінюватися від 1 (512 байт) до 64 секторів (32 Кбайт). Для зберігання значень кластерів FAT32 потрібно 4 байт (32 біт, а не 16, як у FAT16). Це означає, що деякі файлові утиліти, розраховані на FAT16, не можуть працювати з FAT32.

Основною відмінністю FAT32 від FAT16 є те, що змінився розмір логічного розділу диска. FAT32 підтримує томи обсягом до 127 Гб. При цьому, якщо при використанні FAT16 з 2-гігабайтними дисками був потрібний кластер розміром 32 Кбайт, то FAT32 кластер розміром 4 Кбайт підходить для дисків об'ємом від 512 Мбайт до 8 Гбайт (табл. 4).

Це означає більш ефективне використання дискового простору - що менше кластер, тим менше місця потрібно для зберігання файлу і, як наслідок, диск рідше стає фрагментованим.

При застосуванні FAT32 максимальний розмір файлу може сягати 4 Гбайт мінус 2 байти. Якщо при використанні FAT16 максимальна кількість входжень у кореневий каталог обмежувалася 512, FAT32 дозволяє збільшити це число до 65 535.

FAT32 накладає обмеження на мінімальний розмір тому - він має бути не менше 65527 кластерів. При цьому розмір кластера не може бути таким, щоб FAT займала понад 16 Мбайт-64 Кбайт/4 або 4 млн. кластерів.

При використанні довгих імен файлів дані, необхідні для доступу з FAT16 та FAT32, не перекриваються. При створенні файлу з довгим ім'ям Windows створює відповідне ім'я у форматі 8.3 та одне або більше входжень до каталогу для зберігання довгого імені (по 13 символів з довгого імені файлу на кожне входження). Кожне наступне входження зберігає відповідну частину імені файлу у форматі Unicode. Такі входження мають атрибути "ідентифікатор тома", "тільки читання", "системний" та "прихований" - набір, що ігнорується MS-DOS; у цій операційній системі доступ до файлу здійснюється за його псевдонімом у форматі 8.3.

Файлова система NTFS

До складу Microsoft Windows 2000 входить підтримка нової версії файлової системи NTFS, яка забезпечує роботу з сервісами каталогів Active Directory, точки перерахунку (reparse points), засоби захисту інформації, контроль за доступом і ряд інших можливостей.

Як і при використанні FAT, основною інформаційною одиницею NTFS є кластер. У табл. 5 показані розміри кластерів за промовчанням для томів різної ємності.

При формуванні файлової системи NTFS програма форматування створює файл Master File Table (MTF) та інші області зберігання метаданих. Метадані використовуються NTFS для реалізації файлової структури. Перші 16 записів в MFT зарезервовані NTFS. Розташування файлів метаданих $Mft та $MftMirr записано у завантажувальному секторі диска. Якщо перший запис MFT пошкоджено, NTFS зчитує другий запис для знаходження копії першої. Повна копія завантажувального сектора розміщується наприкінці тома. У табл. 6 перераховані основні метадані, що зберігаються в MFT.

Інші записи MFT містять записи для кожного файлу та каталогу, розміщених на цьому томі.

Зазвичай один файл використовує один запис у MFT, але якщо файл має великий набір атрибутів або він стає занадто фрагментованим, то для зберігання інформації про нього можуть знадобитися додаткові записи. У цьому випадку перший запис про файл, званий базовим записом, зберігає розташування інших записів. Дані про файли та каталоги невеликого розміру (до 1500 байт) повністю містяться у першому записі.

Атрибути файлів у NTFS

Кожен зайнятий сектор на NTFS-томі належить тому чи іншому файлу. Навіть метадані файлової системи є частиною файлу. NTFS розглядає кожен файл (або каталог) як набір файлових атрибутів. Такі елементи як ім'я файлу, інформація про його захист і навіть дані в ньому є атрибутами файлу. Кожен атрибут ідентифікується кодом певного типу та, опціонально, ім'ям атрибута.

Якщо атрибути файлу містяться у файловому записі, вони називаються резидентними атрибутами. Такими атрибутами завжди є ім'я файлу та дата його створення. У тих випадках, коли інформація про файл занадто велика, щоб уміститися в один MFT-запис, деякі атрибути файлу стають нерезидентними. Резидентні атрибути зберігаються в одному або більше кластерах і є потік альтернативних даних для поточного тому (про це трохи нижче). Для опису місцезнаходження резидентних та нерезидентних атрибутів NTFS створює атрибут Attribute List.

У табл. 7 показані основні атрибути файлів, визначені NTFS. У майбутньому цей перелік може бути розширено.

Файлова система CDFS

У Windows 2000 забезпечується підтримка файлової системи CDFS, що відповідає стандарту ISO'9660, що описує розташування інформації на CD-ROM. Підтримуються довгі імена файлів відповідно до ISO'9660 Level 2.

При створенні CD-ROM для використання під керуванням Windows 2000 слід мати на увазі наступне:

  • всі імена каталогів та файлів повинні містити не менше 32 символів;
  • всі імена каталогів та файлів повинні складатися лише із символів верхнього регістру;
  • глибина каталогів має перевищувати 8 рівнів від кореня;
  • Використання розширень імен файлів не обов'язково.

Порівняння файлових систем

Під керуванням Microsoft Windows 2000 можливе використання файлових систем FAT16, FAT32, NTFS або їх комбінацій. Вибір операційної системизалежить від наступних критеріїв:

  • того, як використовується комп'ютер;
  • апаратної платформи;
  • розміру та числа жорстких дисків;
  • безпеки інформації

Файлові системи FAT

Як ви вже могли помітити, цифри в назві файлових систем - FAT16 та FAT32 - вказують на кількість біт, необхідних для зберігання інформації про номери кластерів, які використовуються файлом. Так, у FAT16 застосовується 16-бітна адресація і, відповідно, можливе використання до 2 16 адрес. У Windows 2000 перші чотири біти таблиці розташування файлів FAT32 необхідні для потреб, тому в FAT32 число адрес досягає 2 28 .

У табл. 8 показані розміри кластерів для файлових систем FAT16 та FAT32.

Крім істотних відмінностей у розмірі кластера FAT32 також дозволяє кореневого каталогу розширюватися (FAT16 число входжень обмежено 512 і може бути навіть нижче при використанні довгих імен файлів).

Переваги FAT16

Серед переваг FAT16 можна відзначити такі:

  • файлова система підтримується операційними системами MS-DOS, Windows 95, Windows 98, Windows NT, Windows 2000, і навіть деякими операційними системами UNIX;
  • існує велика кількість програм, що дозволяють виправляти помилки у цій файловій системі та відновлювати дані;
  • у разі виникнення проблем із завантаженням з жорсткого диска система може бути завантажена з флоппі-диска;
  • Ця файлова система досить ефективна для томів об'ємом менше 256 Мбайт.
Недоліки FAT16

До основних недоліків FAT16 відносяться:

  • кореневий каталог не може містити понад 512 елементів. Використання довгих імен файлів значно скорочує кількість цих елементів;
  • FAT16 підтримує не більше 65536 кластерів, а так як деякі кластери зарезервовані операційною системою, число доступних кластерів - 65524. Кожен кластер має фіксований розмір для даного логічного пристрою. При досягненні максимальної кількості кластерів при їх максимальному розмірі (32 Кбайт) максимальний обсяг тома, що підтримується, обмежується 4 Гбайт (під керуванням Windows 2000). Для підтримки сумісності з MS-DOS, Windows 95 та Windows 98 обсяг тома під FAT16 не повинен перевищувати 2 Гб;
  • у FAT16 не підтримується вбудований захист файлів та їх стиснення;
  • на дисках великого об'єму втрачається багато місця за рахунок того, що використовується максимальний кластер. Місце під файл виділяється виходячи з розміру файлу, а кластера.
Переваги FAT32

Серед переваг FAT32 можна відзначити такі:

  • виділення дискового простору виконується ефективніше, особливо дисків великого обсягу;
  • кореневий каталог в FAT32 є звичайним ланцюжком кластерів і може знаходитися в будь-якому місці диска. Завдяки цьому FAT32 не накладає жодних обмежень на кількість елементів у кореневому каталозі;
  • за рахунок використання кластерів меншого розміру (4 Кбайт на дисках об'ємом до 8 Гбайт) зайнятий дисковий простір зазвичай на 10-15% менше, ніж під FAT16;
  • FAT32 є більш надійною файловою системою. Зокрема, вона підтримує можливість переміщення кореневого каталогу та використання резервної копії FAT. окрім цього завантажувальний записмістить низку критичних для файлової системи даних.
Недоліки FAT32

Основні недоліки FAT32:

  • розмір тома під час використання FAT32 під Windows 2000 обмежений 32 Гбайт;
  • томи FAT32 недоступні з інших операційних систем – лише з Windows 95 OSR2 та Windows 98;
  • не підтримується резервна копія завантажувального сектора;
  • у FAT32 не підтримується вбудований захист файлів та їх стиснення.

Файлова система NTFS

Під час роботи з Windows 2000 Microsoft рекомендується відформатувати всі розділи жорсткого диска під NTFS, за винятком тих конфігурацій, коли використовується кілька операційних систем (крім Windows 2000 та Windows NT). Застосування NTFS замість FAT дозволяє використовувати функції, доступні NTFS. До них, зокрема, належать:

  • можливість відновлення. Ця можливість "вбудована" у файлову систему. NTFS гарантує збереження даних за рахунок того, що використовує протокол та деякі алгоритми відновлення інформації. У разі системного збою NTFS використовує протокол та додаткову інформацію для автоматичного відновлення цілісності файлової системи;
  • стиснення інформації. Для томів NTFS Windows 2000 підтримує стиснення окремих файлів. Такі стислі файли можуть використовуватися Windows-додатками без попереднього розпакування, яке відбувається автоматично під час читання з файлу. При закритті та збереженні файл знову упаковується;
  • Крім цього, можна виділити такі переваги NTFS:

Деякі функції операційної системи потребують наявності NTFS;

Швидкість доступу набагато вища - NTFS мінімізує кількість звернень до диска, необхідних знаходження файла;

Захист файлів та каталогів. Тільки на томах NTFS можливе завдання атрибутів доступу до файлів та папок;

У разі використання NTFS Windows 2000 підтримує томи обсягом до 2 Тбайт;

Файлова система підтримує резервну копіюзавантажувального сектора – вона розташовується в кінці тома;

NTFS підтримує систему шифрування Encrypted File System (EFS), що забезпечує захист від неавторизованого доступу до вмісту файлів;

У разі використання квот можна обмежити обсяг дискового простору, який займає користувача.

Недоліки NTFS

Говорячи про недоліки файлової системи NTFS, слід зазначити, що:

  • NTFS-томи недоступні в MS-DOS, Windows 95 і Windows 98. Крім цього, ряд функцій, реалізованих в NTFS під Windows 2000, недоступний у Windows 4.0 і раніше версіях;
  • для томів невеликого обсягу, що містять багато файлів невеликого розміру, можливе зниження продуктивності порівняно з FAT.

Файлова система та швидкість

Як ми вже з'ясували, для томів невеликого обсягу FAT16 або FAT32 забезпечує швидший доступ до файлів у порівнянні з NTFS, оскільки:

  • FAT має більш просту структуру;
  • розмір каталогів менший;
  • FAT не підтримує захист файлів від несанкціонованого доступу – системі не потрібно перевіряти права доступу до файлів.

NTFS мінімізує кількість звернень до диска та час, необхідний для знаходження файлу. Крім того, якщо розмір каталогу досить малий, щоб поміститися в одному записі MFT, весь запис зчитується за один раз.

Одне входження до FAT містить номер кластера для першого кластера каталогу. Для перегляду FAT-файлу потрібен пошук по всій файловій структурі.

Порівнюючи швидкість операцій, що виконуються для каталогів, що містять короткі та довгі імена файлів, слід враховувати, що швидкість операцій для FAT залежить від самої операції та розміру каталогу. Якщо FAT шукає неіснуючий файл, пошук виконується по всьому каталогу - ця операція займає більше часу, ніж пошук структури, заснованої на B-деревах, що використовується в NTFS. Середній час, необхідний для пошуку файлу, у FAT виражається як функція від N/2, у NTFS - як log N, де N - це число файлів.

Низка наступних факторів впливає на швидкість читання та запису файлів під керуванням Windows 2000:

  • Фрагментація файлу. Якщо файл сильно фрагментований, NTFS зазвичай потрібно менше звернень до диска, ніж FAT для пошуку всіх фрагментів;
  • Розмір кластера. Для обох файлових систем розмір кластера за замовчуванням залежить від обсягу тома і завжди виражається ступенем числа 2. Адреси в FAT16 - 16-бітові, FAT32 - 32-бітові, в NTFS - 64-бітові;
  • розмір кластера за замовчуванням у FAT базується на тому факті, що таблиця розташування файлів може мати не більше 65 535 входжень - розмір кластера є функцією від обсягу тома, поділеного на 65 535. Таким чином, розмір кластера за замовчуванням для тома FAT завжди більше, ніж розмір кластера для тому NTFS того ж обсягу. Зазначимо, що більший розмір кластера для томів FAT означає, що FAT томи можуть бути менш фрагментованими;
  • розташування файлів невеликого розміру. При використанні NTFS файлиневеликого розміру містяться у MFT-записі. Розмір файлу, який міститься в один запис MFT, залежить від кількості атрибутів цього файлу.

Максимальний розмір томів NTFS

Теоретично NTFS підтримує томи з числом кластерів до 232 . Проте крім відсутності жорстких дисків такого обсягу існують інші обмеження на максимальний розмір тома.

Одним із таких обмежень є таблиця розділів. Індустріальні стандарти обмежують розмір таблиці розділів 232 секторами. Іншим обмеженням є розмір сектора, який зазвичай дорівнює 512 байт. Оскільки розмір сектора може змінитися в майбутньому, поточний розмір дає обмеження на розмір одного тома – 2 Тбайт (231 x 512 байт = 241). Таким чином, 2 Тбайт є практичною межею для фізичних та логічних томів NTFS.

У табл. 11 показано основні обмеження NTFS.

Керування доступом до файлів та каталогів

При використанні томів NTFS можна встановлювати права доступу до файлів та каталогів. Ці права доступу вказують, які користувачі та групи мають доступ до них та який рівень доступу допустимий. Такі права доступу поширюються як на користувачів, що працюють за комп'ютером, на якому розташовуються файли, так і на користувачів, які звертаються до файлів через мережу, коли файл міститься в каталозі, відкритому для віддаленого доступу.

Під NTFS також можна встановлювати дозволи на віддалений доступ, що поєднуються з дозволами на доступ до файлів та каталогів. Крім цього, файлові атрибути (тільки читання, прихований, системний) також обмежують доступ до файлу.

Під керуванням FAT16 і FAT32 також можна встановлювати атрибути файлів, але не забезпечують права доступу до файлів.

У версії NTFS, яка використовується у Windows 2000, з'явився новий тип дозволу на доступ - успадковані дозволи. Вкладка Security містить опцію Allow inheritable permissions from parent to propagate to file object, яка за умовчанням перебуває в активному стані. Дана опція істотно скорочує час, потрібний на зміну прав доступу до файлів та підкаталогів. Наприклад, для зміни прав доступу до дерева, що містить сотні підкаталогів та файлів, достатньо включити цю опцію – у Windows NT 4 необхідно змінити атрибути кожного окремого файлу та підкаталогу.

На рис. 5 показані діалогова панель Properties та вкладка Security (розділ Advanced) – перераховані розширені права доступу до файлу.

Нагадаємо, що для томів FAT можна керувати доступом лише на рівні томів і такий контроль можливий лише за віддаленого доступу.

Стиснення файлів та каталогів

Windows 2000 підтримує стиснення файлів і каталогів, розташованих на NTFS-томах. Стислі файли доступні для читання та запису будь-якими програмами Windows. Для цього немає необхідності в їхньому попередньому розпакуванні. Використовуваний алгоритм стиснення схожий з тим, що використовується в DoubleSpace (MS-DOS 6.0) і DriveSpace (MS-DOS 6.22), але має одну істотну відмінність - під керуванням MS-DOS виконується стиснення цілого первинного розділу або логічного пристрою, тоді як під NTFS можна упаковувати окремі файли та каталоги.

Алгоритм стиснення NTFS розроблений з урахуванням підтримки кластерів розміром до 4 Кбайт. Якщо розмір кластера більше 4 Кбайт, функції стиснення NTFS стають недоступними.

Самовідновлення NTFS

Файлова система NTFS має здатність самовідновлення і може підтримувати свою цілісність за рахунок використання протоколу виконуваних дій та інших механізмів.

NTFS розглядає кожну операцію, яка модифікує системні файли на NTFS-томах, як транзакцію і зберігає інформацію про таку транзакцію в протоколі. Почата транзакція може бути повністю завершена (commit), або відкочується (rollback). У разі NTFS-том повертається у стан, що передує початку транзакції. Щоб керувати транзакціями, NTFS записує всі операції, які входять у транзакцію, у файл протоколу, як здійснити запис на диск. Після завершення транзакції всі операції виконуються. Отже, під керуванням NTFS може бути незавершених операцій. У разі дискових збоїв незавершені операції просто скасовуються.

Під керуванням NTFS також виконуються операції, що дозволяють "на льоту" визначати дефектні кластери та відводити нові кластери для файлових операцій. Цей механізм називається cluster remapping.

В даному оглядіми розглянули різні файлові системи, що підтримуються в Microsoft Windows 2000, обговорили пристрій кожної з них, відзначили їх переваги та недоліки. Найбільш перспективною є файлова система NTFS, яка має великий набір функцій, недоступних в інших файлових системах. Нова версія NTFS, підтримувана Microsoft Windows 2000, має ще більшу функціональність і тому рекомендується для використання при встановленні операційної системи Win 2000.

Комп'ютерПрес 7"2000

Файлова система сімействаWindows.

Файлова система (file system) - функціональна частина операційної системи, яка відповідає за обмін даними із зовнішніми пристроями, що запам'ятовують. Операційними системами Windowsвикористовується, розроблена ще для DOS файлова система FAT, у якій кожному розділи і томи DOS є завантажувальний сектор, і кожен розділ DOS містить дві копії таблиці розміщення файлів (file allocation table – FAT). FAT є матрицею, яка встановлює співвідношення між файлами та папками розділу та їх фізичним розташуванням на жорсткому диску. Перед кожним розділом жорсткогодиска послідовно розташовані дві копії FAT. Подібно завантажувальним секторам, FAT знаходиться за межами області диска, видимої для файлової системи. При записі на диск файли не обов'язково займають простір, еквівалентний їх розміру. Зазвичай, файли розбиваються на кластери певного розміру, які можуть бути розкидані по всьому розділу. В результаті таблиця FAT є не список файлів та їх розташування, а список кластерів розділу та їх вмісту, а в кінці кожного опису міститься посилання на наступний кластер.

Елементи таблиці FAT є 12-, 16- і 32-бітові шістнадцяткові числа, розмір яких визначається програмою FDISK, а значення безпосередньо створюється програмою FORMAT. Всі гнучкі диски, а також жорсткі диски розміром до 16 Мбайт використовують у FAT 12-бітові елементи. Жорсткі та знімні диски, Що мають розмір від 16 Мбайт і більше, зазвичай використовують 16-бітові елементи. В Windows98для дисків об'ємом понад 512 Мбайт може використовуватись файлова система FAT32з 32-бітовим елементами таблиці FAT. Вочевидь, що менше розмір кластерів розділу, то більше вписуватиметься у цьому розділі і тим більше розмір таблиці розміщення файлів FAT, отже, довше а ній виконується пошук інформації, необхідної доступу до файлу. Навіщо тоді необхідно зменшувати розмір кластера? Справа в тому, що розмір файлу може бути довільним, однак при записі на диск Windows розбиває файл на кілька кластерів. У результаті останній кластер майже ніколи не буває наповнений до кінця. Порожній простір, що називається люфтом, існує до тих пір, поки файл знаходиться на диску. Таким чином, розмір втраченого простору залежить від розміру кластеру. Крім підтримки великих розділів та менших кластерів FAT32 інакше використовує саму таблицю розміщення файлів. У FAT використовувалися дві ідентичні таблиці, одна з яких була основною, друга при виконанні звичайних процедур постійно оновлювалася, заповнюючись при цьому можливими помилкамипершої копії. FAT32, при неможливому зчитуванні даних з основної таблиці, звертається до другої копії, яка і стає основною.

Коли Windows NTвперше побачила світ, у ній була передбачена підтримка трьох файлових систем. Це таблиця розміщення файлів (FAT), що забезпечувала сумісність з MS-DOS, файлова система підвищеної продуктивності (HPFS), що забезпечувала сумісність з LAN Manager, і нова файлова система, що мала назву Файлова система нових технологій ( NTFS). NTFS мала ряд переваг у порівнянні з використовуваними на той момент для більшості файлових серверів файловими системами. Для забезпечення цілісності даних у NTFS є журнал транзакцій. Подібний підхід не виключає ймовірності втрати інформації, однак значно збільшує ймовірність того, що доступ до файлової системи буде можливий навіть у тому випадку, якщо буде порушена цілісність системи сервера. Це стає можливим при використанні журналу транзакцій для відстеження незавершених спроб запису на диск при наступному завантаженні Windows NT. Журнал транзакцій також використовується для перевірки диска на наявність помилок замість перевірки кожного файлу у разі використання таблиці розміщення файлів. Однією з основних переваг NTFS є безпека. NTFS надає можливість вносити записи контролю доступу (Access Control Entries, ACE) до списку контролю доступу (Access Control List, ACL). ACE містить ідентифікаційне ім'я групи або користувача та маркер доступу, який може бути використаний для обмеження доступу до певного каталогу чи файлу.

Цей доступ може припускати можливість читання, запису, видалення, виконання та навіть володіння файлами. З іншого боку, ACL є контейнером, що містить один або більше записів ACE. Це дозволяє обмежити доступ окремих користувачів або груп користувачів до певних каталогів або файлів у мережі. Крім того NTFS підтримує роботу з довгими іменами, що мають довжину до 255 символів і містять великі та малі літери в будь-якій послідовності. Однією з основних параметрів NTFS є автоматичне створення еквівалентних імен, сумісних із MS-DOS. Також NTFS має функцію стиснення, що вперше з'явилася в NT версії 3.51. Вона забезпечує можливість стиснення будь-якого файлу, каталогу чи диска NTFS. На відміну від програм стиснення MS-DOS, що створюють віртуальний диск, що має вигляд прихованого файлуі піддає стиску всі дані на цьому диску, Windows NT використовує додатковий рівень файлової підсистеми для стиснення та розущільнення потрібних файлів без створення віртуального диска. Це виявляється корисним при стисненні або певної частини диска (наприклад, каталогу користувача), або файлів, що мають певний тип (наприклад, графічних файлів). Єдиним недоліком стиснення NTFS є низький, порівняно зі схемами стиснення MS-DOS, рівень компресії. Натомість NTFS відрізняється більш високою надійністю та продуктивністю.

Ви знаєте, що Windows Phoneвикористовує NTFS? Чому більшість карт пам'яті і майже всі USB-накопичувачі, як і раніше, використовують старий-добрий FAT? Чому ви можете зберігати повнорозмірні HD-фільми на деяких флеш-накопичувачах та не можете на інших? Чому деякі пристрої підтримують лише карти пам'яті SDHC до 32 ГБ, і що можна зробити, щоб змусити їх використовувати 64 ГБ SDXC? Ці та багато інших питань пов'язані з типом файлової системи, що використовується конкретним пристроємзберігання. Але як це пов'язано із Windows?

На початку історії персональних комп'ютерів(думаю, в епоху текстових DOS-боксів і дискет) єдиною файловою системою, що використовується, була FAT12. З появою жорстких дисків, здатних зберігати кілька мегабайт даних (так, саме мегабайт, а не гігабайт!), була розроблена нова версія FAT під назвою FAT16. Під цю файлову систему розроблявся Windows 95, отримавши лише «апгрейд» як підтримки довших імен файлів. У Windows 98 Microsoft додали підтримку ще однієї нової версії FAT під назвою FAT32 для підтримки великих жорстких дисків (так, на той час ми вже почали вимірювати дисковий простір у гігабайтах).

У паралельному всесвіті Windows NT Microsoft постійно використовувала файлову систему нових технологій, або NTFS. Windows NT 4, Windows 2000, а потім Windows XP, Vista, Windows 7, 8, 8.1 та нові Windows 10 використовують NTFS.

У ще одному паралельному всесвіті – всесвіті знімного сховища ви можете вибирати між універсальним FAT32 (при цьому зіткнувшись з його обмеженням у розмірах файлів у 4 ГБ) і новішим, але не так широко підтримуваним (через обмеження ліцензування) exFAT. До речі, exFAT використовується як файлова система на вибір на всіх картах SDXC ємністю 64 ГБ і більше.

Отже, в даний час у нас є три різні сімейства файлових систем: стародавня, але все ж таки широко застосовувана FAT32, нова NTFS і свіжорозроблена, оптимізована на основі Solid ExFAT. Яку з цих файлових систем використовувати і коли? І які різницю між ними?

FAT32: Очевидний вибір

FAT32 залишається єдиною файловою системою, яка використовується в Windows 98 або Windows ME. FAT32 фактично є файловою системою вибору карток пам'яті SD до 32ГБ включно. Нарешті, FAT32 часто використовується для форматування USB-накопичувачів, зокрема ємністю 64ГБ і вище.

Дідок FAT32… Його основні обмеження добре відомі. FAT32 підтримує роботу з файлами розміром трохи більше 4 ГБ. Якщо здається, що для одного файлу це багато, згадайте про те, що один відеоролик у форматі HD займає від 4,5 до 10 ГБ, і відразу стане зрозумілим, наскільки це обмеження суттєво в сучасних реаліях. Його інші обмеження включають відсутність надійної підтримки, абсолютну відсутність контролю доступу, відсутності шифрування, стиснення або відмовостійкості.

Інакше кажучи, це абсолютно проста та легка файлова система, яка підходить практично для будь-якої портативної електроніки з низькою продуктивністю, такої як цифрові камери та відеокамери, прості смартфони, MP3-плеєри та аналогічні пристрої. Через його поважний вік і широку популярність у Windows з 1997 року FAT32 підтримується практично всією технікою, включаючи холодильник і кавоварку. Іншими словами, якщо ви хочете носити з собою один знімний пристрій і бути впевненим, що його можна використовувати з будь-яким модулем, що підключається, FAT32 - те, що вам потрібно.

NTFS: системний диск

Однак обмеження FAT32 не дозволять ефективно використовувати її у сучасних обчислювальних середовищах. Відсутність контролю доступу – це одне, абсолютна відсутність ведення журналу та будь-яких натяків на стійкість до відмови – це інше. Обмежений розмір файлу також є великим мінусом. В результаті Microsoft представила нову файлову систему, яку вони назвали файловою системою нових технологій, або NTFS.

У NTFS є все, чого не вистачає FAT. Потужні настройки контролю доступу? Будь ласка. Відмовостійкість та ведення журналу? Отримайте. Миттєве стиснення та шифрування окремих файлів, папок та цілих томів диска? Звісно. Альтернативні потоки даних, підвищені заходи безпеки, резервне копіювання самої файлової системи та важливих системних файліві багато інших функцій… Починаючи з його початкового випуску в 1994 році, NTFS отримувала нові оновлення, у тому числі, що підвищують її сумісність. Її чудовий дизайн і проста реалізація, як і раніше, не мають аналогів серед інших файлових систем навіть сьогодні. Вона є досить універсальною для використання навіть на смартфонах початкового рівня під керуванням Windows Phone 8 і 8.1. Але якщо це така відмінна файлова система, чому її не використовують все і скрізь?

Як ви можете очікувати, NTFS не позбавлена ​​недоліків. Розроблена ще 1994 року для серверних операцій, ця файлова система завжди вимагала великої обчислювальної потужності підтримки своїх численних структур. Її системні записи швидко зростають, займають дорогоцінний простір і додають додаткове навантаження на пристрої зберігання, що використовують флеш-пам'ять NAND. Нарешті, якщо використовувати будь-що, крім великих жорстких дисків, її накладні витрати виявляться занадто великі, тому загальне визнання система поки що так і не завоювала. І останнє, але не менш важливе: NTFS запатентована Microsoft, яка не бажає відкривати ліцензії на цю файлову систему конкурентам.

exFAT: найкраще, якщо підтримується.

Щоб подолати обмеження FAT32 і зменшити додаткове навантаження, яке надається NTFS на носії на основі NAND, Microsoft розробила ще одну файлову систему під назвою Extended FAT або exFAT. Ця файлова система значною мірою заснована на тій же концепції, що й оригінальний FAT, тільки тепер вона є справжньою 64-бітною файловою системою без обмеження розміру файлу, що існує у FAT32. Саме тому exFAT використовується як стандарт для великих SD-карток (стандарт SDXC вимагає, щоб усі SD-картки розміром 64 ГБ і більше були відформатовані за допомогою exFAT). Тому, якщо ви купуєте 64-гігабайтну карту microSDXC, вона буде працювати на основі exFAT... і з цієї причини вона може не розпізнаватись вашим смартфоном або планшетом.

Причина, через яку exFAT не замінила стародавній FAT32 всюди – платне ліцензування. На відміну від FAT32, яка є безкоштовною для всіх без роялті, з виробників, які хочуть використовувати exFAT на своїх пристроях Microsoft стягує плату за ліцензування. В результаті творці телефонів Android, низькорівневих Android-планшетів і дешевих камер воліють заощадити кілька центів вартості пристроїв (у перерахунку на одиницю випущеної техніки) на ліцензуванні, воліючи виключити exFAT зі списку файлових систем, що підтримуються. В результаті, якщо ви вставляєте нову 64-гігабайтну мікро SD-карту в такий пристрій, картка, швидше за все, не розпізнається.

Чи можете ви особисто подолати це обмеження? Найчастіше так, і досить легко. Просто підключіть свою SD-карту до ПК через пристрій для читання карт і відформатуйте її за допомогою … ви здогадалися… FAT32! Таким чином, ви втратите можливість зберігати на ній файли розміром більше 4 ГБ, але ваша карта пам'яті, швидше за все, буде розпізнана і безперебійно працюватиме пристрої Android, яке по технічним характеристикамяк і не повинно підтримувати SD-карти ємністю більше 32 ГБ.

(Зверніть увагу, що деякі пристрої можуть бути занадто старими, щоб розпізнавати карти пам'яті SDXC чисто фізично. Так, такі не виробляються вже кілька років, але випущені раніше пристрої можуть як і раніше не підтримувати карту SDXC незалежно від того, з якою файловою системою вона постачається)

Однак хвилиночку… Windows Phone – це ОС Microsoft, чи не будуть пристрої Windows Phone підтримувати exFAT за замовчуванням? Так і є! Windows Phone 8 і 8.1 дійсно поставляються із вбудованою підтримкою exFAT, безкоштовною для виробників, які хочуть випускати пристрої для платформи Windows Phone. Microsoft пропонує безкоштовну ліцензію exFAT в рамках свого «пакета стимулювання», покликаного спонукати більше виробників приєднатися до платформі Windows Phone.

Нарешті, всі або майже всі планшети з операційною системою Windows RT та повною версією Windows 8 або 8.1 підтримують exFAT і розпізнають 64-ГБ і більші SD-карти легко.

Відновлення файлових систем Windows

Майже кожен інструмент відновлення даних на базі Windows пропонує підтримку FAT32 і NTFS. Інструменти, що підтримують exFAT, набагато менш доступні через обмеження ліцензування Microsoft. Одним із інструментів підтримки всіх трьох файлових систем Windows є RS Partition Recovery.

Нарешті, якщо вам потрібна лише підтримка однієї з файлових систем, ви можете заощадити, обравши

КОНТРОЛЬНА РОБОТА

з дисципліні

" Інформатика та комп'ютерна техніка" на тему:

"Операційні системи"

"Файлові системи"

1. Операційні системи

2. Файлові системи

3. Файлові системи та імена файлів

Список литературы

1. Операційні системи

Операційна система, ОС (англ. operatingsystem) - базовий комплекс комп'ютерних програм, що забезпечує управління апаратними засобами комп'ютера, роботу з файлами, введення та виведення даних, а також виконання прикладних програмта утиліт.

При включенні комп'ютера операційна система завантажується на згадку раніше інших програм і потім служить платформою і середовищем їхньої роботи. Крім вищезгаданих функцій ОС може здійснювати інші, наприклад, надання інтерфейсу користувача, мережна взаємодія тощо. З 1990-х найбільш поширеними операційними системами для персональних комп'ютерів та серверів є ОС сімейства Microsoft Windows та Windows NT, Mac OS та Mac OS X, системи класу UNIX, та Unix подібні(особливо GNU/Linux).

Операційні системи можуть бути класифіковані за базовою технологією ([Юнікс] -подібні або подібні Windows), типу ліцензії ([власне програмне забезпечення|пропрієтарна] або [відкрите програмне забезпечення|відкрита]), чи розвивається в даний час (застарілі DOS або NextStep або сучасні GNU/Linux і Windows), для робочих станцій (DOS, Apple), або для серверів (), [операційна система реального часу|ОС реального часу] та [вбудована операційна система|вбудовані ОС] (, ), , або спеціалізовані ( управління виробництвом, навчання, тощо). Призначення та основні можливості програми MS EXCEL. Інтерфейс програми. Основні елементи інтерфейсу. Концепція електронної таблиці, осередки, рядки, стовпця, система адресації. Рух табличного поля. Ввід данних. Типи даних. Редагування вмісту комірки. Зміна ширини та висоти осередку. Властивості осередку (команда "Формат осередків").

2. Файлові системи

Усі сучасні ОС забезпечують створення файлової системи, що призначена зберігання даних на дисках і забезпечення доступу до них.

Основні функції файлової системи можна розділити на дві групи:

Функції для роботи з файлами (створення, видалення, перейменування файлів тощо)

Функції для роботи з даними, що зберігаються у файлах (запис, читання, пошук даних тощо)

Відомо, що файли використовуються для організації та зберігання даних на машинних носіях. Файл - це послідовність довільного числа байтів, що має унікальне власне ім'я або названа область на машинних носіях.

Структурування множини файлів на машинних носіях здійснюється за допомогою каталогів, в яких зберігаються атрибути (параметри та реквізити) файлів. Каталог може включати багато підкаталогів, у результаті чого на дисках утворюються розгалужені файлові структури. Організація файлів у вигляді деревоподібної структуриназивається файловою системою.

Принцип організації файлової системи – табличний. Дані про те, де на диску записаний файл, зберігається в таблиці розташування файлів (File Allocation Table, FAT).

Ця таблиця розміщується на початку тому. Для захисту тому на ньому зберігаються дві копії FAT. У разі пошкодження першої копії FAT дискові утилітиможуть скористатися другою копією відновлення тома.

За принципом побудови FAT схожа на зміст книги, тому що операційна система використовує її для пошуку файлу та визначення кластерів, які цей файл займає на жорсткому диску.

Найменшою фізичною одиницею зберігання даних є сектор. Розмір сектора 512 байт. Оскільки розмір FAT - таблиці обмежений, то дисків, розмір яких перевищує 32 Мбайт, забезпечити адресацію кожному окремому сектору неможливо.

У зв'язку з цим групи секторів умовно об'єднуються у кластери. Кластер є найменшою одиницею адресації даних. Розмір кластера, на відміну розміру сектора, не фіксований і залежить від ємності диска.

Спочатку для дискет та невеликих жорстких дисків (менше 16 Мбайт) використовувалася 12-розрядна версія FAT (так звана FAT12). Потім у MS-DOS була введена 16-розрядна версія FAT для більших дисків.

Операційні системи MS DOS, Win 95, Win NT реалізують 16 - розрядні поля таблицях розміщення файлів. Файлова система FAT32 була введена у Windows 95 OSR2 і підтримується у Windows 98 та Windows 2000.

FAT32 є удосконаленою версією FAT, призначеною для використання на томах, об'єм яких перевищує 2 Гбайт.

FAT32 забезпечує підтримку дисків розміром до 2 Тбайт та більш ефективне витрачання дискового простору. FAT32 використовує дрібніші кластери, що дозволяє підвищити ефективність використання дискового простору.

У Windows XP застосовується FAT32 та NTFS. Більш перспективним напрямком у розвитку файлових систем став перехід до NTFS (New Technology File System – файлова система нової технології) з довгими іменами файлів та надійною системою безпеки.

Об'єм розділу NTFS не обмежений. У NTFS мінімізується обсяг дискового простору, що втрачається внаслідок запису не великих файліву великі кластери. Крім того, NTFS дозволяє заощаджувати місце на диску, стискаючи сам диск, окремі папки та файли.

За методами іменування файлів розрізняють "коротке" і "довге" ім'я.

Відповідно до угоди, прийнятому в MS-DOS, методом іменування файлів на комп'ютерах IBM PC було угоду 8.3., тобто. Ім'я файлу складається з двох частин: власне імені та розширення імені. На ім'я файлу відводиться 8 символів, але в його розширення - 3 символи.

Ім'я від розширення відокремлюється крапкою. Як ім'я, і ​​розширення можуть включати лише алфавітно-цифрові символи латинського алфавіту. Імена файлів, записані відповідно до угоди 8.3, вважаються "короткими".

З появою операційної системи Windows 95 було введено поняття "довгого" імені. Таке ім'я може містити до 256 символів. Цього цілком достатньо для створення змістових імен файлів. "Довге" ім'я може містити будь-які символи, крім дев'яти спеціальних: /: *?< > |.

У імені дозволяється використовувати пробіли та кілька точок. Ім'я файлу закінчується розширенням, що складається із трьох символів. Розширення використовується для класифікації файлів типу.

Унікальність імені файлу забезпечується тим, що повним ім'ям файлу вважається власне ім'я файлу разом із шляхом доступу до нього. Шлях доступу до файлупочинається з імені пристрою та включає всі імена каталогів (папок), через які проходить. Як роздільник використовується символ “” (зворотний сліш - зворотна коса риса). Наприклад: D: Documents and SettingsТВАМої документиlessons-tva robots. txt Незважаючи на те, що дані про розташування файлів зберігаються в табличній структурі, користувачеві вони представляються у вигляді ієрархічної структури - людям так зручніше, а всі необхідні перетворення бере на себе операційна система.

Звичайний файл є масив байтів, і може читатися і записуватися, починаючи з довільного байта файлу. Ядро не розрізняє в звичайних файлах меж записів, хоча багато програм сприймають символи перекладу рядка як ознаки кінця рядків, але інші програми можуть припускати наявність інших структур. У самому файлі не зберігається жодної системної інформації про файл, але у файловій системі розміщується деяка інформація про власника, права доступу та використання кожного файлу.

Компонент під назвою ім'я файлує рядком завдовжки до 255 символів. Ці імена зберігаються у файлі особливого типу, який називається каталогом. Інформація про файл у каталозі називається записом каталогуі включає, крім імені файлу, покажчик сам файл. Записи каталогу можуть посилатися як на інші каталоги, так і звичайні файли. Таким чином формується ієрархія каталогів та файлів, яка і називається файловою системою filesystem;

Малюнок 2-2. Невелика файлова система

Одна маленька файлова система показана на Рис.2-2. Каталоги можуть містити підкаталоги і немає обмежень вкладеності одного каталогу в інший за глибиною. Для дотримання цілісності файлової системи, ядро ​​не дозволяє процесу робити запис безпосередньо в каталоги. Файлова система може зберігати не тільки звичайні файли та каталоги, але також посилання на інші об'єкти, такі як пристрої та сокети.

Файлова система утворює дерево, початок якого знаходиться в кореневому каталозі, іноді званому на ім'я слешщо відповідає символу одинарної похилої риси (/). Кореневий каталог містить файли; у нашому прикладі на малюнку 2.2, він містить vmunix, копію здійснюваного об'єктного файлу ядра. У ньому також розташовані каталоги; у цьому прикладі містить каталог usr. Усередині каталогу usr розташовується каталог bin, який в основному містить об'єктний код програм, таких, як ls і vi.

Процес звертається до файлу, вказуючи шляхдо нього, який є рядком, що складається з декількох або жодних імен файлів, розділених символами слеша (/). З кожним процесом ядро ​​пов'язує два каталоги, з яких можна інтерпретувати маршрути до файлів. Кореневий каталогпроцес є найвищою точкою файлової системи, яку може досягти процес; зазвичай він відповідає кореневому каталогу всієї файлової системи. Маршрут, що починається з символу слеша, називається абсолютним маршрутом, та інтерпретується ядром, починаючи з кореневого каталогу процесу.

Ім'я шляху, яке не починається зі слеша, називається відносним маршрутом, та інтерпретується щодо поточного робочого каталогупроцесу. (Цей каталог коротко також називають поточним каталогомабо робочим каталогом) Поточний каталог сам по собі можна позначити безпосередньо на ім'я dotщо відповідає одній точці (). ім'я файлу dot-dot(.) означає батьківський каталог поточного каталогу. Кореневий каталог є предком себе.

Файлова система визначає те, як зберігатимуться дані на диску, і які принципи доступу до інформації, що зберігається, можуть бути використані при її зчитуванні.

Ми звикли сприймати інформацію на нашому ПК у вигляді конкретних файлів, акуратно (або не дуже:) розкладених по папках. А, тим часом, Ваш комп'ютер працює з даними зовсім за іншим принципом. На жорсткому диску не існує цілих файлів. Він "бачить" лише чітко адресовані сектори з байт-кодом. Причому код одного файлу який завжди зберігається у сусідніх секторах (так звана фрагментація даних).

Як же комп'ютер розуміє, де йому, наприклад, шукати наш текстовий документ, який лежить, скажімо, на Робочому столі? За це, виявляється, відповідає файлова система жорсткого диска. І сьогодні ми з Вами дізнаємося, які бувають файлові системи та які їх особливості.

Що таке файлова система

Щоб зрозуміти, що таке файлова система, найкраще скористатися методом аналогії. Уявімо, що жорсткий диск- це якийсь ящик, у якому зберігаються різнокольорові кубики. Ці кубики - частини різних файлів, що зберігаються в обмежених за розміром осередках, які називаються кластерами. Вони можуть бути просто навалені купою або певний порядок розміщення. Так от, якщо ці умовні кубики зберігаються не хаотичною купою, а відповідно до якоїсь логіки, ми можемо говорити про наявність якогось аналога файлової системи.

Файлова система визначає порядок зберігання даних на диску та принципи доступу до них, проте багато в чому тип файлової системи залежить і від типу носія. Наприклад, очевидно, що для магнітної стрічки, яка підтримує запис лише послідовних блоків даних, підійде лише однорівнева файлова система з послідовним доступом до кластерів з інформацією, а для сучасного SSD-диска – будь-яка багаторівнева з довільним доступом:

За принципом послідовності зберігання блоків даних файлові системи, як ми вже побачили, можна розділити на ті, що зберігають кластери з фрагментами файлу послідовноабо довільно. Що стосується рівнів, то по них ФС можна поділити на однорівневіі деревоподібні(багаторівневі).

У першому випадку всі файли відображаються як єдиного плоского списку, тоді як у другому - як ієрархічного. Рівень вкладень при цьому, як правило, необмежений, а розгалуження йде або від одного ("root" в UNIX), або від кількох кореневих каталогів (логічні диски у Windows):

До особливостей файлових систем можна віднести наявність різних механізмів, що захищають структуру даних від збоїв. Одним із найсучасніших механізмів забезпечення відмовостійкості ФС є журналування. Воно дозволяє записувати у спеціальні службові файли (їх називають "журналами" або "логами") усі дії, що виробляються з файлами.

Журналування може бути повним, коли кожної операції створюється бекап як стану кластерів, а й усіх записаних даних. Таке журналування часто застосовують для різних баз даних, але воно суттєво уповільнює роботу системи та збільшує розмір логів (фактично логи зберігають повний бекап усієї файлової системи з усіма її даними).

Набагато часто журналюються тільки логічні операціїта (опціонально) стан кластерів файлової системи. Тобто, в журнал записується тільки те, що, скажімо, файл з ім'ям "file.txt" розміром 52 КБ був записаний в такі кластери. Вміст самого файлу в лозі не значиться. Такий підхід дозволяє уникнути дублювання даних, прискорює процеси роботи з файлами і зменшує розміри самого журналу. Єдиний недолік при такому способі журналування - при збої можуть бути втрачені дані, що записуються (оскільки їх копії немає), але сам стан файлової системи залишиться працездатним.

Форматування

Оскільки ми говоримо про файлові системи в контексті сучасних комп'ютерів з їх жорсткими або SSD-дисками, то більшу увагу ми приділимо багаторівневим ФС з довільним доступом до кластерів. Найбільш популярними в комп'ютерному світісьогодні є: FAT32, NTFS, exFAT, ext3/ext4, ReiserFS та HFS+.

Зміна файлової системи на диску досягається його форматуванням. Воно передбачає створення лише на рівні жорсткого диска у початковому його секторі спеціальних службових міток, визначальних принципи доступу до даних. При цьому кластери з наявними даними при форматуванні зазвичай очищаються або позначаються як порожні і доступні для перезапису. Винятком є ​​окремі випадки конвертації файлової системи(наприклад, з FAT32 в NTFS), коли вся структура даних зберігається.

Для форматування можна скористатися штатними засобами операційної системи (наприклад, консольними командами Linux або контекстному менюдиска в Windows), функціями, доступними на підготовчому етапі установки ОС, або ж спеціальними програмами. Єдине, що слід врахувати при програмному вирішенні, так це те, що Ваша операційна система може не підтримувати вибрану Вами файлову систему без встановлення додаткових драйверів (наприклад, ext3/4 у Windows):

Існує також поняття низькорівневого форматування. Спочатку воно мало на увазі очищення диска із записом в його кластери спеціальної службової інформації для вирівнювання головок, що зчитують. Для сучасних жорстких дисківтакої функції на програмному рівні вже не передбачено (зробити це можна лише за допомогою спецобладнання), проте поняття низькорівневого форматування збереглося, щоправда, трохи трансформувалося.

Здійснюється воно зараз за допомогою спеціального софту(HDD Low Level Format Tool для Windows) або команд (DD для Linux). При його застосуванні всі кластери жорсткого диска перезаписуються нулями та повністю знищується будь-яка розмітка. Після цього файлова система фактично зникає і Windows відображається як RAW. Щоб отримати доступ до диска після такого форматування, потрібно відформатувати його в одній із доступних традиційних файлових систем вищого рівня.

Особливості файлових систем

Ну а тепер розглянемо деякі особливості найпоширеніших файлових систем.

FAT32

Одна з найстаріших файлових систем для дисків, яка ще широко використовується в наші дні. FAT32(скор. англ. "File Allocation Table" - "таблиця розміщення файлів"). В силу своєї поширеності, вона підтримується максимальною кількістю різноманітного обладнання, починаючи з автомагнітол, закінчуючи потужними сучасними комп'ютерами. Більшість флеш-накопичувачів, що продаються сьогодні, також відформатовані в FAT32.

Вперше дана ФС з'явилася в Windows 95 OSR2 в 1996 році, ставши логічним розвитком ще більш ранньої FAT16 (1983). Однією з основних причин переходу на нову файлову систему стала поява ємних (на той час) жорстких дисків об'ємом більше 2 ГіБ (гібібайт - точніший варіант гігабайта (109) - 230 байт) (максимально можливий розмір розділу в FAT16). FAT32 дозволила використовувати до 268435445 кластерів максимум по 32 КБ, що еквівалентно 8 ТіБ на тому. Однак, якщо розмір кластера буде стандартним (512 Б), то максимальний розмір тома буде трохи більше 127 ГБ.

Основою FAT32, як випливає з назви, є файлова таблиця. Вона зберігає в собі записи про наявні файли, а також про час їх створення та останній доступ до них. Журналування відсутнє, тому процеси читання/запису в цій файловій системі відбуваються швидше, ніж, наприклад, NTFS, яка веде більш повні логи. Саме через хорошу швидкодію FAT32 все ще широко використовується в наші дні.

Головним же недоліком FAT32 на даний моментє обмеження на максимальний розмір файлу – 4 ГіБ. Файли, що перевищують цей поріг, повинні бути розбиті на частини, що, у свою чергу, ускладнює доступ до них. Крім того, FAT32 має ще деякі обмеження серед Windows. Наприклад, штатними засобами Ви не зможете створити розділи понад 32 ГБ. Тому флешки на 64 ГБ і більше доведеться форматувати за допомогою спеціального софту, або на Linux.

Однак, і в цьому випадку, хоч доступ до носія і збережеться, але він буде утруднений "гальмами" як при читанні, так і при записі даних. Тому при використанні накопичувачів об'ємом більше 32 ГБ краще відформатувати їх в інших файлових системах, як exFAT або NTFS.

NTFS

Якщо лінійка Windows 95/98 продовжувала традиції вже на той момент застарілої операційної системи DOS, то нова лінійка NT спочатку була спрямована інновації. Тому з появою Windows NT 3.1 у 1993 році спеціально під неї була створена нова файлова система NTFS(скор. англ. "New Technology File System" - "файлова система нової технології").

Ця файлова система досі є основною для всіх сучасних версій Windows, оскільки забезпечує непогану швидкість роботи, підтримує накопичувачі обсягом до 16 ЕіБ (ексбібайт - 260) (при максимальному розмірі кластера в 64 КБ) без обмежень за розмірами файлів і має у своєму арсеналі досить непоганий функціонал. Наприклад, NTFS є файловою системою, що журналюється, а також підтримує розподіл ролей користувачів для доступу до окремих даних, чого не було в тій же FAT32.

Як і в FAT32, основою NTFS є таблиця, але вона є більш досконалою базою даних і називається MFT(скор. англ. "Master File Table" - "головна файлова таблиця"). Рядки у цій таблиці відповідають файлам, що зберігаються на конкретному розділі, а стовпці містять атрибути цих файлів (дата створення, розмір, права доступу тощо).

Крім того, для підвищення стійкості до відмови в NTFS ведеться журнал USN(скор. англ. "Update Sequence Number" - досл. "Номер порядку оновлення"). Цей журнал, аналогічно таблиці FAT32, записуються дані про зміни того чи іншого файлу. Однак, якщо в таблиці FAT32 записувалося лише час останнього доступу до даних, що не давало жодних особливих практичних вигод, то USN може зберігатися попередній стан файлової системи, що дозволяє відновлювати його у разі збоїв.

Ще однією особливістю NTFS є підтримка альтернативних потоків даних(Англ. "Alternate Data Streams" - ADS). Спочатку вони були задумані для розмежування виконання різних процесів. Потім (у Windows 2000) використовувалися для зберігання деяких атрибутів файлів (ім'я автора, іконка тощо), аналогічно до того, як це робилося в HFS від MacOS. У сучасних Windows альтернативні потоки можуть зберігати будь-яку інформацію. Цим навіть користуються деякі віруси для приховування своєї присутності у системі.

Справа в тому, що альтернативні потоки не пеленгуються Провідником Windowsі, по суті, невидимі для користувачів та більшості програм. Однак, Ви можете їх переглядати і навіть користуватися ними, наприклад, для приховування будь-яких даних за допомогою спеціального програмного забезпечення. Дивитися дані в альтернативних потоках зручно за допомогою програми NTFS Stream Explorer, а використовувати їх для приховування файлів за допомогою Xp-lore:

З додаткових особливостей, які заслуговують на згадку для NTFS, є підтримка шифрування, стиснення даних, "м'яких" і "жорстких" посилань на файли (для папок такої можливості, на жаль, ні), дискових квот для різних користувачів системи, а також, природно, розмежування прав доступу до файлів.

NTFS спочатку була створена виключно для Windows, проте сьогодні підтримується більшістю медіаплеєрів (флешки можуть бути теж відформатовані в ній), операційними системами Linuxта MacOS (щоправда, з деякими обмеженнями на запис). Варто відзначити слабку підтримку NTFS на популярних ігрових консолях. З них підтримка її є лише Xbox One.

exFAT

Зі збільшенням у другій половині 2000-х років обсягів флеш-накопичувачів стало ясно, що файлова система FAT32, що повсюдно використовується, скоро вичерпає свій потенціал. Використовувати журнальну NTFS для флешок з їх обмеженою кількістю циклів перезапису та повільнішою роботою виявилося не зовсім доцільно. Тому в 2006 році все та ж корпорація Microsoft випустила у світ нову файлову систему exFAT(скор. англ. "Extended FAT" - "розширена FAT") у комплекті з операційною системою Windows Embedded CE 6.0:

Вона стала логічним продовженням розвитку FAT32, тому іноді її називають також FAT64. Головним козирем нової файлової системи стало зняття обмеження на розміри файлів та збільшення теоретичної межі для дискового розділу до 16 ЕіБ (як у NTFS). При цьому, через відсутність журналування, exFAT зберегла високу швидкість доступу до даних та компактність.

Ще однією перевагою exFAT стала можливість збільшення розміру кластера до 32 МБ, що дозволило оптимізувати зберігання великих файлів (наприклад, відео). Крім того, зберігання даних exFAT організовано таким чином, щоб максимально мінімізувати процеси фрагментації і перезапису одних і тих же кластерів. Все це зроблено, знову ж таки, для оптимізації роботи флеш-накопичувачів, для яких і була спочатку розроблена файлова система.

У силу того, що exFAT - відносно нова ФС, є деякі обмеження щодо її використання. У Windows повна її підтримка з'явилася лише Vista SP1 (хоча є оновлення для Windows XP SP2 - ). MacOS підтримує exFAT з версії 10.6.5, а для Linux потрібно встановлювати окремий драйвер (у деяких дистрибутивах він вбудований, а в деяких підтримується лише читання).

ext2, ext3 та ext4

Якщо в середовищі Windows вже не перше десятиліття "править бал" NTFS, то в таборі Linux традиційно панує дуже велика різноманітність, у тому числі серед застосовуваних файлових систем. Щоправда, є одна їхня лінійка, яка використовується більшістю дистрибутивів за замовчуванням. Це файлові системи сімейства ext(англ. скор. "Extended File System" - "розширена файлова система"), які з 1992 року спочатку створювалися саме під Linux.

Найбільшого поширення набула друга версія ext2, Яка, як і NTFS, з'явилася ще в 1993 році. Правда, на відміну від NTFS, ext2 не є файловою системою, що журналюється. Це одночасно її плюс, і мінус. Плюс у тому, що вона є однією із найшвидших ФС на запис даних. Також відсутність журналування робить переважним її використання на флеш-накопичувачах та SSD-дисках. Платою ж за швидкодію є низька стійкість до відмови.

З метою покращення стабільності ext2 у 2001 році була розроблена її покращена версія ext3. У ній з'явилося журналування, яке може працювати в трьох режимах: "writeback" (записуються тільки метадані файлової системи), "ordered" (запис у журнал проводиться завжди ПЕРЕД зміною ФС) та "journal" (повний бекап метаданих та змінюваних файлів).

В іншому особливих нововведень не з'явилося. Та й швидкість роботи, порівняно з попередньою версією, суттєво знизилася, тому вже у 2006 році з'явився прототип наступної стадії розвитку файлової системи ext4, остаточний реліз якої відбувся у 2008 році Четверта розширена файлова система зберегла журналування, але суттєво підвищила швидкість читання даних, яка стала навіть вищою, ніж у ext2!

З інших нововведень варто відзначити збільшення максимального обсягу розділу диска до 1 ЕіБ (з 32 Тіб в ext2 і ext3), збільшення максимального розміру файлу до 16 Тіб (з 2 Тіб в ранніх версіях) і поява механізму екстентів (від англ. "extent" - "простір"). Останній дозволяє звертатися не до одиночних блоків, як це реалізовано в інших ФС (і в ext3 зокрема), а до об'єднаних просторів диска з кластерів, що послідовно йдуть, загальним обсягом до 128 МБ, що істотно підвищує продуктивність і зменшує фрагментацію даних.

На сьогоднішній день підтримка файлових систем сімейства ext тієї чи іншої версії присутня за замовчуванням майже у всіх Linux". З них практично всі системи 2010 року випуску і старше підтримують ext4. Для доступу до ext-розділів у Windows і MacOS потрібно встановлювати спеціальне ПЗ та/або драйвери.

ReiserFS

Ще однією молодою та перспективною файловою системою "родом" зі світу Linux є ReiserFS. Стараннями команди американського розробника Ганса Райзера вона стала першою журнальною ФС, яка була додана в ядро ​​Linux версії 2.4.1 у 2001 році, якраз перед додаванням підтримки ext3.

Фактично, як і ext3, що з'явилася слідом за нею, ReiserFS дала можливість використовувати в Linux повне або часткове журналування. Проте, на відміну ext3, мала більший допустимий розмір файлу (до 8 ТіБ проти 2) і максимальну довжину імені файлу рівну 255 символам, а чи не байтам (4032 байт).

Також однією з особливостей ReiserFS, за яку вона полюбилася користувачам, стала можливість змінювати розмір розділу без його розмонтування. Подібної функції не було ext2, але пізніше вона з'явилася ext3, хоча ReiserFS в цьому плані теж була першою.

Незважаючи на низку переваг перед альтернативними файловими системами свого часу, ReiserFS також не була позбавлена ​​недоліків. До найбільш суттєвих з них варто віднести досить слабку стійкість до відмови при пошкодженні структури метаданих і неефективний алгоритм дефрагментації. Тому з 2004 року розпочалася робота з покращення файлової системи, яка стала відома під назвою Reiser4.

Щоправда, незважаючи на низку нововведень, покращень та виправлень, нова файлова система залишилася долею небагатьох ентузіастів. Справа в тому, що в 2006 році Ганс Райзер вбив власну дружину і був взятий під варту, а пізніше і ув'язнений. Відповідно, його компанія Namesys, яка займалася розробкою Reiser4, була розформована. З того часу підтримку та доопрацювання файлової системи здійснює група розробників під куруванням російського розробника Едуарда Шишкіна.

Зрештою, підтримка Reiser4 в ядро ​​Linux досі так і не додана, але ReiserFS є. Тому багато хто продовжує використовувати її в різних збірках як файлову систему за замовчуванням.

HFS

Говорячи про файлові системи, характерні для різних операційних систем, не можна не згадати про MacOS з її HFS(скор. англ. "Hierarchical File System" - "ієрархічна файлова система"). Перші версії даної системи з'явилися ще в 1985 разом з операційною системою Macintosh System 1.0:

За сучасними мірками дана файлова система була дуже малоефективною, тому в 1998 разом з MacOS 8.1 з'явилася її покращена версія під назвою HFS+або Mac OS Extended, що підтримується до сьогодні.

Як і попередниця, HFS+ ділить диск на блоки по 512 КБ (за замовчуванням), які об'єднує кластери, відповідальні за зберігання тих чи інших файлів. Однак, нова ФС має 32-бітну адресацію (замість 16-бітної). Це дозволяє уникнути обмежень на розмір файлу, що записується, і забезпечує підтримку максимального розміру тома до 8 ЕіБ (а в останніх ревізіях до 16 ЕіБ).

З інших переваг HFS+ слід відзначити журналування (під нього виділяється цілий прихований том під назвою HFSJ), а також багатопоточність. Причому, якщо у NTFS альтернативні потоки немає особливо точної регламентації на типи збереженої інформації, то HFS+ конкретно виділяється два потоку: потік даних (зберігає основні дані файлів) і потік із ресурсами (зберігає метадані файлів).

HFS+ практично ідеальна для традиційних HDD, проте, як і розглянута вище ReiserFS, має найефективніші алгоритми боротьби з фрагментацією даних. Тому з поширенням SSD-накопичувачів та впровадженням їх у техніку Apple все частіше на зміну їй приходить файлова система, розроблена у 2016 році APFS(скор. англ. "Apple File System" - "Файлова система Apple"), що з'явилася в настільній macOS High Sierra(10.13) та мобільної iOS 10.3.

Багато в чому APFS подібна до exFAT у плані оптимізації процесів читання/запису, проте, на відміну від неї, має журналування, підтримує розподіл прав доступу до даних, має покращені алгоритми шифрування та стиснення даних, а також може працювати з томами розміром аж до 9 ЙіБ (не смійтеся – "йобібайт") за рахунок 64-бітної адресації!

Єдиним мінусом APFS є те, що вона підтримується лише сучасною технікою Apple і поки що недоступна на інших платформах.

Порівняння файлових систем

Сьогодні ми розглянули багато різних популярних файлових систем, тому не завадило б звести всі дані про них у єдину таблицю:

Характеристики / ФС FAT32 NTFS exFAT ext2 ext4 ReiserFS HFS+ APFS
Рік впровадження 1996 1993 2008 1993 2006 2001 1998 2016
Сфера використання Windows, знімні накопичувачі, Linux знімні накопичувачі, Windows Vista+, Linux Linux, знімні накопичувачі Linux Linux MacOS MacOS
Максимальний розмір файлу 4 ГіБ 16 ЕіБ 16 ЕіБ 2 ТіБ 16 ТіБ 8 ТіБ 16 ЕіБ 9 ЙіБ
Максимальний розмір тому 8 ТіБ 16 ЕіБ 64 ЗіБ (зебібайт) 32 ТіБ 1 ЕіБ 16 ТіБ 16 ЕіБ 9 ЙіБ
Журналування - + - - + + + +
Управління правами доступу - + - - + + + +

Висновки

Як бачимо, для кожної операційної системи існує своя оптимальна файлова система, яка дозволяє ефективно працювати з даними. Наприклад, для Windows – це NTFS, для MacOS – HFS+ або APFS. Винятком із правила можна вважати лише численні дистрибутиви Linux. Тут є не один десяток файлових систем, кожна зі своїми перевагами та недоліками.

Більшості користувачів Windows варто запам'ятати лише три найбільш поширені ФС: FAT32 - для невеликих флешок і старого обладнання, NTFS - для більшості комп'ютерів і exFAT - для ємних флеш-накопичувачів і зовнішніх SSD-дисків (про актуальність форматування системного дискав exFAT досі сперечаються через відсутність журналування і більшу схильність до збоїв).

P.S. Дозволяється вільно копіювати та цитувати цю статтю за умови вказівки відкритого активного посилання на джерело та збереження авторства Руслана Тертишного.