Реферат Файлові системи

Страница 1 из 4 | Следующая страница

>Балашовский інститут (філія) Саратовського державного університету їм. Н.В. Чернишевського

Курсова робота виконав студент 142 групиЕфанов О.П.

Балашов 2010

Запровадження

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

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

Еволюція файлової системи була пов'язана з розвитком технологійреляционних баз даних.Файловая система використовувала останні досягнення, розроблені до застосування вСУБД: механізми транзакцій, захисту даних, систему самовідновлення внаслідок збою.

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

За 20 літню історію файлова система пройшла цей шлях від простий системи, взяла він функцій управління файлами, до системи, що є повноціннуСУБД, що має вбудованим механізмом протоколювання і відновлення даних.

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

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

1. Поняття файлів

1.1 Імена і типи файлів

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

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

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

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

Типи файлів. Файли бувають різних типів: звичайні файли, спеціальні файли, файли-каталоги.

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

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

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

У різних файлових системах можна використовувати як атрибутів різні характеристики, наприклад:

інформацію про дозволеній доступі,

пароль для доступу до файлу,

власник файла,

творець файла,

ознака "лише читання",

ознака "прихований файл",

ознака "системний файл",

ознака "архівний файл",

ознака ">двоичний/символьний",

ознака "тимчасовий" (видалити після завершення процесу),

ознака блокування,

довжина записи,

покажчик на ключове полі записи,

довжина ключа,

часи створення, останнього доступу й останнього зміни,

поточний розмір файла,

максимальна величина файла.

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

Ієрархія каталогів то, можливо деревом чи мережею. Каталоги утворюють дерево, якщо файлу дозволено входити лише у один каталог, й густа сіть - якщо файл може входити відразу на кілька каталогів. У MS-DOS каталоги

Малюнок. 1 Структура каталогів: а - структура записи каталогу MS-DOS (32 байта);

б - структура записи каталогу ОС UNIX

Малюнок 2 Логічний організація файловій системи

а - однорівнева; б - ієрархічна (дерево); в - ієрархічна (мережу)

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

1.2 Логічний організація файла

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

Малюнок 3 Способи логічного організації файлів

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

організація).

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

1.3 Фізична організація та адресу файла

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

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

Малюнок 4 Фізична організація файла

а - безупинне розміщення; б - пов'язаний список блоків;

в - пов'язаний список індексів; р - перелік номерів блоків

Популярним способом, що використовуються, наприклад, в файлової системіFAT ОС MS-DOS, є використання пов'язаного списку індексів. Із кожним блоком пов'язується певний елемент - індекс. Індекси містяться у окремої області диска (в MS-DOS це таблицяFAT). Якщо певний блок розподілено деякому файлу, то індекс цього блоку містить номер наступного блоку даного файла. Під час такої фізичної організації збережено всі гідності попереднього способу, але знімаються ці обидві нестачі: по-перше, для доступу допроизвольному місцеві файла досить прочитати лише блок індексів, відрахувати потрібну кількість блоків файла ланцюжком і побачити номер потрібного блоку, і, по-друге, дані файла займають блок повністю, отже мають обсяг, рівний ступеня двійки.

На закінчення розглянемо завдання фізичного розташування файла шляхом простого перерахування номерів блоків, займаних цим файлом. ОС UNIX використовує варіант даного способу, дозволяє забезпечити фіксовану довжину адреси, незалежно від розміру файла. Для зберігання адреси файла виділено 13 полів. Якщо розмір файла менше, або дорівнює 10 блокам, то номери цих блоків безпосередньо перераховані у перших десяти полях адреси. Якщо розмір файла більше 10 блоків, то таке 11-те полі містить адресу блоку, у якому можуть лежати ще 128 номерів наступних блоків файла. Якщо файл більше, ніж 10+128 блоків, то використовується 12-те полі яку повергнута номер блоку, що містить 128 номерів блоків, які містять по 128 номерів блоків даного файла. І, нарешті, якщо файл більше 10+128+128(128, то використовується останнє 13-те полі для потрійний непрямої адресації, що дозволяє поставити адресу файла, має розмір максимум 10+ 128 + 128(128 + 128(128(128.

>2.Общие поняття файловій системи

>2.1Общая модель файловою системи

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

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

Малюнок 5 Загальна модель файлової системи

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

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

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

Страница 1 из 4 | Следующая страница

Схожі реферати:

Навігація