Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции_Распределённые ОС.docx
Скачиваний:
0
Добавлен:
30.09.2026
Размер:
1 Мб
Скачать
☆

10 Лекция (04.04.2024)

Мы с Вами в прошлый раз обсуждали файловую систему - самую сложную часть, составляющую 2/3 кода всего. Файловые системы и работа с ними в распределённой системе предполагают, во-первых, интерфейс файловой системы (File System Interface), а именно:

  1. логическая файловая система

  2. maping, который делается, чтобы получить доступ к сетевому диску

  3. аналог TFTP

Во-вторых, всякие проблемы, связанные с монтированием файловой системы, открытием файла или файловой системы, операциями create, open и т.д.

Сегодняшняя лекция будет посвящена структуре Mass Storage. Mass Storage — это, собственно говоря, дисковая память. Современные дисковые системы могут располагаться на:

  1. жёстких дисках

  2. SSD-дисках

  3. голографических дисках, где при помощи света делаются голографические изображения на пластинах

  4. MEMS’ах (дисковые подсистемы, которые сделаны при помощи микроэлектронных средств). Но на них не стоит сильно заострять внимание, потому что все ОС достаточно старые и работают с SSD или с hard disk, причём, подсистема будет работать одинаково, она будет эмулировать hard, иначе всё будет перезаписываться. Надо понимать, что если речь идёт о CD driver'ах, то с этим работает не ОС, а драйвер. Поэтому мы с вами сейчас обсуждаем именно работу с Mass Storage, со структурой дискового пространства, с тем, что происходит в современных системах.

Стоит обратить внимание ещё и на то, что каждая ОС по-своему видит блоки и сектора, имеет свои алгоритмы считывания с этой диском, свои алгоритмы пересчёта, свои алгоритмы обработки буферов.

Но возникает интересный вопрос: что нам делать, если на этом диске работает не одна операционная система? Существует механизм, который называется механизм partition’ов. Этот механизм не стоит путать с разделами (томами) partition.

Что же подразумевает под собой механизм partition? Механизм partition’ов (механизм разделов диска) позволяет одному физическому диску поддерживать несколько ОС. Каждый раздел действует как отдельный диск, с собственной файловой и операционной системами. Это означает, что мы можем иметь, например, один раздел для Windows и другой для Linux на одном и том же диске. Когда происходит загрузка компьютера, загрузчик (например, GRUB для Linux или Boot Manager для Windows) позволяет нам выбрать, какую ОС мы хотим запустить.

Механизм partition’ов также полезен для организации данных. Например, мы можем иметь один раздел для системных файлов операционной системы и другой для наших личных файлов. Это может упростить процесс резервного копирования или восстановления данных.

Однако, стоит помнить, что создание и управление разделами требует определенных знаний и осторожности. Неправильное использование инструментов для работы с разделами может привести к потере данных, поэтому всегда рекомендуется делать резервные копии важных данных перед изменением структуры разделов на диске.

В современных системах для поддержания коммутации процессов в ОС используются балансировщики нагрузки, по крайней мере, последние 15 лет. Поскольку дисков очень много, то потребовалось введение понятие RAID’ов.

RAID – это soft, который входит в состав любой ОС. Он имеет семь стратегий:

  1. RAID 0. Данная стратегия использует метод striping, где данные разбиваются на блоки и каждый блок записывается на отдельный диск в массиве. Это обеспечивает высокую скорость передачи данных, но не обеспечивает избыточность. Если один диск в массиве отказывает, все данные теряются.

  2. RAID 1. Данная стратегия использует метод mirroring (зеркалирование) для копирования данных на два или более диска. Это обеспечивает высокую надежность, так как данные дублируются. Если один диск отказывает, другой диск продолжает работать, обеспечивая доступ к данным.

  3. RAID 2: Данная стратегия использует метод Hamming code для коррекции ошибок и синхронизированное вращение дисков. Является не очень популярной и редко используемой стратегией. Обеспечивает высокую скорость передачи данных и коррекцию ошибок, но требует большого количества дисков.

  4. RAID 3. В этой стратегии данные разделяются на байты и записываются поочередно на каждый диск в массиве с использованием отдельного диска для хранения паритетной информации. Это обеспечивает высокую скорость передачи данных и защиту от отказа одного диска.

  5. RAID 4. Данная стратегия похожа на RAID 3, но данные разделяются на блоки, а не байты. Также использует отдельный диск для хранения паритетной информации. Это обеспечивает высокую скорость передачи данных и защиту от отказа одного диска.

  6. RAID 5. В этой стратегии данные и паритетная информация распределяются между всеми дисками в массиве. Обеспечивает хорошую производительность, защиту данных и «может выжить» при отказе одного диска.

  7. RAID 6. Эта стратегия подобна RAID 5, но имеет двойную паритетную информацию, что позволяет «выжить» при одновременном отказе двух дисков. Это обеспечивает дополнительную защиту данных, но требует больше дисков и вычислительной мощности для обработки двойной паритетной информации.