Главная » Архив меток: bios

Архив меток: bios

Прерывания от внешних устройств в системе x86. Часть 3. Настройка роутинга прерываний в чипсете на примере coreboot

Продолжаем рассматривать настройку прерываний от внешних устройств в системе x86.В части 1 (Эволюция контроллеров прерываний) мы рассмотрели теоретические основы контроллеров прерываний и общие термины, в части 2 (Опции загрузки ядра Linux) посмотрели как на практике ОС осуществляет выбор между контроллерами. В этой части мы рассмотрим как BIOS настраивает роутинг IRQ на контроллеры прерываний в чипсете. Но к счастью есть Coreboot ...

Читать далее »

[Из песочницы] Статический анализ «BIOS/UEFI» или как получить Dependency Graph

«Я вчера закончил ковку,Я два плана залудил…»… V.S. Vysotsky song... Уже почти 3 года назад (в начале 2016) в issue проекта UEFITool на GitHub появилось пожелание пользователей: построить «Dependency Graph» для исполняемых модулей, входящих в BIOS/UEFI. Завязалось даже небольшое обсуждение, в результате которого окончательно выяснилось, что данная задача отнюдь не тривиальна, имеющегося функционала для её решения недостаточно, перспективы в тот ...

Читать далее »

Прерывания от внешних устройств в x86 системе. Опции загрузки ядра Linux

В предыдущей части мы рассмотрели эволюцию доставки прерываний от устройств в x86 системах (PIC → APIC → MSI), общую теорию и все необходимые термины. В этой практической части мы рассмотрим как откатиться к использованию устаревших методов доставки прерываний в Linux, а именно рассмотрим опции загрузки ядра: pci=nomsi noapic nolapic Также мы посмотрим на порядок, в котором ОС смотрит таблицы роутинга ...

Читать далее »

Прерывания от внешних устройств в системе x86. Эволюция контроллеров прерываний

В данной статье хотелось бы рассмотреть механизмы доставки прерываний от внешних устройств в системе x86 и попытаться ответить на вопросы: что такое PIC и для чего он нужен? что такое APIC и для чего он нужен? Для чего нужны LAPIC и I/O APIC? в чём отличия APIC, xAPIC и x2APIC? что такое MSI? В чём отличия MSI и MSI-X? как ...

Читать далее »