2011. Машбук (1114722), страница 53

Файл №1114722 2011. Машбук (2011. Машбук) 53 страница2011. Машбук (1114722) страница 532019-05-08СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 53)

В общем случае с каждым файлом ассоциируются двауказателя (и на чтение, и на запись), хотя бывают файловые системы, в которыхиспользуется единый указатель чтения/записи. Соответственно, операции чтения/записиоперируют данными, следующими за указателями.Среди прочих атрибутов файла возможны атрибуты, отражающие системную истатистическую информацию о файле: например, время последней модификации, времяпоследнего обращения, предельный размер файла и т.д. Еще одной важной группойатрибутов являются атрибуты, хранящие информацию о размещении содержимого файла,т.е. где в файловой системе организовано хранение данных файла, и как оно организовано.4.1.3 Основные правила работы с файлами.

Типовые программныеинтерфейсыПрактически все файловые системы при организации работы с файлами действуютпо схожим сценариям, которые в общем случае состоят из трех основных блоковдействий.Первый этап – это начало работы с файлом (или открытие файла). Вбольшинстве систем для процессов, желающих работать с файлом, имеются операцииоткрытия файла. Посредством данной операции процесс передает файловой системезапрос на работу с конкретным файлом.

Получив запрос, файловая система производитсоответствующие проверки возможности (в т.ч. на наличие полномочий) работы сфайлом; в случае успеха выделяет внутри себя необходимые ресурсы для работы процессас указанным файлом. В частности, для каждого открытого файла создается т.н. файловыйдескриптор – системная структура данных, содержащая информацию об актуальномсостоянии открытого файла (режимы, позиции указателей и т.п.).

Файловый дескриптор,как системная структура данных, может размещаться как в адресном пространствепроцесса, так и в пространстве памяти операционной системы. Соответственно, приоткрытии файла процесс получает либо номер файлового дескриптора, либо указатель наначало данной структуры. Все последующие операции с содержимым файла происходят суказанием именно файлового дескриптора, и эти операции образуют следующий блокдействий.Второй блок действий образуют операции по работе с содержимым файла(чтение и запись), также операции, изменяющие атрибуты файла (режимы доступа,изменение указателей чтения/записи и т.п.).Последний этап — это закрытие файла: уведомление системе о закрытиипроцессом файлового дескриптора (а не файла).

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

После операции закрытияоперационная система выполняет необходимые действия по корректному завершениюработы с файловым дескриптором, а если закрывается последний открытый дескриптор —то осуществляет корректное завершение работы с файлом: в частности, по необходимостиосвобождаются системные ресурсы, в т.ч. выполняется разгрузка кэш-буферов файловыхобменов и т.д.201Структурно каждая операционная система предлагает унифицированный наборинтерфейсов, посредством которых можно обращаться к системным вызовам работы сфайлами.

Обычно этот набор содержит следующие основные функции:open — открытие/создание файла;close — закрытие;read/write — чтение/запись (относительно положения указателя чтения/записисоответственно);delete — удаление файла из файловой системы;seek — позиционирование указателя чтения/записи;read_attributes/write_attributes — чтение/модификация некоторых атрибутов файла(в файловых системах, рассматривающих имя файла не как атрибут, возможнадополнительная функция переименования файла — rename).Практически все файловые системы включают в свой состав некоторыйспециальный компонент, посредством которого можно установить соответствие междуименем файла и его атрибутами. Используя это соответствие, можно получитьинформацию о размещении данных в файловой системе и организовать доступ к данным.И этим компонентом является каталог.

Итак, каталог — это системная структураданных файловой системы, в которой находится информация об именах файлов, а такжеинформация, обеспечивающая доступ к атрибутам и содержимому файлов. Каталогиявляются специальным видом файлов.Рассмотрим типовые модели организации каталогов (в соответствии схронологическим порядком их появления).Первой исторической моделью является одноуровневая файловая система(система с одноуровневым каталогом). В файловой системе данного типа (Рис. 103)присутствует единственный каталог, в котором перечислены всевозможные имена файлов,находящихся в данной системе. Этот каталог устроен простым способом: для каждогофайла хранится информация об его имени, расположении первого блока и размере файла.Эта простота влечет за собой и простоту доступа к информации файлов, но эта модель непредполагает многопользовательской работы.

В данном случае возможны коллизии имен(когда возникают попытки создания файлов с одним именем). Данная модель в настоящеевремя используется в бытовой технике, которая выполняет фиксированный набордействий.Каталог(корневой каталог)NAME1/NAME2NAME3…Рис. 103. Модель одноуровневой файловой системы.Следующей моделью является двухуровневая файловая система (Рис. 104).Данная модель предполагает работу нескольких пользователей: файловая система этоготипа позволяет группировать файлы по принадлежности тому или иному пользователю.Эта модель лучше одноуровневой (в частности, не возникают коллизии имен файловразных пользователей), но и она обладает недостатками: зачастую неудобно и даженежелательно расположение всех файлов одного пользователя в одном месте (в одномкаталоге).

