Системы хранения и ввода-вывода
Системы хранения и ввода-вывода соединяют процессор и память с внешним миром и с постоянными данными, охватывая шины и межсоединения, дисковые и флеш-накопители, избыточность для обеспечения надежности, а также механизмы, которые эффективно перемещают данные между устройствами и памятью.
Definition
Системы хранения и ввода-вывода — это аппаратные и архитектурные механизмы, с помощью которых компьютер передает данные на периферийные устройства и с них, а также постоянно хранит их, включая задействованные межсоединения, контроллеры, носители информации, а также методы обеспечения надежности и виртуализации.
Scope
Эта область охватывает то, как компьютеры взаимодействуют с периферийными устройствами и долговременно хранят данные: архитектура ввода-вывода и шины, передача данных, управляемая прерываниями и DMA, устройства вторичного хранения (магнитные диски и твердотельные накопители), надежность хранения данных посредством избыточности, такой как RAID, и виртуализация ввода-вывода. Она рассматривает аппаратные и архитектурные механизмы ввода-вывода и постоянства данных. Она исключает программную абстракцию файловой системы (операционные системы) и кэши на кристалле и основную память (иерархия памяти и кэши), хотя тесно взаимодействует с обеими.
Sub-topics
Core questions
- Как устройства подключаются к процессору и памяти через шины и межсоединения?
- Как данные эффективно передаются с использованием прерываний и прямого доступа к памяти, а не путем постоянного опроса?
- Каковы характеристики производительности и надежности магнитных и твердотельных накопителей?
- Как избыточность, такая как RAID, обменивает емкость на надежность и производительность?
- Как виртуализируется и безопасно совместно используется ввод-вывод между виртуальными машинами и процессами?
Key concepts
- Шины и межсоединения ввода-вывода
- Ввод-вывод, управляемый прерываниями
- Прямой доступ к памяти (DMA)
- Магнитный диск и SSD
- Контроллеры устройств
- RAID и избыточность
- Надежность хранения и MTTF
- Виртуализация ввода-вывода
- Пропускная способность и задержка
- Ввод-вывод с отображением в память
Key theories
- Избыточные массивы недорогих дисков (RAID)
- Объединение множества коммерческих дисков с чередованием данных и четностью или зеркалированием позволяет получить хранилище, которое больше, быстрее и надежнее, чем один диск; уровни RAID формализуют компромиссы между емкостью, производительностью и отказоустойчивостью.
- Разделенная передача ввода-вывода
- Прямой доступ к памяти и ввод-вывод, управляемый прерываниями, позволяют устройствам передавать данные в память и из нее без постоянного участия процессора, совмещая операции ввода-вывода с вычислениями и повышая общую пропускную способность системы.
Mechanisms
Периферийные устройства подключаются к системе через шины и контроллеры и сигнализируют процессору с помощью прерываний. Большие объемы данных перемещаются прямым доступом к памяти (DMA), который передает блоки между устройством и памятью без участия процессора в обработке каждого слова. Вторичное хранилище постоянно хранит данные на магнитных дисках или флеш-памяти, а массивы устройств используют чередование, зеркалирование и четность (RAID) для повышения производительности и отказоустойчивости. Уровни виртуализации мультиплексируют эти устройства между гостевыми системами.
Clinical relevance
Системы хранения и ввода-вывода часто определяют сквозную производительность и долговечность системы: базы данных, файловые серверы и приложения, интенсивно работающие с данными, часто ограничены пропускной способностью и задержкой хранилища, а не вычислительной мощностью. RAID и связанные схемы избыточности защищают от сбоев устройств в центрах обработки данных, а эффективная виртуализация ввода-вывода необходима для облачных вычислений, где многие арендаторы совместно используют физическое оборудование.
History
Ранние машины использовали программный ввод-вывод и выделенные каналы; ввод-вывод, управляемый прерываниями, и прямой доступ к памяти появились для совмещения операций ввода-вывода с вычислениями. Магнитные диски доминировали во вторичном хранилище в течение десятилетий, а предложение RAID 1988 года Паттерсона, Гибсона и Каца установило избыточность как стандартный метод обеспечения надежности. Твердотельные накопители на основе флеш-памяти позже изменили иерархию хранения, а виртуализация ввода-вывода стала центральной с ростом облачных вычислений.
Debates
- Дезагрегированное против локального хранения
- Продолжается дискуссия о том, должно ли хранилище быть подключено локально к вычислительным ресурсам или дезагрегировано по быстрым сетям; дезагрегация улучшает утилизацию и гибкость в центрах обработки данных, но увеличивает задержку и зависит от высокопроизводительных межсоединений.
Key figures
- David A. Patterson
- Garth Gibson
- Randy H. Katz
- John L. Hennessy
Related topics
Seminal works
- hennessy2019
- patterson1988raid
- silberschatz2018
Frequently asked questions
- Что такое прямой доступ к памяти и почему он полезен?
- Прямой доступ к памяти (DMA) позволяет устройству передавать блоки данных в основную память или из нее без копирования процессором каждого слова. Это освобождает процессор для выполнения другой работы во время передачи, совмещая операции ввода-вывода с вычислениями и значительно повышая пропускную способность для массового перемещения данных.
- Гарантирует ли RAID безопасность моих данных?
- Нет. RAID повышает доступность и обеспечивает отказоустойчивость при определенных сбоях устройств за счет хранения избыточной информации, но это не резервное копирование: он не защищает от случайного удаления, повреждения, сбоев нескольких устройств, превышающих его допустимый предел, или катастроф на уровне площадки, поэтому отдельные резервные копии остаются необходимыми.