Главная » Просмотр файлов » Ю. Вахалия - UNIX изнутри (2003)

Ю. Вахалия - UNIX изнутри (2003) (1114670), страница 94

Файл №1114670 Ю. Вахалия - UNIX изнутри (2003) (Ю. Вахалия - UNIX изнутри (2003)) 94 страницаЮ. Вахалия - UNIX изнутри (2003) (1114670) страница 942019-05-08СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Все вышеназванные ограничения привели к началу разработки новой файловой системы в лабораториях Веркли. Такая система получила название РЕЯ (Разг Ие 5узгепт) и впервые была представлена в 4.2ВЯП'. В следующих разделах мы расскажем о ее наиболее важных возможностях. ' На самом деле файловая система РРБ была представлена уже в версии 4.! ЬВБР, являющейся тестовой реализанией для внутреннего использования в Беркли.

Она также была частью 4лсВБ Р, еще одной промежуточной версии ОС, распространенной примерно в ста зкземплярат. 9.6. Структура жесткого диска 399 9.5. Файловая система РРВ В ГР8 (Разг Г11е Бузгет или быстрой файловой системе) были разрешены многие проблемы, существовавшие в з5бк В следующих разделах вы прочтете рассказ об архитектуре новой файловой системы и о том, как ее новые возможности позволили увеличить надежность, производительность и функциональность ОС в целом. В системе ГРЯ представлены все возможности, имеющиеся в з5бк Большинство алгоритмов обработки системных вызовов и структур данных ядра остались неизменными. Основные отличия новой файловой системы от з5(з проявляются в разметке дисков, дисковых структурах и методах размещения свободных блоков.

В систему ГГ8 для поддержки этих возможностей были добавлены дополнительные системные вызовы. 9.6. Структура жесткого диска Для того чтобы понять, какие факторы повлияли на увеличение производительности дисковых операций, важно иметь представление о расположении данных на дисках. На рис.

9.? показан формат обычных жестких дисков, производившихся в начале и середине 80-х годов. Такой диск имеет несколько висков-тарелок, с каждой из которых ассоциируется головка чтения-записи'. Каждая тарелка содержит несколько дорожек, являющихся концентрическими окружностями. Нумерация дорожек ведется от внешней, которая является нулевой. Каждая дорожка разбивается на секторы, которые также нумеруются последовательно. Размер одного сектора (обычно равняющийся 512 байтам) определяет степень детализации при операциях ввода-вывода с диска.

Термин «цилиндр» описывает множество дорожек всех тарелок, по одной на тарелку, на одном и том же расстоянии от осевого перпендикуляра к диску. Таким образом, нулевой цилиндр содержит нулевые дорожки каждой тарелки и т. д. В большинстве конструкций все головки передвигаются одновременно. Следовательно, в один момент времени все головки работают с одинаковыми дорожками и одинаковыми номерами секторов каждого диска-тарелки. Система (Лч11Х видит жесткий диск как одномерный массив блоков. Количество секторов на блок обычно равняется некоторой степени числа 2, но мы для простоты объяснения будем считать, что каждому сектору диска соответствует один блок.

Если процессу ПЧ!Х необходимо прочесть данные из определенного блока, драйвер устройства произведет преобразование его номера в номер логического сектора и произведет по нему вычисление физических номеров дорожки, головки и сектора. При использовании такой схемы сначала ' Обычно попользовались обе части тарелки, поэтому лля каждой ее стороны сугнествовала от- дельная головка. 400 Глава 9. Реализации файловых сне~ем узнается номер сектора, затем головки и только поток номер цилиндра (дорожки). Таким образом, каждый цилиндр содержит последовательный набор номеров блоков.

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

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

Файловая система располагается на отформатированном разделе. В файловой сис~еме РЕЯ каждый раздел поделен на одну или несколько групп цилннд- 9.7. Хранение данных на диске 401 ров, каждая из которых содержит небольшой набор последовательных цилиндров. Это позволяет У)к11Х хранить относящиеся друг к другу данные в одной группе цилиндров, что уменьшает количество перемещений по диску. Более подробно об этом можно прочесть в разделе 9.7.2. Информация традиционного суперблока поделена на две структуры.

Супер- блок ЕЕБ содержит информацию о файловой системе в целом. Здесь находятся данные о количестве, размерах и расположении групп цилиндров, размере блоков, общем количестве блоков и индексных дескрипторах и т. д. Данные суперблока остаются неизменными до тех пор, пока файловая система не будет перестроена заново. Более того, каждая группа цилиндров обладает структурой данных, содержащей сводную информацию о группе, в том числе и списки свободных индексных дескрипторов и свободных блоков.

Суперблок находится в начале раздела (после загрузочной области). Данные, хранящиеся в суперблоке, очень важны ля системы, следовательно, они должны быть защищены от дисковых он~ибок. Каждая группа цилиндров содержит дубликат супсрблока. Файловая система ЕРБ располагает такие копии на неодинаковом смешении в каждой группе цилиндров. Поэтому в системе не существует некоей единственной дорожки, цилиндра или диска, объемлющего сразу все копии суперблока. Пространство между началом группы цилиндра и копией суперблока используется для размещения блоков данных (кроме первого цилиндра группы).

9.7.1. Блоки и фрагменты Как это уже упоминалось ранее, увеличение размера блоков приволит к увеличению производительности путем предоставления возможности передачи большего объема данных в течение одной операции ввода-вывода, но влечет неэкономное использование дискового пространства (в среднем на каждый файл теряется около половины блока).

Разработчики ЕР8 постарались придумать некое решение, являющееся компромиссным: они поделили блоки на фрагменты. В РЕБ все блоки внутри одной файловой системы должны иметь одинаковый размер, но разные файловые системы на одной и той же машине вправе при этом использовать другие размеры блоков. Размер блока может быть больше в два раза или равняться минимальному значению 4 096. В большинстве реализаций верхней границей длины блока определено значение в 8 192 байт. Это намного больше, чем принятые в з51з блоки «габаритами» в 512 или 1024 байт, Кроме увеличения пропускной способности, поддержка блоков больших размеров позволила адресовать файлы объемом больше, чем 2" байт (4 Гбайт) при помощи блоков косвенной адресации всего двух уровней.

В системе РРБ не применяются блоки тройной косвенной связи, хотя некоторые ее реализации используют такие блоки для хранения файлов, превышающих по объему значение в 4 Гбайт. 402 Глава 9. Реализации файловых систем В обычной файловой системе 1ЛЧ1Х содержится большое количество файлов, не требующих применения эффективных методик хранения [211. Для таких файлов размер блока в 4 Кбайт является слишком расточительным.

В системе РЕЯ проблема потери пространства была решена при помощи разделения каждого блока на один или несколько фрагментов. Размер фрагмента является фиксированным для каждой файловой системы. Оя устанавливается при создании новой системы. Количество фрагментов ва один блок можно установить равным 1, 2, 4 или 8, таким образом, нижняя граница размера фрагмента будет равняться 512 байт, что совпадает с размером сектора диска. Каждый фрагмент доступен и адресуется индивидуально. Это требует замены списка свободных блоков битовыми переменными, описывающих состояние связанных с ними фрагментов.

Файл в системе РРБ строится из целых дисковых блоков за исключением последнего, который может содержать только один или несколько последовательных фрагментов. Файловый блок должен быть полностью заполнев в пределах одного дискового блока. Даже если два соседних дисковых блока имеют достаточное количество свободных фрагментов, чтобы разместить в них файловый блок, они не могут быть скомбинированы для этой цели.

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

Эта проблема была частично решена в системе ЕЕБ тем, что делить на фрагмен. ты можно только «прямые» блоки. Из всего сказанного следует, что максимальная производительность достигается при записи приложениями целого блока за раз (если это возможно), Различные файловые системы на одной и той же машине могут иметь различные размеры блоков. Для получения атрибутов файловой системы можно использовать системный вызов зга1. Одним из атрибутов, возвращаемых зта1, является рекомендация по наилучшему размеру элемента для операций ввода-вывода. Применительно к РЕЯ она содержит размер блока.

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

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

Список файлов книги

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