Презентація "Файлові системи"

+8
Попередній слайд
Наступний слайд


Завантажити презентацію "Файлові системи"
Слайд #1
Лекція 9-10. Файлові системи.
Викладач:
Карчевська Ольга Ігорівна,
асистент кафедри інформаційних систем та технологій,

Інститут підприємництва та перспективних технологій
Національного університету “Львівська політехніка”


Слайд #2
Лекція 7. Файлові системи.
План лекції.
1. Поняття файлу та файлової системи.
2. Зовнішні носії інформації.
3. Принцип дії жорсткого диску.
4. Розміщення інформації у файлових системах (логічний рівень).
5. Розміщення інформації у файлових системах (фізичний рівень).
6. Файлова система FAT.
7. Файлова система NTFS.
8. Файлова система ext2fs.
9. Файлові системи ext3fs, ext4fs.


Слайд #3
1. Поняття файлу та файлової системи.
Файл – набір даних у файловій системі, доступ до котрих здійснюється за іменем.
Файли є основним засобом зберігання даних на енергонезалежних носіях.
Типи файлів в залежності від типу програм, які їх використовують:
- спеціальні (такі файли потрібні для функціонування операційної системи та особливим чином інтерпретуються нею).
- звичайні файли (такі файли розпізнаються прикладними програмами, містять дані для роботи цих програм).
виконувані (призначені для запуску програм. Мають жорстко заданий формат, котрий розпізнається операційно системою).
Типи файлів в залежності від порядку зчитування інформації програмою:
з прямим доступом
В таких файлах, використовуючи їх у власних програмах, можна переходити до будь-якої ділянки файлу за допомогою покажчику поточної позиції у файлі. Найчастіше це бінарні файли;
- з послідовним доступом
При створенні програми для обробки таких файлів, інформацію можна зчитувати тільки від початку до кінця. Як правило, це файли даних та текстові файли.


Слайд #4
Поняття файлу та файлової системи.
Файли найчастіше об”єднують у каталоги.
Каталог – це об”єкт (найчастіше реалізований як спеціальний файл), що містить інформацію про набір файлів.
Сукупність каталогів та вкладених підкаталогів утворює дерево каталогів. Будь-який каталог чи файл у цьому дереві ідентифікують за допомогою шляху.
Розрізняють абсолютний та відносний шляхи.
Абсолютний шлях – це повний шлях починаючи від кореневого каталогу.
Відносний шлях – це шлях до файлу починаючи із заданого каталогу як відправної точки.
Приклад:
С:\
Documents
Programs
Pictures
Old
New
a.doc
b.txt
c.xls
xxx.exe
q.doc
1) Абсолютний шлях до файлу q.doc:
C:\Documents\New\q.doc
2) Нехай ми знаходимось у каталозі Pictures. Відносний шлях до файлу q.doc наступний:
..\Documents\New\q.doc
.. – це позначення батьківського (попереднього) каталогу. В нашому випадку. для каталогу Pictures ним є кореневий каталог диску С.
foto.jpg
cat.bmp


Слайд #5
Поняття файлу та файлової системи.
Файлова система – це підсистема операційної системи, що підтримує
організований набір файлів (логічну структуру),
низькорівневі структури даних, котрі використовуються для розміщення цього набору файлів на диску (фізичну структуру),
програмний інтерфейс файлової системи (а саме: системні виклики та функції для роботи з файлами, які використовуються при розробці програм).
Відповідно, виділяють два рівні організації файлової системи:
Логічний рівень – визначає зовнішнє подання файлової системи для користувачів як сукупності файлів та набору операцій над файлами.
Фізичний рівень – визначає принципи розміщення структур даних файлової системи на певному пристрої.


Слайд #6
2. Зовнішні носії інформації.
Довготривале збереження інформації здійснюється за допомогою енергонезалежних носіїв, найпоширенішими з яких є:
жорсткі диски;
CD-диски;
флеш-пам’ять.
Аналогічно, як і для оперативної пам’яті, запис на ці носії здійснюється з урахуванням їх фізичної будови. Для користувача записана інформація представляється у вигляді логічної структури.
Розглянемо будову жорсткого диска та основні його характеристики.


