Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Sam_R_OS.doc
Скачиваний:
2
Добавлен:
19.11.2019
Размер:
5.27 Mб
Скачать

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

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

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

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

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

Унікальне ім'я є числовим ідентифікатором і використовується програмами операційної системи.

Прикладом такого унікального імені файлу є номер індексного дескриптора в системі UNIX.

Типи файлів

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

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

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

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

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

• інформація про дозволений доступ;

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

• власник файлу;

• творець файлу;

• ознака "тільки для читання";

• ознака "схований файл";

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

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

• ознака "двоїчний / символічний";

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

• ознака блокування;

• довжина запису;

• показник ключового поля в записі;

• довжина ключа;

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

• поточний розмір файлу;

• максимальний розмір файлу.

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

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

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

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

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

Файли

Мал. 2.32. Логічна організація файлової системи

а - однорівнева;

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

в - ієрархічна (мережа)

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