Файлова система. Що це? Навіщо комп'ютеру потрібна файлова система – основні типи Що таке файлова система 3 поняття

Жарознижувальні засоби для дітей призначаються педіатром. Але бувають ситуації невідкладної допомоги при пропасниці, коли дитині потрібно дати ліки негайно. Тоді батьки беруть на себе відповідальність і застосовують жарознижувальні препарати. Що можна давати дітям грудного віку? Чим можна збити температуру у старших дітей? Які ліки найбезпечніші?

Знімний диск повинен використовувати FAT32 для кращої сумісності, але якщо Ви плануєте зберігати великі файли - то форматуйте в NTFS. Mac форматує диски до стандарту HFS+, який не працює з Windows. У Linux також є свої файлові системи.

Чому їх так багато?

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

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

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

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

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

Чому так багато файлових систем

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

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

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

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

Кожен розділ має файлову систему. Іноді ви можете конвертувати файлову систему розділу, але це рідко можливо. Натомість, ймовірно, Вам доведеться спочатку скопіювати важливі дані з розділу.

Операційні системи автоматично форматують розділи у відповідну файлову систему в процесі встановлення. Якщо у вас є розділ у форматі Windows, на який ви хочете встановити Linux, у процесі установки Linuxвідформатує розділ NTFS або FAT32 у файлову систему Linux, кращу для вашого дистрибутива Linux.

Таким чином, якщо у вас є пристрій для зберігання даних і ви хочете використовувати іншу файлову систему, просто скопіюйте файли з нього, щоб створити їх резервну копію . Потім скористайтесь інструментом Управління дискамиу Windows, gpartedв Linux або дисковою утилітоюу Mac OS.

Огляд поширених файлових систем

Ось короткий огляд деяких із найпоширеніших файлових систем, з якими ви зіткнетеся. Він не є вичерпним – існує багато інших файлових систем для спеціальних завдань:

  • FAT32: є однією з найстаріших файлових систем Windows, але він все ще використовується на знімних носіях- Невеликих за обсягом. Великі зовнішні жорсткі диски об'ємом 1 ТБ або більше будуть у будь-якому випадку відформатовані за допомогою NTFS. FAT32 має сенс використовувати тільки з невеликими пристроямизберігання або сумісності з іншими пристроями, такими як цифрові камери, ігрові консолі, приставки та інші пристрої, які підтримують лише FAT32, але NTFS.
  • NTFS: сучасна версія файлової системи Windows– використовується, починаючи з Windows XP. Зовнішні диски можна відформатувати за допомогою FAT32 або NTFS.
  • HFS+: Mac використовує HFS+ для своїх внутрішніх розділів, їй же форматує зовнішні диски – для зовнішнього використання жорсткого дисказ Time Machine потрібно, щоб атрибути файлової системи можна було додавати в резервну копію. Маки також можуть читати та записувати файли у файлові системи FAT32, але Вам знадобиться інше програмне забезпеченнядля запису файлових систем NTFS з Mac.
  • Ext2 / Ext3/Ext4: Ви часто будете бачити файлові системи ext2, ext3 і ext4 в Linux. Ext2 є старішою файловою системою, і вона не має важливих функцій, таких як ведення журналу – якщо живлення гасне або комп'ютер аварійно завершує роботу під час запису на диск ext2 дані можуть бути втрачені. Ext3 додає ці характеристики робастності за рахунок деякої швидкості. Ext4 є більш сучасним та швидким варіантом – це файлова система використовується за замовчуванням на більшості дистрибутивів Linux. Windows та Mac не підтримують ці файлові системи – вам знадобиться сторонній інструмент для доступу до файлів у таких файлових системах. Разом з тим, Linux може читати та записувати як у FAT32, так і в NTFS.
  • Btrfs: це нова файлова система Linux, яка все ще перебуває в розробці. На даний момент він не стандартний для більшості дистрибутивів Linux, але, ймовірно, одного разу замінить Ext4. Мета полягає в тому, щоб надати додаткові функціїякі дозволяють Linux масштабувати до великих обсягів зберігання.
  • Swap: у Linux файлова система "swap", насправді, не є файловою системою. Розділ, відформатований як "swap", може бути використаний як простір підкачки операційної системи - як файл підкачки Windows, але вимагає спеціальний розділ.

Існують і інші файлові системи, особливо в Linux та інших Unix-подібних системах.

Типовий користувач комп'ютера не повинен знати більшу частину цього матеріалу – але знання основ допоможе Вам зрозуміти такі питання, як: «Чому цей диск у форматі Mac не працює з моїм ПК на Windows?» і «чи повинен я відформатувати цей жорсткий диск USB як FAT32 чи NTFS?».

Доброго часу доби шановний користувач, у цій статті йтиметься про таку тему, як файли. А саме ми розглянемо: Керування файлами, типи файлів, файлова структура, атрибути файлу.

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

Однією з основних завдань ОС є надання зручностей користувачеві під час роботи з даними, що зберігаються на дисках. Для цього ОС підміняє фізичну структуру даних, що зберігаються, деякою зручною для користувача логічною моделлю, яка реалізується у вигляді дерева каталогів, що виводиться на екран такими утилітами, як Norton Commander, Far Manager або Windows Explorer. Базовим елементом цієї моделі є файл, який так само, як і файлова системазагалом, може характеризуватись як логічною, так і фізичною структурою.

Керування файлами

Файл- Іменована область зовнішньої пам'яті, призначена для зчитування та запису даних.

Файли зберігаються у пам'яті, яка залежить від енергоживлення. Винятком є ​​електронний диск, коли у ВП створюється структура, що імітує файлову систему.

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

Файлова система включає:Файлова система включає:

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

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

  • Найменування файлів.
  • Програмний інтерфейс для програм.
  • Відображення логічної моделі ФС на фізичну організацію сховища даних.
  • Стійкість ФС до збоїв харчування, помилок апаратних та програмних засобів.

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

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

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

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

Терміни "файлова система" і "система управління файлами" необхідно розрізняти: файлова система визначає, перш за все, принципи доступу до даних, організованих як файли. А термін «система управління файлами» слід використовувати стосовно конкретної реалізації файлової системи, тобто. це комплекс програмних модулів, які забезпечують роботу з файлами у конкретній ОС.

приклад

Файлова система FAT (file allocation table) має безліч реалізацій як система керування файлами

  • Система, розроблена для перших ПК називалася просто FAT (зараз її називають просто FAT-12). Її розробляли для роботи з дискетами і деякий час вона використовувалася для роботи з жорсткими дисками.
  • Потім її вдосконалили для роботи з жорсткими дисками більшого обсягу, і ця нова реалізація отримала назву FAT-16. ця назва використовується і по відношенню до СУФ самої MS-DOS.
  • Реалізація СУФ для OS/2 називається super-FAT (основна відмінність – можливість підтримувати для кожного файлу розширені атрибути).
  • Є версія СУФ для Windows 9x/NT тощо. (FAT-32).