Слайд #7
3. Принцип дії жорсткого диска
Накопичувачі на жорстких магнітних дисках складаються з набору дискових пластин, котрі обертаються з великою швидкістю. Кожній пластині відповідає дві головки: одна зчитує інформацію зверху пластини, одна – знизу. Головки прикріплені до спеціального дискового маніпулятора, котрий може переміщатись по радіусу диска від центра до зовнішнього краю і назад.
Головки зчитують інформацію з доріжок, які мають вигляд концентричних кіл
Сукупність усіх доріжок одного радіуса на всіх поверхнях пластин складає циліндр.
Кожну доріжку розбивають на сектори. Розмір сектора для більшості дисків становить 512 байт.
доріжки
пластини
голівка читання-запису
Маніпулятор диска
сектори
Основні характеристики ефективності доступу до диска:
1. Час пошуку – час переміщення маніпулятора на потрібну доріжку (в середньому 10-20 мс).
2. Ротаційна затримка – час очікування, поки пластина повернеться так, щоб потрібний сектор був під доріжкою (приблизно 8 мс).
3. Пропускна здатність передавання даних – обсяг даних, що передаються в оперативну пам”ять за одиницю часу (200-700 Мбайт/с).
Сумарний час передачі = 1.+ 2. +3.
Найважливіші компоненти: 1 та 2.


Слайд #8
4. Розміщення інформації у файловій системі (логічний рівень)
У зв’язку із особливостями будови та принципу дії жорсткого диска основними задачами файлової системи є:
1. Організація даних таким чином, щоб ті з них, які будуть потрібні одночасно перебували на диску поруч,
2. Підвищення якості кешування даних.
Для розподілу дискового простору з метою розміщення на ньому файлової системи використовують розбиття на розділи.
Розділ (partition) – це логічний пристрій, що з погляду операційної системи функціонує як єдиний диск.
Кожен розділ може мати свою файлову систему. В структурі розділу виділяють каталоги та файли.
Поділ диску на розділи:


Слайд #9
5. Розміщення інформації у файлових системах (фізичний рівень).
Найпоширенішими способами фізичного розміщення інформації на зовнішніх носіях є:
неперервне розміщення,
розміщення зв’язаними списками
прості зв’язні списки,
зв’язні списки з таблицею розміщення файлів,
індексоване розміщення файлів
!!! Диск для файлової системи поділяється не на сектори, а на кластери (у Windows) або дискові блоки (у UNIX-системах). Розмір кластеру задається при форматуванні диска (рисунок).


Слайд #10
5.1. Неперервне розміщення файлів
Суть: При такому методі розміщення для кожного файлу зберігається адреса початкового кластера і розмір файлу.
кластери
0
1
2
3
4
5
6
7
8
9
10
11
Файл a.txt (початковий кластер = 1,
довжина файлу = 3 кластери)
Файл b.txt (початковий кластер = 7,
довжина файлу = 2 кластери)
Переваги:
простота реалізації.
Недоліки:
1) потрібно задавати розмір файлу при створенні, але цей розмір не завжди відомий;
2) вилучення файлу може спричинити велику зовнішню фрагментацію.
Цей метод розміщення файлів в операційних системах майже не використовується.
Використовується в компакт-дисках, оскільки розмір файлів відомий перед записом. Файли записуються один за одним і можливе тільки дозаписування файлів або перезапис усього диска. Записані дані використовуються лише для читання і не видаляються, тому не виникає фрагментації файлів.


Слайд #11
5.2. Розміщення файлів зв’язаними списками:прості зв’язні списки
кластери
0
1
2
3
4
5
6
7
8
9
10
11
Файл с.txt
(початковий кластер = 1)
Файл d.txt
(початковий кластер = 7)
Переваги:
Відсутність зовнішньої фрагментації (тільки невелика внутрішня фрагментація, бо останній кластер файлу може бути заповнений не повністю);
Мінімум інформації, яка зберігається у заголовку;
Можливість динамічної зміни розміру файлу;
Простота реалізації керування вільними блоками.
Недоліки:
Відсутність ефективної реалізації випадкового доступу до файлу: для доступу до блоку n треба прочитати попередні n-1 блоків;
Зниження продуктивності прикладних програм, які зчитують дані блоками;
Нестійкість до збоїв: втрата одного кластера – втрата решти файлу.
Суть: кожен кластер містить інформацію про те, де перебуває наступний кластер.
Заголовок файлу містить посилання на перший кластер.


