Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Поняття файлового способу зберігання даних і файлової системи

Поиск

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

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

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

Файл - ідентифікована сукупність примірників повністю описаного в конкретній програмі типу даних,знаходяться поза програмою в зовнішній пам'яті і доступних програмі допомогою спеціальних операцій.

Файлова система - система управління даними з файловим способом зберігання.

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

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

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

вимоги:

• кожен користувач повинен мати можливість створювати, видаляти і змінювати файли;

• кожен користувач може мати контрольований доступ до файлів інших користувачів;

• кожен користувач може контролювати, які типи доступу дозволені до його файлів;

• кожен користувач повинен мати можливість переструктурувати свої файли до форми, яка відповідає його

завдання;

• кожен користувач повинен мати можливість пересилати дані між файлами;

• кожен користувач повинен мати можливість копіювати і відновлювати свої файли в разі їх пошкодження;

• кожен користувач повинен мати можливість доступу до своїх файлів по їх символічним іменам.

Для того щоб задовольнити перелічені вище вимоги, програмна частина файлових систем повинна містити наступні компоненти:

1) засоби взаємодії з процесами користувачів, забезпечують приймання та інтерпретацію запитів від пользователя на обробку файлів і що повідомляють йому про результати виконаної обробки;

2) засоби реалізації методів доступу до файлу і до його складовим елементам;

3) кошти розподілу зовнішньої пам'яті для зберігання файлів, а також її звільнення у міру знищення файлов;

4) засоби обліку розташування файлів і їх складових елементів.

 

Організація файлів

Фізична організація файлів залежить від фізичних характеристик зовнішнього пристрою. Існують зовнішні устройства, які можна розглядати як послідовні файли, де обмін записами доступний тільки в лінійному порядку. До них відносяться накопичувачі на магнітних стрічках, стримери, принтери, модеми і т.п. У порівнянні з ними назбиратели на магнітних дисках допускають величезну гнучкість організації файлів. На поверхні дискової пластини розміщено серія концентричних кіл, які називаються доріжками або циліндрами диска. Кожна доріжка підрозділяється на сектори. Сектор - це мінімальний обсяг інформації, зазвичай передається в дискової системі.

Фізичні записи можуть розташовуватися в будь-якому місці диска. З міркувань ефективності при пошуку і передачі даних робляться всілякі спроби розташувати пов'язані фізичні записи в суміжних секторах або на сусідніх пластинах тієї ж доріжки диска.

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

Послідовна організація файлу передбачає створення на диску послідовного файлу.

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

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

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

1) один фізичний блок під одну логічну запис;

2) кілька фізичних блоків під одну логічну запис;

3) один фізичний блок під декілька логічних записів.

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

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

Безперервна організація файлу передбачає створення на диску безперервного файлу.

Безперервний файл - файл на носії, що з низки фізичних блоків, які все розташовані в одній

суцільний області дискового простору.

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

Доступ до записів безперервного файлу досить простий. Якщо позначити через r - номер запису, l - довжину запису і L

- Довжину блоку, то номер b блоку, де знаходиться запис, обчислюється за формулою

b = l r / L.

Значення b використовується потім для зчитування потрібного блоку в первинну пам'ять. Оскільки не потрібно проходити по вказівниками, як у першому випадку, то досягається суттєве скорочення витрат часу на доступ до даних.Оновлення запису r скоюється дуже просто - вона просто перекривається новими даними. При цьому відбувається звернення до потрібного кількістю фізичних блоків. Для безперервного файлу мають місце ті ж три випадки розміщення логічних записів у фізичних блоках, що і для послідовного файлу. Включення нового запису в безперервний файл дуже складно. Для цього системі, в середньому, необхідно перемістити половину записів довжиною l, перш ніж звільнити місце для нового запису. Включення нового запису в

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

Сегментована організація файлу припускає створення сегментированного файлу.

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

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

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

і, можливо, покажчик на наступний індексний блок. Покажчик на дисковий блок повинен мати розмір, достатній для подання всього діапазону адрес на пристрої пам'яті.

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



Поделиться:


Последнее изменение этой страницы: 2016-09-20; просмотров: 267; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.144.242.20 (0.009 с.)