69310

Поняття файла і файлової системи

Лекция

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

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

Украинкский

2014-10-03

34 KB

8 чел.

Лекція № 14

Тема: Поняття файла і файлової системи

План

  1.  Поняття файла
  2.  Поняття файлової системи
  3.  Типи файлів
  4.  Імена файлів

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

У цьому розділі зупинимося на логічному відображенні і програмному інтерфейсі файлової системи, а в наступному — на її фізичній реалізації.

Поняття файла і файлової системи

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

Поняття файла

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

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

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

Поняття файлової системи

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

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

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

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

Типи файлів

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

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

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

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

Імена файлів

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

Різні системи висувають різні вимоги до імен файлів. Так, у деяких системах імена є чутливими до регістра (myfile.txt і MYFILE.TXT будуть різними іменами), а в інших — ні.

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

Важливою характеристикою файлової системи є максимальна довжина імені файла. У минулому багато ОС різним чином обмежували довжину імен файлів. Широко відоме було обмеження на 8 символів у імені файла і 3 — у розширенні, присутнє у файловій системі FAT до появи Windows 95. Сьогодні стандартним значенням максимальної довжини імені файла є 255 символів.

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

  1.  Поняття файлу
  2.  Особливості використання файлів
  3.  Поняття файлової системи
  4.  Типи файлів
  5.  Імена файлів