Алгоритми за извършване на типични файлови операции

Файлова система

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

За да осигури достъп до файлове, файловата система MS-DOS организира и поддържа определенафайлова структура.

Структура на дисковото пространство

Файловата система използва няколко нива на представяне за структурата на дисковото пространство, всяко от които е фокусирано върху определена група потребители и ви позволява да решавате определен набор от задачи за достъп до файлове. От тази гледна точка се разграничават информационни, логически и физически структури, за които има определен набор от структурни елементи и се използва съответната терминология.

Информационна структура

Информационната структура на дисковото пространство е ориентирано към потребителя външно представяне на дисково пространство, дефинирано от елементи като Том(логическо устройство), каталог (папка, директория) и файл. Тези елементи се използват, когато потребителят комуникира с операционната система. Комуникацията се осъществява с помощта на команди, които извършват операции за достъп до файлове и директории.

Дисковото пространство се представя на потребителя като комплект логически устройства, за които се използват буквите на латинската азбука И преди Z.. Освен това именатаИ и IN запазено за дискети.

Всяко от логическите устройства има свързано дърво на директории. Дървото на директории ТРЯБВА да съдържа такова коренна директория (коренна директория) и много йерархично подчинени директории. Основната директория ВИНАГИ съществува на форматиран диск! Размерът на главната директория за даден диск е фиксирана стойност, поради което максималният брой файлове и други (дъщерни) директории (поддиректории), "обвързани" с него, е строго определен. Основната директория няма име. Можете да предположите, че името на главната директория е същото като името на съответното логическо устройство.

Поддиректории - те са (по същество) файлове със специфична структура, подобна на структурата на основната директория. Размерът на подчинената директория не е фиксиран - той се променя динамично, когато се добавят и премахват регистрирани в нея обекти (файлове или дъщерни поддиректории). Размерът на поддиректорията е ограничен само от размера на логическия диск.

алгоритми

Фигура: един


MS-DOS поддържа йерархична (дървовидна) структура на директории (Фигура 1). За разлика от главната директория, други директории (поддиректории) се създават с помощта на специалнивътрешен MS-DOS команди. Основната цел на тази структура на директориите е да организира ефективно съхранение на голям брой файлове на диска. ВСЯКА директория (с изключение на root) има "родител". Тези. ВСЯКА директория (с изключение на root) има друга директория, към която тази директория е „свързана“. MS-DOS третира всяка директория (с изключение на root) като файл. Понятието "свързан" понякога се заменя с термина "регистриран". На фиг. 1 директория 2.1 е свързана с директория 1.1, т.е. дъщеря на директория 1.1 и родител на директории 3.1 и 3.2.

Физическа структура

Занимават се с техническите средства (хардуер) за четене и писане на информация физически структура на дисковото пространство. Физическата структура се описва с термини като диск (или дисков стек), повърхност на диска, глава за четене/запис, магнитна следа и сектор.

Диск (дисков пакет) - физическо устройство за четене/запис на информация с автономно устройство.

Работна повърхност диск (Side) - магнитната повърхност на диска, на която се съхраняват данни. Тя е свързана с магнитна главачетене-писане (Head).

Магнитна писта (Track) - следа на работната повърхност. Всяка писта е разделена на сектори.

Сектор (Сектор) е най-малката единица дисково пространство, до която може да се осъществи достъп за писане или четене на информация. Обикновено секторът е 512 байта.

Цилиндър (Цилиндър) - набор от писти със същия радиус, разположени на всички работни повърхности на дисковия пакет. Достъпът до всички коловози на един цилиндър може да бъде осигурен с едно радиално позициониране на магнитната глава.

извършване


Фигура: 2


Фигура 2 показва физическата структура на дискетата. Термините "коловоз" и "цилиндър" не трябва да се бъркат. Въпреки че на тази снимка може да изглежда, че цилиндърът и следата са едно и също. Флопи диск с размер 1,4 MB е двустранен (т.е. има две работни повърхности), следователно има две песни на един цилиндър.

Логическа структура

Логическата структура реализира линеен ("лентов") модел на дисковото пространство на тома. Според този модел обемът е разделен на две последователни области - система и работа.

Работно пространство, разположен непосредствено след системния, разделен на последователно номерираниклъстери и е предназначен за съхраняване на файлове и поддиректории. Клъстерът се използва като минималната единица, разпределена от операционната система за един файл или поддиректория. Например клъстерът на Windows (FAT32) е с размер 32KB. И дори ако файлът е с размер 1KB, 32KB на диска пак ще бъдат разпределени за него. В Windows всичко това може да се види, като щракнете с десния бутон върху файла и изберете „Properties“.

Всеки клъстер има уникален номер и съдържа няколко последователни сектора (1 или 2 сектора в клъстер за дискети, 4 или повече за твърди дискове). Съществува индивидуално съответствие между номера на клъстера и списъка с абсолютни номера на сектори, които са включени в него.

Област на системата заема няколко първоначални (в абсолютна номерация) сектори, започвайки от нула, и съдържа блокове информация за услугата. Тези блокове се използват за организиране на достъп до файлове и стартиране на операционната система:

  • Стартиращ блок (Boot-Sector)
  • Основна директория
  • Таблица за разпределение на файлове (FAT)


Стартиращ блок (Boot-Sector)

Блокът за зареждане винаги заема нулев сектор и съдържа таблица с параметри на дисковия формат и кратка програма за стартиране на DOS. Структурата на зареждащия блок е показана в таблица 1.

Таблица 1. Структура на зареждащия блок.