В частности, остается проблема коллизии имен для файлов одногопользователя.Отметим, что двух-, трех- и вообще N-уровневые (N – фиксированное) моделиостаются актуальными и по сей день. Объясняется это тем, что они, в первую очередь,достаточно просты по своей структуре и организации работы с ними. Если мы посмотрим202на простейший мобильный телефон, имеющий несколько уровней меню, в них обычнореализованы именно подобные файловые системы.Корневой каталог/КаталогипользователейN11…USR1USR1N21 … Nk1N12N22 … Nl2USR1N1M N2M … NnMРис.

104. Модель двухуровневой файловой системы.И, наконец, последняя модель, которую мы рассмотрим, — иерархическаяфайловая система (Рис. 105). Современные многопользовательские файловые системыосновываются на использовании иерархических структур данных, в частности, наиспользовании деревьев.Вся информация в иерархической файловой системе представляется в виде дерева,имеющего корень. Это т.н. корневая файловая система.

В узлах дерева, отличных отлистьев, находятся каталоги, которые содержат информацию о размещенных в нихфайлах. Иерархические файловые системы обычно имеют специальный тип файловкаталогов. Т.е. каталог представляется не как отдельная выделенная структура данных, акак файл особого типа. Листом дерева может быть либо файл-каталог, либо любой файлфайловой системы./…AA…BBC… F…D…BРис. 105.

Модель иерархической файловой системы.Иерархическая (или древообразная) организация файловой системы предоставляетвозможность использования уникального именования файлов. Оно основывается на том,что в дереве существует единственный путь от корня до любого узла. Приведенная схемаименования (от корня до конкретного узла дерева) является принципиальной схемойименования файлов в иерархических файловых системах. При этом обычно используютсяследующие характеристики. Текущий каталог — это каталог, на работу с которым вданный момент настроена файловая система. Текущим каталогом может стать любойкаталог файловой системы, и обозревание файлов в файловой системе происходит203относительно этого каталога. Файлы, находящиеся непосредственно в текущем каталоге,доступны «просто» по имени.

Таким образом, имя файла — это имя файла оносительнотекущего каталога, а полное имя файла — это перечень всех имен файлов от корня доузла с данным файлом. Признаком полного имени обычно является присутствиеспециального префиксного символа, обозначающего корневой каталог (например, в ОСUnix в качестве корневого каталога выступает символ “/”).Иерархическая файловая система позволяет использовать т.н.

относительныеимена файлов — это путь от некоторого каталога до данного файла. Для данного способаименования необходимо указать явно или неявно каталог, относительно которогостроится это именование. Например, если существует файл с полным именем /A/B/С/D, тоотносительно каталога B файл будет иметь имя C/D. Чтобы использовать этоотносительное имя, необходимо либо явно задать каталог B (по сути это означает заданиеполного имени), либо сделать каталог B текущим.Иерархическиефайловыесистемыобычноиспользуютещеоднухарактеристику — т.н. домашний каталог. Суть его заключается в том, что для каждогозарегистрированного в системе пользователя (или для всех пользователей) задаетсяполное имя каталога, который должен стать текущим каталогом при входе пользователя всистему.4.1.4 Подходы в практической реализации файловой системыРассмотрим некоторые подходы в практической реализации файловой системы.Снова вернемся к понятию системного устройства — устройства, на котором, каксчитается аппаратурой компьютера, должна присутствовать операционная система.

Почтив любом компьютере можно определить некоторую цепочку внешних устройств, которыепри загрузке компьютера могут рассматриваться как системные устройства. В этойцепочке имеется определенный приоритет. Во время старта вычислительная система(компьютер) перебирает данную цепочку в порядке убывания приоритета до тех пор, покане обнаружит готовое к работе устройство. Система предполагает, что на этом устройствеимеется необходимая системная информация и пытается загрузить с него операционнуюсистему. Например, допустим, что компьютер сконфигурирован таким образом, чтопервым системным устройством является флоппи-дисковод, вторым — дисководоптических дисков (CDROM), а третьим — жесткий диск.

Характеристики

Тип файла
PDF-файл
Размер
3,79 Mb
Материал
Тип материала
Высшее учебное заведение

Список файлов лекций

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6418
Авторов
на СтудИзбе
307
Средний доход
с одного платного файла
Обучение Подробнее