Слайд #12
5.3. Розміщення файлів зв’язаними списками: зв’язні списки з таблицею розміщення файлів
Суть: всі посилання, які формують списки кластерів файлу, зберігаються у таблиці розміщення файлів (File Allocation Table, FAT). Рядок таблиці відповідає кожному окремому кластеру і містить номер кластера та статус кластера.
Статусом кластера може бути: номер наступного кластера; індикатор кінця файлу; індикатор, який показує що цей кластер вільний.
Схематичне представлення розміщення файлів для цього методу:
Каталог:
a.txt
b.txt
2
6
FAT:
Номер кластера
0
1
2
3
4
5
Статус
вільний
eof
1
eof
3
вільний
6
4
Кластери:
0
1
2
3
4
5
6
7
8
9
10
Файл g.txt
(початковий кластер = 2)
Файл h.txt
(початковий кластер = 7)
Ім”я
файлу:
Номер
кластера


Слайд #13
5.3. Розміщення файлів зв’язаними списками: зв’язні списки з таблицею розміщення файлів
Переваги:
Підвищена надійність;
Копія FAT дозволяє забезпечити захист від збоїв;
В кластерах не міститься службова інформація, а тільки дані.
Недоліки:
Для великих розділів FAT стає дуже великою;
Збільшення розміру кластера призведе до збільшення внутрішньої фрагментації для маленьких файлів (які менші за розмір кластера).


Слайд #14
5.4. Індексоване розміщення файлів
Суть: заголовок файлу містить перелік всіх адрес кластерів файлу. Заголовок = індексний дескриптор. Індексні дескриптори зберігаються у спеціальній ділянці на початку розділу.
Ім”я
файлу
a.txt
Номер
дескриптора
1
b.txt
2
Каталог:
Індексні
дескриптори:
1
1
2
5
2
3
6
7
0
1
2
3
4
5
6
7
8
9
10
Дискові
блоки:


Слайд #15
5.4. Індексоване розміщення файлів
Переваги:
1) Підтримується послідовний і прямий доступ до блоків.
Недоліки:
1) Важко вибрати оптимальну довжину індексного дескриптора.
В UNIX використовується індексний дескриптор з непрямими блоками 1-ого, 2-ого та 3-ого рівнів.


Слайд #16
6. Файлова система FAT.
MBR, Master Boot Record - сектор який несе інформацію про розділи, які існують на диску, з яких циліндрів, головок і секторів вони починаються.PT, Partition Table - таблиця розділів. Цей сектор містить інформацію про доріжки, сектори, головки жорсткого диска і про тип файлової системи. Має інформацію про розміщення завантажувача операційної системи.VBS, Volume Boot Sector - завантажувальний сектор тому. Цей сектор містить дані про розмір кластера, тип і розмір використовуваної таблиці розміщення файлів.FAT, File Allocation Table - таблиця розташування (розміщення) файлів. Цей розділ містить інформацію про розташування файлів на диску.
RD, Root Directory - коренева папка. Має інформацію про тип файлів, їх назви, розміри, дату створення. Крім цього, для кожного файлу в кореневому каталозі є номер кластера, з якого починається файл.Дані. Інші папки і файли.Якщо жорсткий диск розбитий на розділи, то FAT і RD будуть записані на початку кожного розділу. Тобто, для кожного розділу диска використовуються свої таблиці і кореневі каталоги.
Максимальний розмір розділу – FAT16: 4Гб; FAT32 – 8 Tб.
Максимальний розмір файлу – FAT16: 2Гб; FAT32 – 4Гб.
12, 16, 32 – це розрядність вказівника на кластер; тобто це кількість біт, яку займає номер кластера у таблиці розміщення файлів. Таким чином визначається максимальна кількість кластерів та максимальний обсяг розділу, який може підтримувати конкретна файлова система.
Кількість кластерів = 2розрядність вказівника,
Максимальний розмір розділу = кількість кластерів * розмір кластеру.
Приклад (за умови, що розмір кластеру = 4Кб):
FAT16: Кількість кластерів = 216 = 65537. Максимальний розмір розділу = 65537 * 4Кб = 256 Мб.
MBR
Ця система представлена сімейством систем: FAT12, FAT16, FAT32.
Розміщення файлів здійснюється за допомогою зв’язних списків з таблицею розміщення файлів.
Структура диску для системи FAT:
PT
VBS
FAT
FAT (копія)
RD
дані


