69311

Організація інформації у файловій системі

Лекция

Информатика, кибернетика и программирование

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

Украинкский

2014-10-03

61.5 KB

0 чел.

Лекція № 15

Тема: Організація інформації у файловій системі

План

  1.  Розділи
  2.  Каталоги
  3.  Зв'язок розділів та структури каталогів

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

Розділи

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

Розділ (partition) — частина фізичного дискового простору, що призначена для розміщення на ній структури однієї файлової системи і з логічної точки зору розглядається як єдине ціле.

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

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

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

Каталоги

Розділи є основою організації великих обсягів дискового простору для розгортання файлових систем. Для організації файлів у рамках розділу зі встановленою файловою системою було запропоновано поняття файлового каталогу (file directory) або просто каталогу.

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

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

Деревоподібна структура каталогів

Базовою ідеєю організації даних за допомогою каталогів є те, що вони можуть містити інші каталоги. Вкладені каталоги називають підкаталогами (subdirectories). Таким чином формують дерево каталогів. Перший каталог, створений у файловій системі, встановленій у розділі (корінь дерева каталогів), називають кореневим каталогом (root directory).

Поняття шляху

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

Для файла, розташованого всередині каталогу недостатньо його імені для однозначного визначення, де він перебуває, - в іншому каталозі може бути файл із тим самим ім'ям. Тепер для визначення місцезнаходження файла потрібно додавати до його імені список каталогів, де він перебуває. Такий список називають шляхом (path). Каталоги у шляху перераховують зліва направо — від меншої глибини вкладеності до більшої. Роздільник каталогів у шляху відрізняється для різних систем: в UNIX прийнято використовувати прямий слеш «/», а у Windows-системах - зворотний «\».

Абсолютний і відносний шляхи

Є два шляхи до файла: абсолютний і відносний. Абсолютний (або повний) повністю й однозначно визначає місце розташування файла. Такий шлях обов'язково має містити кореневий каталог. Ось приклад абсолютного шляху для UNIX-систем: /usr/local/bin/myfile.

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

Відносний — шлях, відлічуваний від деякого місця в ієрархії каталогів. Щоб його організувати, потрібно визначитися із точкою відліку, для чого використовують поняття поточного каталогу. Такий каталог задають для кожного процесу, і він може бути змінений у будь-який момент командою cd або системним викликом chdi г(). Відносний шлях може відлічуватися від поточного каталогу і звичайно кореневий каталог не включає. Прикладом відносного шляху до файла /usr/ local /bin/myfile (за умови, що поточним каталогом є /usr/local) буде bin/myfile, а в ситуації, коли поточним є каталог файла (/usr/local/bin), відносним шляхом буде просто ім'я файла: myfile.

Для спрощення побудови відносного шляху кожний каталог містить два спеціальні елементи:

♦  «.», що посилається на поточний каталог; 4-  «..», що посилається на каталог рівнем вище.

З урахуванням цих елементів можуть бути задані такі відносні шляхи, як ../../bin/myfile (за умови, що поточний каталог - /usr/local/lib/mylib) або ./myfile (вказує на елемент у поточному каталозі).

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

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

Зв'язок розділів і структури каталогів

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

Єдине дерево каталогів. Монтування файлових систем

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

Стандартну організацію каталогів UNIX зображують у вигляді дерева з одним коренем — кореневим каталогом, який позначають «/». Файлову систему, на якій перебуває кореневий каталог, називають завантажувальною або кореневою. У більшості реалізацій вона має містити файл із ядром ОС.

Додаткові файлові системи об'єднуються із кореневою за допомогою операції монтування (mount). Під час монтування вибраний каталог однієї файлової системи стає кореневим каталогом іншої. Каталог, призначений для монтування файлової системи, називають точкою монтування (mount point). Весь вміст файлової системи, приєднаної за допомогою монтування, виглядає для користувачів системи як набір підкаталогів точки монтування.

Розглянемо операцію монтування на прикладі (рис. 11.1).

У цьому разі на диску є два розділи. На кожному з них встановлена файлова система (типи файлових систем можуть бути різними — це не є обмеженням; у каталозі системи одного типу можна змонтувати систему іншого типу за умови, що цей тип підтримує ОС). На рисунку точкою монтування ми вибрали каталог /usr першої файлової системи. Для користувача системи практично не помітно, що насправді каталог / і каталог /usr відповідають різним файловим системам. Відмінності можуть виявлятися, наприклад, під час спроби перенесення файла: виконання звичайної операції перенесення (mv у UNIX) між файловими системами не дозволяється.