Типи файлів

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

Звичайні файли можуть бути двох типів:

  1. Програмні(виконуються) – являють собою програми, написані командною мовою ОС, і виконують деякі системні функції (мають розширення.exe, .com, .bat).
  2. Файли даних- всі інші типи файлів: текстові та графічні документи, електронні таблиці, бази даних та ін.

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

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

приклад. Copy con text1 (робота із клавіатурою).

Файлова структура

Файлова структура- Вся сукупність файлів на диску та взаємозв'язків між ними (порядок зберігання файлів на диску).

Види файлових структур:

  • проста, або однорівнева: каталог є лінійною послідовністю файлів.
  • ієрархічнаабо багаторівнева: каталог сам може входити до складу іншого каталогу і містити в собі безліч файлів та підкаталогів. Ієрархічна структура може бути двох видів: «Дерево» та «Мережа». Каталоги утворюють "Дерево", якщо файлу дозволено входити лише до одного каталогу (ОС MS-DOS, Windows) і "Мережа" - якщо файл може входити відразу кілька каталогів (UNIX).
  • Файлова структура може бути представлена ​​у вигляді графа, що описує ієрархію каталогів та файлів:



Типи імен файлів

Файли ідентифікуються іменами. Користувачі дають файлам символьні імена, при цьому враховуються обмеження ОС як на символи, що використовуються, так і на довжину імені. У ранніх файлових системах ці межі були дуже вузькими. Так у популярній файловій системі FATдовжина імен обмежується відомою схемою 8.3 (8 символів – власне ім'я, 3 символи – розширення імені), а в ОС UNIX System V ім'я не може містити більше 14 символів.

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

Наприклад, Windows NT у своїй файлової системі NTFS встановлює, що ім'я файлу може містити до 255 символів, крім завершального нульового символа.

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

Символьні імена можуть бути трьох типів: прості, складові та відносні:

  1. Просте ім'яідентифікує файл у межах одного каталогу, надається файлам з урахуванням номенклатури символу та довжини імені.
  2. Повне ім'яявляє собою ланцюжок простих символьних імен всіх каталогів, через які проходить шлях від кореня до файлу, імені диска, імені файлу. Таким чином, повне ім'яє складовим, В якому прості імена відокремлені один від одного прийнятим в ОС роздільником.
  3. Файл може бути ідентифікований також відносним ім'ям. Відносне ім'я файлу визначається поняттям «поточний каталог». У кожний момент часу один із каталогів є поточним, причому цей каталог вибирається самим користувачем за командою ОС. Файлова система фіксує ім'я поточного каталогу, щоб потім використовувати його як додаток до відносних імен для створення повного імені файлу.

У деревоподібній файловій структурі між файлом та його повним ім'ям є взаємно однозначна відповідність - "один файл - одне повне ім'я". У мережній файловій структурі файл може входити до декількох каталогів, а отже може мати кілька повних імен; тут справедливо відповідність - "один файл - багато повних імен".

Для файлу 2.doc визначити всі три типи імені, за умови, що поточним каталогом є каталог 2008 року.

  • Просте ім'я: 2.doc
  • Повне ім'я: C:\2008_рік\Документи\2.doc
  • Відносне ім'я: Документи\2.doc

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

Важливою характеристикою є атрибути. Атрибути- Це інформація, що описує властивості файлів. Приклади можливих атрибутів файлів:

  • Ознака "тільки для читання" (Read-Only);
  • Ознака "прихований файл" (Hidden);
  • Ознака "системний файл" (System);
  • Ознака "архівний файл" (Archive);
  • тип файлу (звичайний файл, каталог, спеціальний файл);
  • Власник файлу;
  • Автор файлу;
  • Пароль доступу до файлу;
  • Інформація про дозволені операції доступу до файлу;
  • Час створення, останнього доступу та останньої зміни;
  • Поточний розмір файлу;
  • Максимальний розмір файлу;
  • Ознака «тимчасова (видалити після завершення процесу)»;
  • Ознака блокування.

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

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

Права доступу до файлу

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

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

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

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

Файлова система дозволяє систематизувати програми та дані та організувати впорядковане управління цими об'єктами.

На операційні системи персональних комп'ютерівнаклала глибокий відбиток концепція файлової системи, що лежить в основі ОС Unix. У ОС Unix підсистема введення-виводу уніфікує спосіб доступу як до файлів, і до периферійним пристроям. Під файлом при цьому розуміють набір даних на диску, терміналі або іншому пристрої.

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

Файлова система - Це система управління даними.

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

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

Файлова система (призначення):

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

Файлова структура

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

Використовується деревоподібна структура каталогів дерево каталогів. Запозичена у Unix. Ієрархічна структура - Структура системи, частини (компоненти) якої пов'язані відносинами включення або підпорядкування.

Ієрархічна структура зображується орієнтованим деревом, у якому вершини відповідають компонентам, а дуги – зв'язкам.

дерево каталогів диска G

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

Дерева використовуються при описі та проектуванні ієрархічних структур.

Корінь – початкова позиція, листя – заключна позиція.

Розділи

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

Розділ- Область диска. Під логічним диском (розділом)в комп'ютері розуміється будь-який носій інформації, з яким операційна система працює як із єдиним цілим об'єктом.

Ім'я диска- Позначення логічного диска; запис у кореневому каталозі.

Логічні диски (розділи) позначаються латинськими літерами A, B, C, D, E, … (32 літери від A до Z).

Літери A, B зарезервовані для позначення дискет.

С – жорсткий диск, зазвичай із якого виробляється завантаження ОС.

Інші літери – логічні диски, компакт-диски тощо. Максимальна кількість логічних дисків для Windows – нескінченна.

У таблиці розділів вказується розташування початку та кінця цього розділу та число секторів у цьому розділі (місце та розмір).

Файлова структура логічного диска

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

Елементи файлової структури:

    стартовий сектор (Початкового завантаження, Boot-сектор);

    таблиця розміщенняфайлів (FAT - File Allocation Table);

    кореневий каталог (Root Directory);

    область даних (що залишилося вільним дисковий простір).

Boot-сектор

Boot-сектор - Перший (початковий) сектор диска. Знаходиться на 0 стороні, 0 доріжці.

Boot-сектор містить службову інформацію:

    розмір кластера диска (кластер – блок, який об'єднує у групу кілька секторів скорочення розміру FAT-таблиці);

    місце розташування FAT-таблиці (у вoot-секторі знаходиться покажчик на те, де розташована FAT-таблиця);

    розмір FAT-таблиці;

    кількість FAT-таблиць (завжди є як мінімум 2 копії таблиці для забезпечення надійності та безпеки, тому що руйнування FAT веде до втрати інформації та важко відновлюється);

    адреса початку кореневої директорії та її максимальний розмір.

У вoot-секторі знаходиться блок початкового завантаження (завантажувач) - завантажувальний запис Boot Record.

Завантажувач - обслуговуюча програма, яка поміщає програму, що виконується, в оперативну пам'ять і приводить її в стан готовності до виконання.

FAT (таблиця розміщення файлів)

FAT (File Allocation Table) – таблиця розміщення файлів. У ній визначено, які ділянки диска відносяться до кожного файлу. Область даних диска представлена ​​в ОС як послідовність кластерів.

FAT- Це масив елементів, що адресують кластери області даних диска. Кожному кластеру області даних відповідає один елемент FAT. Елементи FAT служать як ланцюжок посилань на кластери файлу області даних.

Структура таблиці розміщення файлів:

FAT складається з елементів довжиною 16/32/64 біта. Усього в таблиці може бути до 65520 таких елементів, кожен з них (крім перших двох) відповідає кластеру диска. Кластер є одиницею, у якій розподіляється простір у області даних на диску для файлів і каталогів. Перші два елементи таблиці (з номерами 0 і 1) зарезервовані, кожен із інших елементів таблиці визначає стан кластера диска з тим самим номером. Елемент може вказувати, що кластер вільний, що дефектний кластер, що кластер належить файлу і є останнім кластером у файлі. Якщо кластер належить файлу і не є його останнім кластером, елемент таблиці містить номер наступного кластера в цьому файлі.

FAT- Вкрай важливий елемент файлової структури. Порушення FAT можуть призвести до повної або часткової втрати інформації на всьому логічному диску. Саме тому на диску зберігається дві копії FAT. Існують спеціальні програми, які контролюють стан FAT та виправляють порушення.

Для різних ОС необхідні різні версії FAT

Windows 95 FAT 16, FAT 32

Windows NT (XP) NTFS

Novell Netware TurboFAT

UNIX NFS, ReiserFS

Логічна структура носія інформації

ВСТУП

Нині найпоширенішими є персональні комп'ютери (ПК) з урахуванням процесора Pentium. На більшості цих ПК встановлюється операційна система (ОС) Windows 95 або Windows 98 (Windows 9x або Windows). Windows фактично є стандартом для 32-розрядних персональних комп'ютерів. Наразі розроблено вже кілька версій системи.

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

Відмінними рисами сучасних операційних систем, зокрема Windows 9x, є:

Розвинений інтерфейс користувача, тобто засоби і методи взаємодії з користувачем;

Багатозадачність – здатність забезпечувати виконання кількох програм «одночасно»;

використання всіх можливостей, що надаються сучасними мікропроцесорами;

Стійкість у роботі та захищеність.

Windows 9x є наступницею та результатом злиття двох систем Windows 3.1x та MS-DOS. Розробникам довелося прийняти низку компромісів для забезпечення її сумісності із названими системами:

Windows 9x починає функціонування реальному режимі, і лише потім перетворюється на захищений режим;

В основі Windows 9x лежить оновлена ​​MS-DOS;

У Windows 9x є достатня кількість 16-розрядних компонентів (модулів та драйверів пристроїв).

В основі Windows 9x лежить об'єктно-орієнтований підхід. Об'єктами є документи, додатки, папки, файли, ярлики, диски тощо. Відкриття об'єкту-Одне з основних понять в системі. Дія, що виконуються при цьому, залежать від різновиду об'єкта:

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

- Відкриття програми- запуск їх у роботу;

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

- відкриття пристрою введення – виводудозволяє потрапити в середовище диспетчера, що забезпечує керування цим пристроєм;

- Відкриття ярликау багатьох випадках рівносильне відкриттю того об'єкта, для якого він створений.

Під час обробки документа можна використовувати як процедурний, і об'єктно-орієнтований підхід. У першому випадку необхідно знати, якою програмою слід обробляти документ. В іншому випадку при подвійному клацанні на документі або створеному для нього ярлику запускається проасоційований з ним додаток. Якщо Windows «не знає», який додаток має обробляти даний документ, запропонує зв'язати документ із певним додатком.


КОМПОНЕНТИ ФАЙЛОВОЇ СИСТЕМИ

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

Файл- це названа сукупність однорідної інформації на зовнішньому носії (наприклад, на магнітному диску).

У імені файлу(ОС Windows 9x) можуть використовуватися майже всі символи, що друкуються, але є ряд обмежень:

На початку та в кінці імені файлу не може бути пробілів (їх можна задати, але вони ігноруватимуться);

Ім'я файлу не може починатися з точки і нею закінчуватись;

У імені файлу не можна застосовувати такі символи: /, \, :, ?, '',<, >, |, оскільки вони зарезервовані інших цілей;

Довжина імені файлу не повинна перевищувати (загалом) 255 символів.

Такі імена називаються довгими.Наприклад, Лабораторна робота №1 з дисципліни операційної системи.

Для кожного файлу Windows 9x автоматично генерує короткийім'я, яке формується, виходячи з вимог ОС MS-DOS, та використовується для забезпечення сумісності операційних систем. Він містить не більше 8 символів. Крім символів, заборонених у довгих іменах, не допускається використовувати символи;, +, [, ], =, «точка», «кома», «пробіл». Коротке ім'я починається, як і довге, далі слідує символ ~ і порядковий номер (всього не більше 8 символів). При цьому заборонені символи опускаються, малі літери перекодуються в великі. Наприклад, PRIMER~1 може відповідати довгому імені файлу, що починається буквами Primer. Якщо є ще такий файл, його коротке ім'я буде PRIMER~2.

Забороненими є імена, зарезервовані для пристроїв введення-виведення: PRN (принтер), CON (консоль, тобто клавіатура та монітор), NUL (фіктивний пристрій), LPT1 – LPT3 (перший – третій паралельний порт), COM1 – COM3 ( перший – третій послідовний порт. Символами латинського алфавіту A:, B:, C:, D: і т.д. називаються зовнішні запам'ятовуючі устрою.

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

ВАТ для командних файлів;

DOC для файлів, які містять різні документи у форматі редактора Microsoft Word;

PAS для програм, написаних мовою PASCAL; -

PCX для файлів з ілюстрацією у форматі растрового графічного редактора Publishers Paintbrush;

ВАК для файлів з попередньою версієюдокумента (резервні файли);

ЕХЕ для файлів, з готовою до виконання програмою

СОМ для файлів, з готовою до виконання програмою лише серед MS-DOS.

В даний час для програм, готових до виконання під керуванням операційної системи, використовують термін додаток(application), наприклад, Windows - програма

Приклад файлу: COMMAND.COM, COMMAND – ім'я файлу, СОМ – розширення.

Окрім довгого та короткого імен з кожним файлом пов'язується ряд властивостей. До числа властивостей файліввідносяться:

атрибути файлу;

Дата та час її створення;

Дата та час модифікації файлу;

Дата останнього доступу до файлу (читання або запису);

Довжина або розмір файлу (в байтах).

Атрибути файлувизначають способи його використання та права доступу до нього. У Windows 9x атрибути грають скоріше інформаційну роль, ніж захисну, як серед MS-DOS. Файлу може бути приписана будь-яка комбінація з наведених нижче атрибутів:

Read-Only [R] (Тільки читання) – встановлює захист файлу від запису, файл не може бути видалений, переміщений або змінений без спеціальних заходів;

Archive [A] (Архівний) - встановлює для файлу архівний статус, встановлюється автоматично під час створення чи модифікації файлу, знімається засобами архівування чи резервування;

Hidden [H] (Прихований) - приховані файли, якщо не вжити спеціальних заходів, у папках не відображаються.

System [S] (Системний) – атрибут, яким надаються системні файли.

З кожним файлом у середовищі Windows 9x зв'язується піктограма, яка відповідає типу файлу. Піктограма- Це маленька ілюстрація, що допомагає швидко ідентифікувати об'єкт, з яким вона пов'язана.

Часто для позначення декількох файлів або для скорочення запису імен файлів використовується шаблон імені файлу. Шаблономімені є ім'я, в якому використовуються символи – замінники"*" та "?". Позиція, де стоїть знак "?" може містити будь-який символ. "*" означає, що ту позицію, в якій стоїть "*", і всі наступні можуть займати будь-які символи.

*.ТХТ - всі файли типу ТХТ;

А?.* - всі файли, імена яких починаються з літери А і складаються з однієї або двох літер.

1.2. Папки (каталоги)

У міру зростання завдань число файлів на диску сильно зростає і, навіть за вміло підібраних імен файлів, стає складно стежити за порядком на диску і орієнтуватися у файлах. Група файлів на одному носії, що об'єднуються за будь-яким критерієм, може зберігатися в папці(Folders). У MS-DOS використовувалося поняття каталогабо директорій(Directory). Аналогія між папками та каталогами не є повною. Кожен каталог можна вважати папкою, але не кожній папці відповідає каталог на диску, а якщо і відповідає, то він може знаходитися в іншому місці файлової структури. Якщо в папці (каталогу) зберігається ім'я файлу, то кажуть, що цей файл знаходиться у цьому каталозі. Кожна папка у Windows 9x має піктограму та ім'я також як і файл (але, як правило, без розширення).

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

Якщо одна папка безпосередньо міститься в іншій, то перша називається дочірньою (підкаталог), а друга – батьківською (надкаталог) стосовно першої папки. У MS-DOS для позначення батьківського каталогу використається символ "..".

MS-DOS підтримує концепцію поточного накопичувачаі поточних каталогів. Спочатку поточним є накопичувач, з якого проводилося завантаження системи, і відповідно каталог. Каталог, з яким у теперішній моментпрацює користувач, що називається поточним. Так само визначається поточний накопичувач. Поточний каталог поточного диска називається робітникам. Windows також підтримує цю концепцію, але трохи інакше. Наприклад, зміна робочої папки в програмах відбувається неявно – при відкритті та збереженні документів.

Приклад фрагмента файлової структури на диску наведено на рис. 1.


Мал. 1

На рис.1 каталог Documents зареєстрований у каталозі My folder, тому кажуть, що Documents – підкаталог My folder, а My folder – надкаталог, або батьківський каталог, для Documents.

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

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

[диск:][повний_маршрут\]ім'я.тип.

У квадратних лапках позначаються необов'язкові параметри.

Якщо у повному імені використовуються символи, неприпустимі для коротких імен (у середовищі MS-DOS), специфікацію необхідно укладати у лапки.

Приклад повного імені файлу: A: PROGRAM PASCAL LAB.PAS.

Наприклад, до файлу DEMO.EXE, що знаходиться в підкаталозі PROGRAM, можна звертатися:

DEMO.EXE, якщо поточний каталог PROGRAM;

PROGRAM\DEMO.EXE, якщо поточний каталог кореневий;

-..\demo.exe, якщо поточний каталог PASCAL.

1.3. Ярлики

Засобами Windows 9x забезпечується на дисках створення ще одного компонента файлової системи – ярликів. Ярлик(shortcut) є файл, що містить покажчик (посилання) на деякий об'єкт у дереві ресурсів – інший файл, папку або периферійний пристрій. (Файлові структури всіх доступних дисків, а також деякі пристрої введення – виводу об'єднуються в дерево ресурсів.) Одному об'єкту може відповідати кілька ярликів, що у різних папках. При видаленні ярлика знищується лише посилання на об'єкт, який ніяк не змінюється. При подвійному клацанні на ярлику документа буде неявно запущено програму, яка пов'язана з цим документом, а сам документ завантажений до нього для обробки. Найчастіше ярлики розміщують на робочому столі, щоб полегшити доступ до об'єктів, що постійно використовуються. Називається ярлик за тими самими правилами, як і файл, але йому приписується стандартне розширення LNK (від LiNK-зв'язок). Піктограма ярлика збігається з піктограмою об'єкта, для якого ярлик створено, але має загнуту стрілку в нижньому лівому кутку.

Якщо ярлик створюється для MS-DOS або командного файлу, то замість ярлика формується файл з розширенням PIF. Цей файл у середовищі Windows 95 може розглядатися як ярлик спеціального виду, що посилається виконуваний файл для середовища MS-DOS.

1.4. Робочий стіл

Після завантаження Windows 9x на екрані монітора відображається Робочий стіл(Desktop), (як вважається) найбільша папка. Робочий стіл і сам є об'єктом системи, але на відміну від об'єктів, що знаходяться на ньому, він не може бути перенесений або скопійований в жодний з них. На робочому столі допускаються розміщувати будь-які об'єкти з дерева ресурсів, зазвичай на ньому знаходяться лише стандартні (системні) папки та ярлики для тих об'єктів, доступ до яких здійснюється найчастіше.

Стандартна (системна) папка– це папка, що створюється та обслуговується Windows. Наведемо деякі з стандартних папок, розміщених на робочому столі:

Папка Мій комп'ютер (My computer) – це спосіб комп'ютера і дозволяє отримати доступ до його ресурсів. Отримавши доступ до деякого об'єкта, можна з ним потрібні операції або змінити його властивості;

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

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

Контрольні питання:

1. Що таке файл, ім'я та розширення файлу, шаблон?

2. Які файли називаються виконуваними?

3. Що таке папка (каталог), підкаталог, кореневий та батьківський каталог?

4. Які папки є стандартними?

5. Дати визначення специфікації або повного імені файлу.

6. Що таке ярлик?


КОМАНДИ MS-DOS

Запуск команд здійснюється з командного рядка після отримання запрошення на роботу або з командного файлу. Запрошення видається, коли ОС готова до роботи.

Формат команд MS-DOS:

команда [Параметри] .

Параметри від команди відокремлюються пробілами. Якщо користувач не включає жодних параметрів та ключів у команди, система передбачає їх значення за промовчанням. Ключ /? Видає довідку про команду. Перервати виконання команди або програми можна натисканням клавіш ; призупинити виведення інформації на екран - , продовжити - натисканням будь-якої клавіші.

Існують два типи команд MS-DOS: вбудовані (внутрішні) та завантажувані (зовнішні). Вбудованікоманди - найпростіші, що найчастіше вживаються, є складовоюкомандного процесора сommand.com та в каталозі не відображаються. (Наприклад, DIR, COPY, DEL та інші.) завантаженимкомандам відносяться решта команд, що постійно зберігаються у файлах на диску (наприклад, FORMAT). Перш ніж запустити на виконання ці команди, необхідно переконатися в їх наявності на диску. Розглянемо деякі команди MS-DOS.

3.1 Для зміни поточного дисководу треба набрати ім'я дисковода, який має стати поточним, потім символ ":".

Наприклад,

команда здійснює перехід із диска A: на диск С:.

3.2 Зміна поточного каталогу

CD (CHDIR) [дисковод:] шлях

Наприклад,

CD PROGRAM - перехід у підкаталог PROGRAM;

CD.. - перехід до батьківського каталогу.

3.3 Виведення файлу на екран.

TYPE [дисковод:][маршрут\]ім'я.тип.

Наприклад,

TYPE \PROGRAM\PASCAL\lab.txt;

TYPE AUTOEXEC.BAT.

2.4 Видалення файлу або групи файлів

DEL [дисковод:][маршрут\]ім'я.тип.

Ця команда дозволяє використовувати шаблон.

Наприклад,

DEL*.* – видалення всіх файлів поточного каталогу.

2.5 Перегляд каталогу

DIR [дисковод:][маршрут\][ім'я.тип] .

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

2.6 Створення підкаталогу

MD (MKDIR) [дисковод:] шлях

2.7 Видалення підкаталогу

RD (RMDIR) [дисковод:] шлях

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

2.8 Перейменування файлів

REN[диск:][ маршрут\]старе_ім'я нове_ім'я.

Ця команда дозволяє змінити ім'я файлу без зміни вмісту. Команда дозволяє використовувати шаблон.

2.9 Очищення екрану

2.10 Виведення версії операційної системи

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

2.11 Встановлення поточного часу

TIME [чч:mm:cc:дд]

Цією командою встановлюється поточний час під час завантаження MS-DOS або будь-який інший момент роботи на машині. При запуску команди без параметрів видається поточний час і запитується новий, натиснувши клавішу , можна погодитись з поточним часом.

2.12 Встановлення поточної дати

DATE [мм:дд:гг]

Команда встановлює поточну датуаналогічно команді TIME щодо встановлення поточного часу.

2.13 Перегляд дерева підкаталогів

За цією командою на екрані дисплея виводиться логічний список всіх підкаталогів на активному диску. При додаванні ключа F можна отримати список файлів, які містяться в цих підкаталогах.

2.14 Копіювання окремих файлів

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

COPY [диск:][маршрут\]ісф[диск:][ маршрут \][інф] ,

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

При використанні команди COPY для обміну інформацією між периферійними пристроями замість імен файлів підставляють у команду спеціальні імена CON, PRN, NIL та ін., які мають такі значення:

CON – консоль: клавіатура для введення даних, відеодисплей для виведення результатів та контролю діалогу;

PRN – основний принтер, пов'язаний з вашою системою;

NUL -псевдопристрій (неіснуючий) для тестування програм.

Команда COPY дозволяє об'єднати кілька файлів одним знаком "+". При такому поєднанні (конкатенації) вихідні файли не змінюються, а в новий файлбудуть записані поточний час та дата.

1) COPY PASCAL*.PAS B: ,

відбувається копіювання всіх файлів з типом PAS з підкаталогу PASCAL на диск:

2) COPY FILE.EXT PRN ,

виведення файлу FILE.EXT на друк.

3) COPY CON FILE.EXT ,

введення даних із клавіатури у файл FILE.EXT, при цьому кінець файлу породжує комбінація клавіш (Створення файлу в MS-DOS).

4) COPY FILE1.EXT+FILE2.EXT+FILE3.EXT BOOK.EXT ,

