Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1.docx
Скачиваний:
21
Добавлен:
12.02.2016
Размер:
1.06 Mб
Скачать

Атрибути файлів

У кожного файлу є своє ім'я і дані. Додатково до цього всі операційні системи зв’язують з кожним файлом також додаткову інформацію, наприклад, дату і час останньої модифікації файлу і його розмір. Ми будемо називати ці додаткові відомості атрибутами файлу. Також їх називають метаданими. Список атрибутів істотно варіюється від системи до системи. У табл. 4.2 показані деякі з можливих атрибутів, але крім них існують також і інші атрибути. Жодна з існуючих систем не має всіх цих атрибутів, але кожен з них присутній в якій-небудь системі. Перші чотири атрибута відносяться до захисту файлу і повідомляють про те, хто може мати до нього доступ, а хто ні. Можливе застосування різноманітних схем, деякі з них ми розглянемо трохи пізніше. У деяких системах для доступу до файлу користувач повинен ввести пароль, в цьому випадку цей пароль може бути одним з атрибутів файлу. Прапори являють собою біти або невеликі поля, за допомогою яких відбувається управління деякими конкретними властивостями або дозволом на їх застосування. Наприклад, приховані файли не з'являються в лістингу файлів. Прапор архівації являє собою біт, за допомогою якого відстежується, чи була нещодавно зроблена резервна копія файлу. Цей прапор скидається програмою архівації і встановлюється операційною системою при внесенні в файл змін. Таким чином програма архівування може визначити, які файли слід архівувати. Прапор «тимчасовий» дозволяє автоматично видаляти позначений ним файл по закінченні роботи процесу, що його створив.

Операції з файлами

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

1. Create (Створити). Створює файл без даних і встановлює початкові атрибути.

2. Delete (Видалити). Якщо файл більше не потрібен, його можна видалити, щоб звільнити дисковий простір.

3. Open (Відкрити). Перед використанням файлу процес повинен його відкрити. Мета системного виклику open - дати можливість системі витягти і помістити в оперативну пам'ять атрибути та перелік адрес на диску, щоб прискорити до них доступ при наступних викликах.

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

5. Read (Виконати читання). Зчитування даних з файлу. Як правило, байти зчитуються з поточної позиції.

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

7. Append (Додати). Цей виклик є усіченої формою системного виклику write. Він може лише додати дані в кінець файлу. Як правило, у систем, що надають мінімальний набір системних викликів, виклик append відстуній, але багато систем надають безліч способів отримання того ж результату, і іноді в цих системах присутній виклик append.

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

9. Get attributes (Отримати атрибути).

10. Set attributes (Встановити атрибути).

11. Rename (Перейменувати).

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