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

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

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

За счет этого 1) уменьшается фрагментация файла по диску и 2) уменьшаютсянакладные расходы при чтении подряд идущих данных файла (эффективнее считать за 1раз большую порцию информации, чем два раза считать по «половинке»). Но главнымнедостатком крупных блоков — большая степень внутренней фрагментации.

Для борьбыс внутренней фрагментацией в системе реализован еще один уровень структурнойорганизации: каждый блок файловой системы поделен на фиксированное количество т.н.фрагментов (обычно число фрагментов в блоке кратно степени 2 — 2, 4, 8 и т.д.).Размещение файла по блокам файловой системы строится на основе следующейконцепции (Рис. 128).

Начиная с первого и заканчивая предпоследним, эти блоки целикомзаполнены содержимым данного файла. Соответственно, номера этих блоков хранятсясреди атрибутов файла. Последний блок выделен отдельно: помимо его номера ватрибутах файла хранятся и номера занятых в нем фрагментов, принадлежащих данномуфайлу. Информация о блоках и фрагментах может быть представлена разными способами:например, двоичная маска, или же номером первого фрагмента в этом блоке, занятымданным файлом (количество фрагментов тогда можно вычислить на основании длиныфайла в байтах), и т.д.Блоки0…1Фрагменты01234567…Маска00000111…NРис. 128.

Внутренняя организация блоков (блоки выровнены по кратности).2254.2.4.3 Выделение пространства для файлаРассмотрим алгоритм выделения пространства для файлов на следующем примере.Будем считать, что блок файловой системы поделен на 4 фрагмента. Пусть в системехранятся файлы petya.txt и vasya.txt (Рис. 129), для которых в соответствующих индексныхдескрипторах хранится информация об их размерах и номерах блоков, принадлежащихфайлам, в виде стартовых фрагментов. Соответственно, файл petya.txt расположен внулевом (стартовый фрагмент № 00), первом (стартовый фрагмент № 04) и втором блоке(стартовый фрагмент № 08).

Если учесть длину файла (5120 байт), то получается, что вовтором блоке этот файл занимает 08 и 09 фрагменты. Файл vasya.txt расположен в третьемблоке (стартовый фрагмент № 12), четвертом (стартовый фрагмент № 16) и втором блоке(стартовый фрагмент № 10); при этом во втором блоке файлу принадлежит только 10-ыйфрагмент (т.к. размер файла 4608 байт). Итак, очевидно, что данная система нарушаетконцепцию файловой системы ветви System V, в которой каждый блок мог принадлежатьтолько одному файлу; в FFS последний блок можно разделять между различнымифайлами.Дескриптор petya.txtID РазмерФрагмент1512000 04 08Дескриптор vasya.txtID РазмерФрагмент2460812 16 10Блоки данных, разделённые на фрагменты0120001020304050607080931011121341415161751819202122232223увеличился размер файла petya.txtДескриптор petya.txtID РазмерФрагмент1563200 04 20Дескриптор vasya.txtID РазмерФрагмент2460812 16 10Блоки данных, разделённые на фрагменты01200010203040506070809103111213414151617518192021Рис.

129. Выделение пространства для файла.Если, например, размер файла petya.txt увеличивается на столько, что конец файлане помещается в 08 и 09 фрагментах, то система начинает поиск блока с тремя подрядидущими свободными фрагментами. (Соответственно, если размер файла увеличиваетсяна большую величину, то сначала для него отводятся полностью свободные блоки, вкоторых файл занимает все фрагменты, а для размещения последних фрагментов ищетсяблок с соответствующим числом подряд идущих свободных фрагментов.) Когда системанаходит такой блок, то происходит перемещение последних фрагментов файла petya.txt вэтот блок.4.2.4.4 Структура каталога FFSКаталог файловой системы FFS позволяет использовать имена файлов, длиной до255 символов (Рис.

130). Каталог состоит из записей переменной длины. Начальная запись226содержит номер индексного дескриптора, размер записи (т.е. ссылку на последнийэлемент записи) и длину имени файла, после этого следует дополненное до кратности в 4байта имя файла (максимальная длина имени файла — 255 символов). Работа системыорганизована следующим образом: если происходит удаление файла из каталога, тоосвобождающееся пространство, занимаемое раньше записью данного файла,присоединяется к предыдущей записи.