об'єднання кількох файлів в один BOOK.EXT.

2.15 Захист файлів від запису

ATTRIB [+R | -R] [+A | -A] [ диск:][маршрут\]ім'я_файлу.

R – встановлює захист файлу від запису;

R – скасовує захист файлу від запису;

A – встановлює для файлу архівний статус;

A – скасовує для файлу архівний статус;

ATTRIB +R FILE.EXT - не можна записувати інформацію у цей файл;

ATTRIB FILE.EXT - робиться запит про можливість запису даних у FILE.EXT. Відповідь операційної системи:

R_A:\FILE.EXT , тобто. файл недоступний для запису.

2.16. Переадресація даних:

> - Переадресувати вихідні дані. Дані, які завжди відображаються на екрані, перенаправляються на периферійний пристрій або дисковий файл. В останньому випадку файл створюється за необхідності. Якщо файл існує, старі дані заміщаються на нові.

TYPE FILE.TXT > PRN

ECHO Завтра збори групи > PRN

>> - вихідні дані також перенаправляються, але якщо файл вже існує, дані додаються до старих даних.

< - переадресовать входные данные. Данные будут приниматься не с клавиатуры, а с периферийного устройства или из дискового файла.

PROGRAM< FILE.TXT

Примітка: Програма, результати якої ми хочемо переадресувати, має використовувати стандартні функції вводу/виводу.