Слайд #17
7. Файлова система NTFS.
Логічний розділ із розміщеною на ньому файловою системою NTFS називають томом.
Розміщення файлів здійснюється за допомогою таблиці розміщення файлів, котра має вдосконалену структуру.
Загальна структура тому NTFS:
Завантажувальний сектор
MFT
Файли метаданих
дані
MFT, Master File Table – містить інформацію про кожен файл на диску.
Максимальний розмір розділу – 16 екзобайт (= 1018 байт).
Розмір кластера – від 512 байт до 64 Кб.
Додаткові можливості NTFS порівняно з FAT:
підвищена безпека даних завдяки механізму транзакцій та можливості надання прав доступу до файлів,
можливість прозорого стиснення даних з метою економії місця на диску,
можливість шифрування даних,
можливість призначення дискових квот користувачам,
реалізація прискореного пошуку файлів за допомогою бінарного дерева.
MFT(копія)


Слайд #18
8. Файлова система ext2fs.
Ця файлова система є стандартною для Linux.
В цій системі використовується індексне розміщення файлів.
Структура файлової системи:
В цій системі дисковий простір ділять на групи блоків, кожна група є зменшеною копією файлової системи.
Завантажувач
Група блоків 0
Група блоків 1
Група блоків 2
Група блоків 3
Суперблок
Заголовок
групи
Бітова
карта блоків
Бітова карта
індексних
дескрипторів
Індексні
дескриптори
Блоки даних
(1 Кб за
замовчуванням)
Під час розміщення файла вибирають групу блоків і в ній розміщують індексний дескриптор. При розподілі дискових блоків для файлу пробують вибрати ту саму групу, де записаний індексних дескриптор.
Файли каталогів розміщують рівномірно у доступних групах блоків для зменшення фрагментації.
Максимальний розмір файлу – 2 Тб,
Максимальний розмір розділу – 32 Тб.


Слайд #19
9. Файлові системи ext3fs, ext4fs.
Додаткові можливості файлової системи ext3fs:
Ведення журналу транзакцій, що дозволяє підвищити безпеку даних при збоях системи.
Додаткові можливості файлової системи ext4fs:
Збільшено розмір розділу до 260 байт, розмір блоку 4 Кб.
Збільшено максимальний розмір файлу до 1 Тбайт.


Слайд #20
Висновки:
1. Файл – набір даних у файловій системі, доступ до котрих здійснюється за іменем.
2. Файлова система – це підсистема операційної системи, що підтримує організований набір файлів, низькорівневі структури даних, котрі використовуються для розміщення цього набору файлів на диску, програмний інтерфейс файлової системи.
3. У структурі файлової системи виділяють логічний та фізичний рівні.
4. Логічний рівень файлової системи призначений для того, щоб користувачам було легше працювати з інформацією. Представлений розділами, каталогами та файлами.
5. Найпоширенішими способами фізичного розміщення інформації на зовнішніх носіях є: неперервне розміщення, розміщення зв’язаними списками (прості зв’язні списки та зв’язні списки з таблицею розміщення файлів), індексоване розміщення файлів.
6. Одними із реалізацій файлових систем є FAT, NTFS, ext2fs, ext3fs, ext4fs.


Слайд #21
Література:
Шеховцов В. А. Операційні системи. – К.: BHV, 2005 . -576 с.
Таненбаум. Э. Современные операционные системы.2-е изд. – СПб.: Питер, 2002. – 1040 с.