Это означает, что размер предыдущей записиувеличивается, но длина хранимого в ней имени не меняется (т.е. остается реальной).Удаление первой записи выражается в обнулении номера индексного дескриптора в этойзаписи. Такая модель позволяет при удалении файла практически не заботиться овысвобождаемом пространстве внутри файла-каталога: получаемые при удалении «дыры»ликвидируются не за счет компрессии, а за счет тривиального «склеивания» спредыдущей записью.Каталогномер индексногодескриптораразмер записидлина имени файлаимя файла(до 255 символов)Name1Name2Name3Name4Name5Size(Name1)RM Name2RM Name4…Name1Name3Size(Name1)Size(Name3)Name5…Рис. 130. Структура каталога FFS BSD.Таким образом, система позволяет использовать имена файлов произвольнойдлины вплоть до 255 символов, что достаточно удобно для пользователя.

Но такоепреимущество оборачивается тем, что система несет накладные расходы как поиспользованию дискового пространства (в каталогах присутствует внутренняяфрагментация), так и по времени (осуществление поиска в системах с фиксированнымиразмерами записей в большинстве случаев эффективнее, чем в системах с переменнымиразмерами записей).4.2.4.5 Блокировка доступа к содержимому файлаОрганизация файловой системы ОС Unix позволяет открывать и работать с одними тем же файлом произвольному числу процессов. Более того, один и тот же файл можетбыть многократно открыт в рамках одного процесса. При этом система поддерживаетмодель синхронизации работы с файлами. Для этого используется системный вызов fcntl()(данный системный вызов предназначен вообще для организации управления работы сфайлом), который может обеспечивать блокировку как файла в целом, так и отдельныхобластей внутри файла (т.е.

сделать какую-то область файла недоступной для другихпроцессов). Различают два типа блокировок: исключающие и распределенные.Исключающая блокировка (exclusive lock) — это «жесткая» блокировка: еслипроизошла такая блокировка области, то любой другой процесс не сможет осуществитьоперации обмена с данной областью (в этом случае процесс либо будет приостановлен вожидании разблокирования области, либо получит отказ, в зависимости отустановленного режима работы).

Данный вид блокировок является блокировкой смонополизацией: области с исключающими блокировками пересекаться не могут.Альтернативой исключающей блокировке является распределенная блокировка(shared lock), или «мягкая», рекомендательная блокировка. Процесс может установить дляобласти блокировку этого типа, а другие процессы при работе могут на нее не обращатьвнимания, т.е. при установленной блокировке всЁ равно разрешены чтение и запись227информации из блокированной области. Для обеспечения корректной работы с файломнеобходимо средство установки блокировки на той или иной области – для этого опятьтаки используется системный вызов fcntl(). Области с рекомендательными блокировкамимогут пересекаться.2285Управление оперативной памятьюБудем говорить о функциях управления оперативной памятью в контексте решенияследующих основных задач.

Во-первых, это осуществление контроля использованияресурсов, т.е. учет состояния каждой доступной в системе единицы памяти (свободна онаили распределена).Второй задачей является выбор стратегии распределения памяти. Иными словами,решается задача, какому процессу, в течение какого времени и в каком объеме долженбыть выделен соответствующий ресурс. Стратегия распределения памяти являетсядостаточно сложной задачей планирования.Конкретное выделение ресурса тому или иному потребителю является третьейзадачей управления ОЗУ. Эта подзадача следует за предыдущей задачей планирования:после решения задачи, какому процессу сколько выделить памяти и на какое время (всоответствии с наличием ресурса), следует операция непосредственного выделения. Этоозначает, что для предоставляемого ресурса идет корректировка системных данных(например, изменение статуса занятости), а затем выдача его потребителю.И, наконец, четвертой задачей является выбор стратегии освобождения памяти.Освобождение памяти можно рассматривать с двух точек зрения.

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

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

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

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

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