HeadlinesBriefing favicon HeadlinesBriefing.com

Гайд по Лаборатории Драйверов COSC562 - PCI и VirtIO

Hacker News •
×

Гайд по Лаборатории Драйверов COSC562 - Stephen Marz

Данная лабораторная работа охватывает PCI и VirtIO драйверы устройств. Основной шины устройств — PCI, который использует механизм улучшенного доступа к конфигурации (ECAM) для конфигурации и доступа. PCI-X — улучшение над оригинальным PCI с использованием параллельной архитектуры, а PCI Express (PCIe) — серийная, точка-то-point архитектура.

Физический адрес ECAM берется из ACPI через таблицу MCFG, предоставляющий начальные и конечные номера автобусов. Адреса PCI структурируются с компонентами автобус, устройство, функция и регистр. У каждого устройства есть 65 536 байт пространства ECAM, и у каждого автобуса есть 1 048 576 байт.

В лабораторной работе предполагается инициализация устройств через PCI к VirtIO handoff, затем VirtIO к базовым устройствам. Вы зарегистрируете все устройства в глобальном реестре данных устройств ядра, используя библиотеку alloc для выделения памяти из кучи. Ключевые разделы включают структуру адреса PCI, структуру ECAM, возможности, возможность MSI-X и инициализацию VirtIO.

Ключевые_entity: люди: Stephen Marz