2.17. Організація конвеєрів.

Можна вибудувати команди або програми в ланцюжок так, що виведення на екран першої з них буде використано як введення з клавіатури наступного A1|A2|A3.

ECHO Y | DEL *.* >NUL – автоматично відповість Y (Так) на запит «Ви впевнені…» при видаленні всіх елементів каталогу.

Відбувається за (конвеєром) | передача даних із однієї програми до іншої. Набагато ефективніше використання | (конвеєра) з командами фільтрами та переадресації.

2.18.Фільтри FIND, MORE, SORT.

а) Пошук зазначених даних у дисковому файлі(Номер телефону, адреса, будь-яка фраза):

FIND “фраза” [шлях\] ім'я файлу,

де / C – лічильник виявлення, тобто. скільки разів виявлено фразу, а самі рядки не виводяться;

/N – виводиться ще й номер рядка (крім самого рядка);

/V – виводяться всі рядки, які містять цю фразу.

FIND "група" FILE.TXT - виводиться рядок з файлу, що містить слово "група".

DIR | FIND /V “COM” – виводяться на екран усі файли, крім файлів із розширенням COM.

FIND “car” AB.DAT, B.DAT, C.DAT – витрати на автомобіль.

б) Посторінковий висновок на екран

MORE< FILE.TXT

