В защищенном режиме процессор может работать как в режиме ядра, так и в режиме пользователя.В режиме ядра вы всегда можете получить доступ к оборудованию.Вызов прерывания BIOS является одним из старых методов, но современная ОС обычно имеет свои собственные драйверы устройств для оборудования и не вызывает BIOS слишком часто.Если вам известны технические характеристики оборудования, вы можете использовать in
и out
для прямого доступа к оборудованию.Кроме того, для современных устройств PCI и PCI Express они поддерживают IO с отображением памяти (CPU X86 также поддерживает это), и это означает, что вы можете использовать mov
для доступа к аппаратному обеспечению.
Для x86 CPU также позволяетпрограмма уровня пользователя для доступа к оборудованию с использованием инструкций ввода и вывода.Вы можете найти его в руководстве по процессору Intel.Просто установить DPL, CPL?(Я забыл правильное имя).
Полагаю, вам лучше прочитать какую-нибудь книгу о драйверах устройств, таких как Linux Device Drivers, 3-е издание.http://lwn.net/Kernel/LDD3/