Читайте также:
|
|
ОС предоставляет пользователям и программам простую модель доступа к данным на внешних носителях, представляя данные в виде файлов и обеспечивая возможность работы с ними с помощью простых запросов типа «открыть файл», «прочитать из файла», «записать в файл». Файлы имеют с точки зрения пользователя последовательную организацию.
Файлы могут храниться на внешних устройствах разного типа, например, магнитных дисках, компакт-дисках, флэш-картах. Независимо от типа устройства, посредством механизма файловой системы ОС обеспечивает единообразный доступ к информации на всех типах устройств.
Физически данные хранятся на внешних носителях, имеющих сложную организацию. Например, на дисках информация хранится на пластинах, разделённых на секторы и дорожки. Чтобы получить доступ к порции информации необходимо указать номера поверхности (считывающей головки), дорожки (цилиндра) и сектора. Возможно считывание или запись только блока информации (сектора) полностью.
ОС берёт на себя преобразование запросов пользователей (программ) на доступ к файлам в последовательности команд на доступ к конкретным физическим единицам пространства диска, производит буферизацию ввода-вывода, блокирование и разблокирование данных при необходимости.
ОС поддерживает структуры данных (файловую систему), обеспечивающие размещение на устройстве файлов, выделение им необходимого пространства, поддержание их целостности и непротиворечивости, защиту от несанкционированного доступа, а также решение других задач.
Варианты организации доступа к файлам в операционной системе. Преимущества и недостатки
Доступ к файлам в современных ОС может быть организован одним из двух способов:
- с предварительным установлением связи с файлом;
- без предварительного установления связи с файлом.
В первом случае перед началом работы с файлом его необходимо открыть. При открытии ОС производит поиск файла по его имени, создаёт в ОП структуру, описывающую файл, и возвращает указатель на эту структуру, называемый дескриптором файла. Операции чтения и записи выполняются со ссылками на этот дескриптор, причём ОС сама отслеживает положение указателя чтения(записи) в файле и обнаруживает конец файла. Прикладной программе, как правило, нет необходимости явно указывать место в файле, где должны располагаться данные. По окончании работы с файлом его необходимо закрыть. При этом осуществляется сброс на носитель файловых буферов и из ОП удаляется структура, описывающая файл.
Во втором случае нет необходимости открывать и закрывать файл. Программа выполняет только обращения к файлу на чтение, либо на запись. Но при каждом обращении необходимо указывать полную информацию — имя файла, смещение данных от начала файла, тип операции.
Способ с предварительным установлением связи обеспечивает более эффективный режим работы, в том числе за счёт возможности промежуточной буферизации данных и использования метода качающихся буферов. Но его применение нежелательно для сетевых файловых систем. Информация об открытом файле должна храниться на стороне сервера, и при его отказе после восстановления работоспособности вероятнее всего будет потеряна, что не позволит продолжать работу прикладным программам клиентов, находящимся на других компьютерах. Поэтому в сетевых файловых системах применяется способ доступа без предварительного установления связи с файлом.
На самом деле ОС на стороне клиента скрывает от прикладных программ этот механизм. Обычно прикладные программы осуществляют работу с любыми файлами по способу с предварительным установлением связи. А ОС поддерживает необходимые таблицы и структуры данных, самостоятельно выполняя обращения к файлам, находящимся на сетевых файловых системах, способом без предварительного установления связи с ними.
Дата добавления: 2015-07-20; просмотров: 37 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Назначение каналов ввода-вывода и организация управления ими в операционной системе | | | Понятие драйвера. Аппаратные и программные драйвера |