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

content: Лекція 9-10. Файлові системи.Викладач:Карчевська Ольга Ігорівна,асистент кафедри інформаційних систем та технологій,Інститут підприємництва та перспективних технологійНаціонального університету “Львівська політехніка”

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

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

content: Поняття файлу та файлової системи.Файли найчастіше об”єднують у каталоги.Каталог – це об”єкт (найчастіше реалізований як спеціальний файл), що містить інформацію про набір файлів.Сукупність каталогів та вкладених підкаталогів утворює дерево каталогів. Будь-який каталог чи файл у цьому дереві ідентифікують за допомогою шляху.Розрізняють абсолютний та відносний шляхи.Абсолютний шлях – це повний шлях починаючи від кореневого каталогу.Відносний шлях – це шлях до файлу починаючи із заданого каталогу як відправної точки.Приклад:С:DocumentsProgramsPicturesOldNewa.docb.txtc.xlsxxx.exeq.doc1) Абсолютний шлях до файлу q.doc:C:DocumentsNewq.doc2) Нехай ми знаходимось у каталозі Pictures. Відносний шлях до файлу q.doc наступний:..DocumentsNewq.doc.. – це позначення батьківського (попереднього) каталогу. В нашому випадку. для каталогу Pictures ним є кореневий каталог диску С.foto.jpgcat.bmp

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

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

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

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

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

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

content: 5.2. Розміщення файлів зв'язаними списками:прості зв'язні спискикластери1234567891011Файл с.txt(початковий кластер = 1)Файл d.txt(початковий кластер = 7)Переваги:Відсутність зовнішньої фрагментації (тільки невелика внутрішня фрагментація, бо останній кластер файлу може бути заповнений не повністю);Мінімум інформації, яка зберігається у заголовку;Можливість динамічної зміни розміру файлу;Простота реалізації керування вільними блоками.Недоліки:Відсутність ефективної реалізації випадкового доступу до файлу: для доступу до блоку n треба прочитати попередні n-1 блоків;Зниження продуктивності прикладних програм, які зчитують дані блоками;Нестійкість до збоїв: втрата одного кластера – втрата решти файлу.Суть: кожен кластер містить інформацію про те, де перебуває наступний кластер.Заголовок файлу містить посилання на перший кластер.

content: 5.3. Розміщення файлів зв'язаними списками: зв'язні списки з таблицею розміщення файлівСуть: всі посилання, які формують списки кластерів файлу, зберігаються у таблиці розміщення файлів (File Allocation Table, FAT). Рядок таблиці відповідає кожному окремому кластеру і містить номер кластера та статус кластера.Статусом кластера може бути: номер наступного кластера; індикатор кінця файлу; індикатор, який показує що цей кластер вільний.Схематичне представлення розміщення файлів для цього методу:Каталог:a.txtb.txt26FAT:Номер кластера12345Статусвільнийeof1eof3вільний64Кластери:12345678910Файл g.txt(початковий кластер = 2)Файл h.txt(початковий кластер = 7)Ім”яфайлу:Номеркластера

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

content: 5.4. Індексоване розміщення файлівСуть: заголовок файлу містить перелік всіх адрес кластерів файлу. Заголовок = індексний дескриптор. Індексні дескриптори зберігаються у спеціальній ділянці на початку розділу.Ім”яфайлуa.txtНомердескриптора1b.txt2Каталог:Індекснідескриптори:1125236712345678910Дисковіблоки:…

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

content: 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:PTVBSFATFAT (копія)RDдані

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

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

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

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

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