Розглянемо деякі наслідки застосування єдиного каталогу для організації файлової системи.

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

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

Адміністрування системи спрощується. Наприклад, якщо додамо ще один диск і захочемо перенести на нього каталог /home, достатньо буде виконати кілька простих дій: відформатувати цей диск, задавши на ньому один розділ; змонтувати цей розділ у довільному місці; перенести на нього каталог /home (стерши весь його вміст на вихідному диску); заново змонтувати цей розділ у каталозі /home кореневої файлової системи.

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

Літерні позначення розділів

Другий підхід, що в основному поширений в лініях Consumer Windows і Windows ХР, припускає, що кожний розділ зі встановленою файловою системою є видимим для користувача і позначений буквою латинського алфавіту. Такий розділ звичайно називають томом. Позначення томів нам знайомі - це С, D: тощо. Особливості такої реалізації наведені нижче.

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

Структура логічних розділів видима для користувача.

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

У разі необхідності додавання або вилучення дискового пристрою у системах лінії Consumer Windows користувач не може впливати на те, які літери система присвоює розділам (фактично це залежить від порядку підключення апаратних пристроїв); у системах лінії Windows XP користувач може вільно змінювати літерні позначення під час роботи системи.

Зазначимо, що нині в ОС лінії Windows XP реалізована підтримка монтування (для файлової системи NTFS), що вирішує більшість перелічених проблем. Ця підтримка вперше з'явилась у Windows 2000 [70].

Питання для самоконтролю:

  1.  Поняття розділу.
  2.  Поняття каталогу.
  3.  Деревоподібна структура каталогів.
  4.  Поняття шляху.
  5.  Абсолютний і відносний шлях.
  6.  Єдине дерево каталогів.
  7.  Монтування файлової системи.
  8.  Літерні позначення розділів.
  9.  Особливості літерного позначення розділів.


 

А также другие работы, которые могут Вас заинтересовать

52087. Крізь пекло афганської війни 72.5 KB
  Ознайомити учнів з трагічною сторінкою нашої історії, виховувати повагу до учасників військових подій в Афганістані, розповісти про односельчан, що служили в Афганістані, віддати данину пам'яті полеглим воїнам-афганцям
52088. Їх долі обпалені війною 67 KB
  Ми повинні памятати тих хто її пережив тих хто не дожив не доспівав не до кохав. Память загиблих вшановуємо хвилиною мовчання. Афганська війна Не наша вина Ми молодість там залишили Щоб ви пам’ятали й жили. Скільки років щасливої тиші Та вривається голос в ефір Що благає нагадує кличе: Захистіть збережіть люди мирКожен день кожен час пам'ятайтеСкільки жертв нам війна принесла.
52090. Кліматичні пояси й області Африки 126 KB
  Обладнання: підручники фізична карта Африки кліматична карта Африки атласи тести ілюстрації різнокольорові картки таблиця памятка. Із собою в дорогу ми візьмемо: фізичну карту Африки кліматичну карту світу атласи ілюстрації пейзажу Африки. В екваторіальній області Африки опадів випадає: а багато; б мало.
52091. Африка 57.5 KB
  ФГП материка. Открытие и исследование материка. Фронтальный опрос на знание номенклатуры карты по теме ФГП материка. Индивидуальный опрос: а План изучения материка.
52092. Африка 69.5 KB
  Проблемный вопрос Почему в природе трех материков – Африки Австралии и Южной Америки много общего Ответ: Потому что все эти материки являются частью единого материка – Гондвана. Какой материал мы будем изучать первым вы узнаете если отгадаете загадку: Этот материк по площади в 3 с лишним раза больше другого и почти такой же по площади как два других материка Какой это материк Ответ: Африка так как по площади он в 3 с лишним раза больше Австралии и почти такой же по площади как Южная Америка и Антарктида вместе взятые. Проблемный...
52093. Африка. Фізико-географічне положення. Історія відкриття й дослідження материка 51 KB
  Вивчення нового матеріалу Відкриття та дослідження Африки Час дослідження Дослідники Результати досліджень ІІІ тис. Експедиція під керівництвом португальця Бартоломеу Діама Здійснила плавання вздовж західних берегів Африки до м. Експедиція під керівництвом португальця Васко да Гама На шляху до Індії дісталася південних берегів Африки. Африки.