X86 Emulation (QEMU)¶
Overview¶
The Zephyr Kernel uses the qemu_x86 board configuration to emulate pentium-class systems running on QEMU. This board configuration provides support for an x86 Minute IA CPU and the following devices:
- HPET
- Advanced Programmable Interrupt Controller (APIC)
- NS16550 UART
Hardware¶
Supported Features¶
The qemu_x86 board configuration supports the following hardware features:
Interface | Controller | Driver/Component |
---|---|---|
HPET | on-chip | system clock |
APIC | on-chip | interrupt controller |
NS16550 UART | on-chip | serial port |
Devices¶
HPET System Clock Support¶
The qemu_x86 board configuration uses an HPET clock frequency of 25 MHz.
Serial Port¶
The qemu_x86 board configuration uses a single serial communication channel that uses the NS16550 serial driver operating in polling mode. To override, enable the UART_INTERRUPT_DRIVEN Kconfig option, which allows the system to be interrupt-driven.
Known Problems or Limitations¶
The following platform features are unsupported:
- Isolated Memory Regions
- Serial port in Direct Memory Access (DMA) mode
- Serial Peripheral Interface (SPI) flash
- General-Purpose Input/Output (GPIO)
- Inter-Integrated Circuit (I2C)
- Ethernet
- Supervisor Mode Execution Protection (SMEP)