TYPE FILE.EXT | MORE

в) Сортування даних.

SORT (за замовчуванням сортування по 1 символу за алфавітом в порядок зростання),

де /R - сортування за спаданням;

/+n – починаючи з колонки n, у рядку відбуватиметься сортування.

введення інформації з клавіатури, Ù Z – ознака кінця інформації, що вводиться.

Це бажано записати до файлу, тобто. SORT< CON >FILE.TXT.

DIR | SORT – відсортовані елементи каталогу на ім'я файлів (каталогів).

DIR | SORT /+10 > FILE.EXT -

Список файлів буде впорядкований за розширеннями (WINDOWS 9X).

Чому смартфон може не запускати програми з картки пам'яті? Чим ext4 принципово відрізняється від ext3? Чому флешка проживе довше, якщо відформатувати її у NTFS, а не у FAT? У чому проблема F2FS? Відповіді криються особливостях будови файлових систем. Про них ми й поговоримо.

Вступ

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

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

Збільшити термін безвідмовної експлуатації допомагають такі властивості сучасних файлових систем, як відкладений запис, дедуплікація та інші просунуті алгоритми. Особливо актуальні вони для дешевих SSD із чіпами пам'яті TLC, флешок та карток пам'яті.

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

Чорний ящик

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

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

На мобільних гаджетах з Android найчастіше зустрічається ext4 у внутрішній пам'яті та FAT32 на картках microSD. Яблучникам же зовсім не різниці, що у них за файлова система: HFS+, HFSX, APFS, WTFS... для них існують тільки красиві значки папок і файлів, намальовані кращими дизайнерами. Найбагатший вибір у лінуксоїдів, але прикрутити підтримку нерідних для операційної системи файлових систем можна і в Windows, і в macOS - про це трохи пізніше.

