На головну

Директорії. ЛОГИЧЕСКАЯ СТРУКТУРА файлові архіви

  1.  B) соціально-стратификационная структура
  2.  I. Структура сталей.
  3.  I. До-предметна структура імені
  4.  I. ДО-ПРЕДМЕТНА СТРУКТУРА ІМЕНІ 1 сторінка
  5.  I. ДО-ПРЕДМЕТНА СТРУКТУРА ІМЕНІ 2 сторінка
  6.  I. ДО-ПРЕДМЕТНА СТРУКТУРА ІМЕНІ 3 сторінка
  7.  I. ДО-ПРЕДМЕТНА СТРУКТУРА ІМЕНІ 4 сторінка

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

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

кожен каталог містить список каталогів і / або файлів, Що містяться в даному каталозі. Каталоги мають один і той же внутрішній формат, де кожному файлу відповідає одна запис в файлі директорії (Див., Наприклад, рис. 2.3).

число директорій залежить від системи. У ранніх ОС була тільки одна коренева директорія, Потім з'явилися директорії для користувачів (по одній директорії на користувача). У сучасних ОС використовується довільна структура дерева директорій.


Мал. 2.3. Директорії

Таким чином, файли на диску утворюють ієрархічну деревоподібну структуру (див. рис. 2.4).


Мал. 2.4. Деревоподібна структура файлової системи

Існує кілька еквівалентних способів зображення дерева. Структура перевернутого дерева, наведеного на рис. 2.4, найбільш поширена. Верхню вершину називають коренем. Якщо елемент дерева не може мати нащадків, він називається термінальної вершиною або листом (в даному випадку є файлом). Нелістовие вершини - довідники або каталоги містять списки листових і нелістових вершин. Шлях від кореня до файлу однозначно визначає файл.

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

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

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

Тобто повне ім'я включає ланцюжок імен - шлях до файлу, Наприклад / usr / games / doom. Такі імена унікальні. Компоненти шляху поділяють різними символами: "/" (слеш) в Unix або зворотними слешем в MS-DOS (в Multics - ">"). Таким чином, використання деревовидних каталогів мінімізує складність призначення унікальних імен.

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

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

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

Розглянемо для прикладу шлях /usr/linux/progr.c. Алгоритм однаковий для всіх ієрархічних систем. Спочатку в фіксованому місці на диску знаходиться коренева директорія. Потім знаходиться компонент шляху usr, т. Е. В кореневій директорії шукається файл / Usr. досліджуючи цей файл, Система розуміє, що даний файл є каталогом, І блоки його даних розглядає як список файлів і шукає наступний компонент linux в ньому. З рядка для linux знаходиться файл, Відповідний компоненту usr / linux /. Потім знаходиться компонент progr.c, який відкривається, заноситься в таблицю відкритих файлів і зберігається в ній до закриття файлу.

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




 Перший період (1945-1955 рр.). Лампові машини. Операційних систем немає |  Третій період (початок 60-х - 1980 г.). Комп'ютери на основі інтегральних мікросхем. Перші багатозадачні ОС |  Операційна система: визначення і класифікація. Основні функції операційних систем. |  Архітектура операційної системи. |  змішані системи |  Реалізація багатозадачності |  Управління завданнями. Класифікація процесів. |  Управління процесами. Діаграма станів процесу. |  Взаємодія процесів. Транспортери, черги, сигнали, семафори. |  Операційна оболонка Windows3.1, Відмінні риси. Основні переваги. Вікна в Windows. |

© um.co.ua - учбові матеріали та реферати