В ревизии #2231 залил поддержку APIC в основное ядро. Чтобы включить APIC надо:
1)Скомпилировать и записать в образ ядро #2231+ или скачать свежую ночную сборку.
2)
Скачать и записать в /rd/1/drivers нумератор устройств.
4)Освободить в образе несколько килобайт для лога ACPI. (У меня 12 Кб)
5)Загрузить систему и запустить /rd/1/drivers/acpi
6)Убедиться, что папке /rd/1/drivers присутсвует файл devices.dat
7)Сделать рестарт ядра
9)Проверить работу ядра и драйверов
10)Удалить нумератор устройств и сохранить образ. Теперь APIC будет включаться при каждой загрузке ядра.
Детали реализации.
Ядро в процессе инициализации, ещё до переключения в режим страничной адресации, читает таблицы ACPI и определяет базовые адреса IOAPIC и Local APIC. На втором этапе функция APIC_init проверяет базовые адреса и загружает файл devices.dat. Если файл загружен успешно, ядро настраивает IOAPIC и Local APIC, переключает обработку прерываний в режим APIC и патчит номера линий IRQ в конфигурационном пространстве PCI значениями из devices.dat.