Загальне коріння

Різних файлових систем створено понад сотню, але актуальними можна назвати трохи більше десятка. Хоча всі вони розроблялися для своїх специфічних застосувань, багато хто виявився спорідненим на концептуальному рівні. Вони схожі, оскільки використовують однотипну структуру уявлення (мета)даних - B-дерева («бі-дерева»).

Як і будь-яка ієрархічна система, B-дерево починається з кореневого запису і далі розгалужується аж до кінцевих елементів - окремих записів про файли та їх атрибути, або «листя». Основний сенс створення такої логічної структури був у тому, щоб прискорити пошук об'єктів файлової системи на великих динамічних масивах – начебто жорстких дисківобсягом у кілька терабайт або ще більш значних RAID-масивів.

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

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

Концепція B-дерев була сформульована ще в сімдесятих роках і відтоді зазнавала різних поліпшень. У тому чи іншому вигляді вона реалізована в NTFS, BFS, XFS, JFS, ReiserFS та безлічі СУБД. Усі вони – родичі з погляду базових принципів організації даних. Відмінності стосуються деталей, часто досить важливих. Недолік у родинних файлових систем теж загальний: усі вони створювалися для роботи саме з дисками ще до появи SSD.

Флеш-пам'ять як двигун прогресу

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

Пов'язане це обмеження з тим, що в NAND-пам'яті всі осередки об'єднані в блоки, кожен з яких має лише одне загальне підключення до шини, що управляє. Не будемо вдаватися до деталей сторінкової організації та розписувати повну ієрархію. Важливим є сам принцип групових операцій із осередками і те що, що розміри блоків флеш-пам'яті зазвичай більше, ніж блоки, адресовані будь-який файлової системі. Тому всі адреси та команди для накопичувачів із NAND flash треба транслювати через шар абстрагування FTL (Flash Translation Layer).

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

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

Такий підхід нагадує армійські будні: щоб наказати одному солдатові, сержант робить загальну побудову, викликає бідолаху з ладу і командує іншим розійтися. У рідкісній нині NOR-пам'яті організація була спецназівська: кожен осередок управлявся незалежно (кожний транзистор мав індивідуальний контакт).

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

Модулі з однорівневими осередками SLC мали заявлений ресурс у 100 тисяч циклів перезапису та навіть більше. Багато хто з них досі працює у старих флешках та картках CF. У MLC корпоративного класу (eMLC) ресурс заявлявся в межах від 10 до 20 тисяч, тоді як у звичайної MLC споживчого рівня він оцінюється в 3-5 тисяч. Пам'ять цього типу активно витісняє ще дешевша TLC, у якої ресурс ледве дотягує до тисячі циклів. Утримувати термін життя флеш-пам'яті на прийнятному рівні доводиться за рахунок програмних хитрощів, і нові файлові системи стають одним із них.

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

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

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

Від JFFS до F2FS

Однією з перших спроб написати файлову систему, яка враховувала б принципи організації флеш-пам'яті, була JFFS - Journaling Flash File System. Спочатку ця розробка шведської фірми Axis Communications була орієнтована підвищення ефективності пам'яті мережевих пристроїв, які Axis випускала в дев'яностих. Перша версія JFFS підтримувала лише NOR-пам'ять, але вже у другій версії потоваришувала з NAND.

Наразі JFFS2 має обмежене застосування. В основному вона так само використовується в дистрибутивах Linux для вбудованих систем. Її можна знайти в маршрутизаторах, IP-камерах, NAS та інших завсідниках інтернету речей. Загалом скрізь, де потрібно невеликий обсяг надійної пам'яті.

Подальшою спробою розвитку JFFS2 стала LogFS, у якої індексні дескриптори зберігалися окремому файлі. Автори цієї ідеї – співробітник німецького підрозділу IBM Йорн Енгель та викладач Оснабрюкського університету Роберт Мертенс. Вихідний код LogFS викладено на GitHub. Судячи з того, що остання зміна в ньому було зроблено чотири роки тому, LogFS так і не набула популярності.

Проте ці спроби спонукали появу іншої спеціалізованої файлової системи - F2FS. Її розробили в корпорації Samsung, частку якої припадає чимала частина виробленої у світі флеш-пам'яті. У Samsung роблять чіпи NAND Flash для власних пристроїв та на замовлення інших компаній, а також розробляють SSD із принципово новими інтерфейсами замість успадкованих дискових. Створення спеціалізованої файлової системи з оптимізацією для флеш-пам'яті було з погляду Samsung давно назрілою необхідністю.

Чотири роки тому, у 2012 році, у Samsung створили F2FS (Flash Friendly File System). Її ідея хороша, але реалізація виявилася вологою. Ключове завдання під час створення F2FS було просте: знизити кількість операцій перезапису осередків і розподілити навантаження ними максимально рівномірно. Для цього потрібно виконувати операції з кількома осередками в межах того самого блоку одночасно, а не ґвалтувати їх по одній. Значить, потрібна не миттєва перезапис наявних блоків на перший запит ОС, а кешування команд і даних, дозапис нових блоків вільне місце і відкладене стирання осередків.

Сьогодні підтримка F2FS вже офіційно реалізована в Linux (а значить, і в Android), але особливих переваг практично вона поки не дає. Основна особливість цієї файлової системи (відкладений перезапис) призвела до передчасних висновків щодо її ефективності. Старий трюк із кешуванням навіть обдурював ранні версії бенчмарків, де F2FS демонструвала уявну перевагу не на кілька відсотків (як очікувалося) і навіть не в рази, а на порядки. Просто драйвер F2FS рапортував про виконання операції, яку контролер тільки-но планував зробити. Втім, якщо реальний приріст продуктивності у F2FS і невеликий, то знос осередків виразно буде меншим, ніж при використанні тієї ж ext4. Ті оптимізації, які зможе зробити дешевий контролер, будуть виконані лише на рівні самої файлової системи.

