Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Theme11.doc
Скачиваний:
8
Добавлен:
21.12.2018
Размер:
327.17 Кб
Скачать

Структура тому з файловою системою ntfs.

Розглянемо тепер структуру файлової системи NTFS. Ми тут зачепим тільки основні моменти. Одним з основних понять, використовуваних при роботі з NTFS, є поняття тому (volume). Можливо також створення відмовостійкого тому, що займає кілька розділів, тобто використання RAID-технології. Як і багато інших систем, NTFS поділяє весь корисний дисковий простір тому на кластери — блоки даних, адресуємі як одиниці даних. NTFS підтримує розміри кластерів від 512 байт до 64 Кбайт; стандартом же вважається кластер розміром 2 чи 4 Кбайт.

Весь дисковий простір у NTFS поділяється на дві нерівні частини (рис.12.1). Перші 12 % диска приділяються під так звану MFT-зону — простір, що може займати, збільшуючись у розмірі, головний службовий метафайл MFT(master file table — це спеціальний файл, головна системна структура даних, яка і дозволяє визначати місцезнаходження всіх інших файлів). Запис яких-небудь даних у цю область неможлива. МFТ-зона завжди тримається порожньою - це робиться для того, щоб самий головний, службовий файл (MFT) по можливості не фрагментувався при своєму росту. Інші 88 % тому являють собою звичайний простір для збереження файлів.

Рис. 12.1. Структура тому NTFS.

MFT (master file table, загальна таблиця файлів) являє собою централізований каталог всіх інших файлів диску, у тому числі і себе самого. MFT поділений на записи фіксованого розміру в 1 Кбайт, і кожен запис відповідає якому-небудь файлу (у загальному значенні цього слова). Перші 16 файлів носять службовий характер і недоступні операційній системі — вони називаються метафайлами, причому найперший метафайл — сам MFT. Ці перші 16 елементів MFT — єдина частина диска, що має строго фіксоване положення. Копія цих же 16 записів зберігається в середині тому для надійності, оскільки вони дуже важливі. Інші частини MFT-файлу можуть розташовуватися як і будь-який інший файл, у довільних місцях диску — відновити його положення можна за допомогою його самого, «зачепивши» за саму основу — за перший елемент MFT.

Згадані перші 16 файлів NTFS (метафайли) носять службовий характер кожний з них відповідає за який-небудь аспект роботи системи. Метафайли знаходяться в кореневому каталозі NTFS-тому. Усі вони починаються із символу імені «$», хоча одержати яку-небудь інформацію про них стандартними засобами складно. У табл.12.1 приведені основні відомі метафайли і їхнє призначення. Таким чином, можна довідатися, наприклад, скільки операційна система витрачає на каталогізацію тому, подивившись на розмір файлу $MFT.

Таблиця 12.1. Метафайли NTFS

Ім‘я метафайла

Призначення метафайла

$MFT

Сам Master File Table

$MFTmirr

Копія перших 16 записів MFT, яка розміщена посередині тому

$LogFile

Файл підтримки операцій журналювання

$Volume

Службова інформація — мітка тому, версія файлової системи і т. д.

$AttrDef

Список стандартних атрибутів файлів на томі

Кореневий каталог

$Bitmap

Карта вільного місця тому

$Boot

Завантажуючий сектор (якщо розділ завантажуючий)

$Quota

Файл, в якому записані права користувачів на використання дискового простору (цей файл почав працювати тільки в Windows 2000 з системою NTFS 5.0)

$Upcase

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

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

Файл у томі з NTFS ідентифікується так званим файловим посиланням (File Referens), яке представлене як 64-розрядне число. Файлове посилання складається з номера файлу, що відповідає позиції його файлового запису в MFT, і номера послідовності. Останній збільшується всякий раз, коли дана позиція MFT використовується повторно, що дозволяє файловій системі NTFS виконувати внутрішні перевірки цілісності.

Кожен файл у NTFS представлений за допомогою потоків (streams), тобто в нього немає «просто даних» як таких, а є «потоки». Для правильного розуміння досить вказати, що один з потоків і носить звичний нам зміст – дані файлу. Але більшість атрибутів файлу - це теж потоки. У такий спосіб виходить, що базова сутність у файлі тільки одна - номер у MFT, а все інше, включаючи і його потоки, - опційно. Даний підхід може ефективно використовуватися - наприклад, файлу можна «приліпити» ще один потік, записавши в нього будь-які дані. У Windows 2000 у такий спосіб записана інформація про автора і зміст файлу (одна з закладок у властивостях файлу, що переглядаються, наприклад, із провідника). Цікаво, що ці додаткові потоки не видні стандартними засобами роботи з файлами: розмір основного потоку, що спостерігається, що містить традиційні дані. Можна, приміром, мати файл нульової довжини, при стиранні якого звільниться 1 Гбайт вільного місця - просто тому, що яка-небудь хитра програма чи технологія «приліпила» до нього додатковий потік (альтернативні дані) такого великого розміру. Але насправді в даний час потоки практично не використовуються, так що побоюватися подібних ситуацій не потрібно, хоча гіпотетично вони можливі. Просто необхідно мати на увазі, що файл у NTFS — це більш глибоке поняття, чим можна собі представити, переглядаючи каталоги диска.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]