Екстенти та бітові карти

Поки що F2FS сприймається як екзотика для гіків. Навіть у своїх смартфонах Samsung все ще застосовується ext4. Багато хто вважає її подальшим розвитком ext3 але це не зовсім так. Йдеться швидше про революцію, ніж про подолання бар'єру в 2 Тбайт на файл та просте збільшення інших кількісних показників.

Коли комп'ютери були більшими, а файли - маленькими, адресація не була складною. Кожному файлу виділялася кількість блоків, адреси яких заносилися в таблицю відповідності. Так працювала і файлова система ext3, що залишається в строю досі. А ось у ext4 з'явився принципово інший спосіб адресації – екстенти.

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

Змінився в ext4 і сам механізм запису. Тепер розподіл блоків відбувається за один запит. І не заздалегідь, а перед записом даних на диск. Відкладений багатоблочний розподіл дозволяє позбутися зайвих операцій, якими грішила ext3: в ній блоки для нового файлу виділялися відразу, навіть якщо він повністю вміщався в кеші і планувався видалити як тимчасовий.


Дієта з обмеженням FAT

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

Загадка

Відгадай загадку: о дванадцятій вона почала повніти, до шістнадцяти була дурною товстушкою, а до тридцяти двох стала жирною, так і залишившись простушкою. Хто вона?

Правильно, це історія про файлову систему FAT. Вимоги сумісності забезпечили їй погану спадковість. На дискетах вона була 12-розрядною, на жорстких дисках – спочатку 16-бітною, а до наших днів дійшла вже як 32-розрядна. У кожній наступній версії збільшувалася кількість адресованих блоків, але в суті нічого не змінювалося.

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

Навіщо FAT32 потрібна в наші дні? Так само виключно для забезпечення сумісності. Виробники справедливо вважають, що розділ FAT32 зможе прочитати будь-яка ОС. Тому саме його вони створюють на зовнішніх жорстких дисках, USB Flash та картах пам'яті.

Як звільнити флеш-пам'ять смартфона

Картки microSD(HC), які використовуються у смартфонах, за замовчуванням відформатовані у FAT32. Це основна перешкода для встановлення на них програм та перенесення даних із внутрішньої пам'яті. Щоб його подолати, потрібно створити на картці розділ ext3 або ext4. На нього можна перенести всі файлові атрибути (включаючи власника та права доступу), тому будь-яка програма зможе працювати так, ніби запустилася з внутрішньої пам'яті.

Windows не вміє робити на флешках більше одного розділу, але для цього можна запустити Linux (хоча б у віртуалці) або просунуту утиліту для роботи з логічною розміткою – наприклад, MiniTool Partition Wizard Free. Виявивши на картці додатковий первинний розділ з ext3/ext4, додаток Link2SD та аналогічні йому запропонують значно більше варіантів, ніж у випадку з одним розділом FAT32.


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

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

INFO

Для FAT32 та NTFS теоретичні обмеження за рівнем вкладеності не вказані, але на практиці вони однакові: у каталозі першого рівня можна створити лише 7707 підкаталогів. Любителі пограти в матрьошки оцінять.

Інша проблема, з якою стикається більшість користувачів - на розділ з FAT32 неможливо записати файл більше 4 Гбайт. Причина полягає в тому, що в FAT32 розмір файлу описується 32 бітами в таблиці розміщення файлів, а 2^32 (мінус одиниця, якщо бути точним) дають чотири гіга. Виходить, що на флешку не можна записати ні фільм в нормальній якості, ні образ DVD.

Копіювання великих файлів ще півбіди: при спробі зробити це помилка хоча б видно відразу. В інших ситуаціях FAT32 виступає у ролі бомби уповільненої дії. Наприклад, ти скопіював на флешку портейбл-софт і спочатку користуєшся ним без проблем. Через тривалий час одна з програм (припустимо, бухгалтерської чи поштової) база даних роздмухується, і... вона просто перестає оновлюватися. Файл не може бути перезаписаний, оскільки досяг ліміту 4 Гбайт.

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

exFAT

На відміну від FAT12/16/32, exFAT розроблялася спеціально для USB Flash та карт пам'яті великого (≥32 Гбайт) об'єму. Extended FAT усуває згаданий вище недолік FAT32 - перезаписування тих самих секторів при будь-якій зміні. Як у 64-розрядної системи, вона не має практично значних лімітів на розмір одного файлу. Теоретично він може мати довжину 264 байт (16 Ебайт), а картки такого обсягу з'являться нескоро.

Ще одна важлива відмінність exFAT - підтримка списків контролю доступу (ACL). Це вже не та простушка з дев'яностих, проте впровадженню exFAT заважає закритість формату. Підтримка exFAT повноцінно та легально реалізована лише у Windows (починаючи з XP SP2) та OS X (починаючи з 10.6.5). У Linux і *BSD вона підтримується або з обмеженнями, або не цілком легально. Microsoft вимагає ліцензувати використання exFAT, і в цій галузі багато правових суперечок.

Btrfs

Ще один яскравий представник файлових систем на основі B-дерев називається Btrfs. Ця ФС з'явилася в 2007 році і спочатку створювалася в Oracle з прицілом на роботу з SSD та RAID. Наприклад, її можна динамічно масштабувати: створювати нові індексні дескриптори прямо у працюючій системі або розділяти том на підтому без виділення їм вільного місця.

Реалізований у Btrfs механізм копіювання під час запису та повна інтеграція з модулем ядра Device mapper дозволяють робити практично миттєві снапшоти через віртуальні блокові пристрої. Попереднє стиснення даних (zlib або lzo) і дедуплікація прискорюють основні операції, заодно продовжуючи життя флеш-пам'яті. Особливо це помітно при роботі з базами даних (досягається стиснення в 2-4 рази) і дрібними файлами (вони записуються впорядковано великими блоками і можуть зберігатися безпосередньо в листі).

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

Бортові журнали

Практично всі більш-менш сучасні файлові системи (ext3/ext4, NTFS, HFSX, Btrfs та інші) відносять до загальної групи журналів, оскільки вони ведуть облік змін, що вносяться в окремому лозі (журналі) і звіряються з ним у разі збою при виконанні дискових операцій . Однак ступінь подробиці ведення журналів і стійкість до відмови у цих файлових систем різні.

Еxt3 підтримує три режими ведення журналу: зі зворотним зв'язком, упорядкований та повне журналування. Перший режим передбачає запис лише загальних змін (метаданих), що виконується асинхронно стосовно змін самих даних. У другому режимі виконується той самий запис метаданих, але перед внесенням будь-яких змін. Третій режим еквівалентний повному журналу (змін як метаданих, і у самих файлах).

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

Журналування в NTFS схоже на другий режим ведення лога ext3. У журнал записуються лише зміни метаданих, а самі дані у разі збою можуть бути втрачені. Такий метод ведення журналу в NTFS замислювався не як спосіб досягнення максимальної надійності, а лише як компроміс між швидкодією та стійкістю до відмови. Саме тому люди, які звикли до роботи з системами, що повністю журналюються, вважають NTFS псевдожурнальованою.

Реалізований в NTFS підхід у чомусь навіть краще використовуваного за умовчанням ext3. У NTFS додатково періодично створюються контрольні точки, які гарантують виконання всіх відкладених раніше дискових операцій. Контрольні точки не мають нічого спільного з точками відновлення в System Volume Infromation . Це просто службові записи у лозі.

Практика показує, що такого часткового журналування NTFS здебільшого вистачає для безпроблемної роботи. Адже навіть за різкого відключення живлення дискові пристрої не знеструмлюються миттєво. Блок живлення та численні конденсатори в самих накопичувачах забезпечують саме той мінімальний запас енергії, якого вистачає на завершення поточної операції запису. Сучасним SSD за їх швидкодії та економічності такої кількості енергії зазвичай вистачає і виконання відкладених операцій. Спроба перейти на повне журналування знизила б швидкість більшості операцій у рази.

Підключаємо сторонні ФС у Windows

Використання файлових систем лімітовано їх підтримкою лише на рівні ОС. Наприклад, Windows не розуміє ext2/3/4 та HFS+, а використовувати їх часом треба. Зробити це можна, додавши відповідний драйвер.

WARNING

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

Відкритий драйвер для читання та запису на розділи ext2/3 з частковою підтримкою ext4. У останньої версіїпідтримуються екстенти та розділи об'ємом до 16 Тбайт. Не підтримуються LVM, списки контролю доступу та розширені атрибути.


Існує безкоштовний плагін для Total Commander. Підтримує читання розділів ext2/3/4.


coLinux - відкритий та безкоштовний порт ядра Linux. Разом з 32-бітним драйвером він дозволяє запускати Linux серед Windows з 2000 по 7 без використання технологій віртуалізації. Підтримує лише 32-бітові версії. Розробку 64-бітової модифікації було скасовано. coLinux дозволяє в тому числі організувати з Windows доступ до розділів ext2/3/4. Підтримку проекту призупинено у 2014 році.

Можливо, у Windows 10 вже є вбудована підтримка характерних для Linux файлових систем, просто вона прихована. На ці думки наводить драйвер рівня ядра Lxcore.sys та сервіс LxssManager, який завантажується як бібліотека процесом Svchost.exe. Докладніше про це дивись у доповіді Алекса Іонеску «Ядро Лінукс, приховане всередині Windows 10», з яким він виступив на Black Hat 2016.


ExtFS for Windows – платний драйвер, що випускається компанією Paragon. Він працює у Windows з 7 по 10, підтримує доступ до томів ext2/3/4 у режимі читання та запису. Забезпечує майже повну підтримку ext4 у Windows.

HFS+ for Windows 10 – ще один пропрієтарний драйвер виробництва Paragon Software. Незважаючи на назву, працює у всіх версіях Windowsпочинаючи з XP. Надає повний доступ до файлових систем HFS+/HFSX на дисках із будь-якою розміткою (MBR/GPT).

WinBtrfs – рання розробка драйвера Btrfs для Windows. Вже у версії 0.6 підтримує доступ до томів Btrfs як читання, і запис. Вміє обробляти жорсткі та символьні посилання, підтримує альтернативні потоки даних, ACL, два види компресії та режим асинхронного читання/запису. Поки WinBtrfs не може використовувати mkfs.btrfs, btrfs-balance та інші утиліти для обслуговування цієї файлової системи.

Можливості та обмеження файлових систем: зведена таблиця

Фай-ла-ва система-ма Мак-си-маль-ний розмір тома Граничний розмір одного файлу Довжина власного імені файлу Довжина повного імені файлу (включаючи шлях від кореня) По-ділове число файлів та/або каталогів Точність ука-за-ня дати файлу/ката-ло-га Права доступу Жорсткі посилання Сім-вільні посилання Мгно-венні знімки (snap-shots) Стиснення даних у фоні Шиф-ро-ва-ня даних у фоні Діду-плі-ка-ція дан-них
FAT16 2 ГБ секторами по 512 байт або 4 ГБ кластерами по 64 КБ 2 ГБ 255 байт з LFN - - - - - - - - - -
FAT32 8 ТБ секторами по 2 КБ 4 ГБ (2 ^ 32 - 1 байт) 255 байт з LFN до 32 підкаталогів із CDS 65460 10 мс (створення) / 2 с (зміна) ні ні ні ні ні ні ні
exFAT ≈ 128 ПБ (2^32-1 кластерів по 2^25-1 байт) теоретично / 512 ТБ через сторонні обмеження 16 ЕБ (2 ^ 64 - 1 байт) 2796202 у каталозі 10 мс ACL ні ні ні ні ні ні
NTFS 256 ТБ кластерами з 64 КБ або 16 ТБ кластерами з 4 КБ 16 ТБ (Win 7) / 256 ТБ (Win 8) 255 символів Unicode (UTF-16) 32760 символів Unicode, але не більше 255 символів у кожному елементі 2^32-1 100 нс ACL так так так так так так
HFS+ 8 ЕБ (2^63 байт) 8 ЕБ 255 символів Unicode (UTF-16) окремо не обмежується 2^32-1 1 с Unix, ACL так так ні так так ні
APFS 8 ЕБ (2^63 байт) 8 ЕБ 255 символів Unicode (UTF-16) окремо не обмежується 2^63 1 нс Unix, ACL так так так так так так
Ext3 32 ТБ (теоретично) / 16 ТБ кластерами по 4 КБ (через обмеження утиліт e2fs programs) 2 ТБ (теоретично) / 16 ГБ у старих програм 255 символів Unicode (UTF-16) окремо не обмежується - 1 с Unix, ACL так так ні ні ні ні
Ext4 1 ЕБ (теоретично) / 16 ТБ кластерами по 4 КБ (через обмеження утиліт e2fs programs) 16 ТБ 255 символів Unicode (UTF-16) окремо не обмежується 4 млрд. 1 нс POSIX так так ні ні так ні
F2FS 16 ТБ 3,94 ТБ 255 байт окремо не обмежується - 1 нс POSIX, ACL так так ні ні так ні
BTRFS 16 ЕБ (2 ^ 64 - 1 байт) 16 ЕБ 255 символів ASCII 2^17 байт - 1 нс POSIX, ACL так так так так так так
Підтримайте проект - поділіться посиланням, дякую!
Читайте також
Як встановити безкоштовний антивірус аваст Як встановити безкоштовний антивірус аваст Як очистити комп'ютер від вірусів самостійно Як очистити комп'ютер від вірусів самостійно Як повністю очистити комп'ютер від вірусів Як повністю очистити комп'ютер від вірусів