\input texinfo @c -*- texinfo -*- @c %**start of header @setfilename qemu-doc.info @include version.texi @documentlanguage en @documentencoding UTF-8 @settitle QEMU version @value{VERSION} User Documentation @exampleindent 0 @paragraphindent 0 @c %**end of header @set qemu_system qemu-system-x86_64 @set qemu_system_x86 qemu-system-x86_64 @ifinfo @direntry * QEMU: (qemu-doc). The QEMU Emulator User Documentation. @end direntry @end ifinfo @iftex @titlepage @sp 7 @center @titlefont{QEMU version @value{VERSION}} @sp 1 @center @titlefont{User Documentation} @sp 3 @end titlepage @end iftex @ifnottex @node Top @top @menu * Introduction:: * QEMU System emulator:: * QEMU System emulator targets:: * System requirements:: * Security:: * Implementation notes:: * Deprecated features:: * Recently removed features:: * Supported build platforms:: * License:: * Index:: @end menu @end ifnottex @contents @node Introduction @chapter Introduction @menu * intro_features:: Features @end menu @node intro_features @section Features QEMU is a FAST! processor emulator using dynamic translation to achieve good emulation speed. @cindex operating modes QEMU has two operating modes: @itemize @cindex system emulation @item Full system emulation. In this mode, QEMU emulates a full system (for example a PC), including one or several processors and various peripherals. It can be used to launch different Operating Systems without rebooting the PC or to debug system code. @cindex user mode emulation @item User mode emulation. In this mode, QEMU can launch processes compiled for one CPU on another CPU. It can be used to launch the Wine Windows API emulator (@url{https://www.winehq.org}) or to ease cross-compilation and cross-debugging. @end itemize QEMU has the following features: @itemize @item QEMU can run without a host kernel driver and yet gives acceptable performance. It uses dynamic translation to native code for reasonable speed, with support for self-modifying code and precise exceptions. @item It is portable to several operating systems (GNU/Linux, *BSD, Mac OS X, Windows) and architectures. @item It performs accurate software emulation of the FPU. @end itemize QEMU user mode emulation has the following features: @itemize @item Generic Linux system call converter, including most ioctls. @item clone() emulation using native CPU clone() to use Linux scheduler for threads. @item Accurate signal handling by remapping host signals to target signals. @end itemize QEMU full system emulation has the following features: @itemize @item QEMU uses a full software MMU for maximum portability. @item QEMU can optionally use an in-kernel accelerator, like kvm. The accelerators execute most of the guest code natively, while continuing to emulate the rest of the machine. @item Various hardware devices can be emulated and in some cases, host devices (e.g. serial and parallel ports, USB, drives) can be used transparently by the guest Operating System. Host device passthrough can be used for talking to external physical peripherals (e.g. a webcam, modem or tape drive). @item Symmetric multiprocessing (SMP) support. Currently, an in-kernel accelerator is required to use more than one host CPU for emulation. @end itemize @node QEMU System emulator @chapter QEMU System emulator @cindex system emulation @menu * pcsys_quickstart:: Quick start * sec_invocation:: Invocation * pcsys_keys:: Keys in the graphical frontends * mux_keys:: Keys in the character backend multiplexer * pcsys_monitor:: QEMU Monitor * disk_images:: Disk Images * pcsys_network:: Network emulation * pcsys_usb:: USB emulation * pcsys_ivshmem:: Inter-VM Shared Memory device * direct_linux_boot:: Direct Linux Boot * vnc_security:: VNC security * network_tls:: TLS setup for network services * gdb_usage:: GDB usage @end menu @include docs/system/quickstart.texi @include docs/system/invocation.texi @include docs/system/keys.texi @include docs/system/mux-chardev.texi @include docs/system/monitor.texi @include docs/system/images.texi @include docs/system/net.texi @include docs/system/usb.texi @include docs/system/ivshmem.texi @include docs/system/linuxboot.texi @include docs/system/vnc-security.texi @include docs/system/tls.texi @include docs/system/gdb.texi @node QEMU System emulator targets @chapter QEMU System emulator targets @cindex system emulation (PC) QEMU is a generic emulator and it emulates many machines. Most of the options are similar for all machines. Specific information about the various targets are mentioned in the following sections. @menu * x86 (PC) System emulator:: * PowerPC System emulator:: * Sparc32 System emulator:: * Sparc64 System emulator:: * MIPS System emulator:: * ARM System emulator:: * ColdFire System emulator:: * Cris System emulator:: * Microblaze System emulator:: * SH4 System emulator:: * Xtensa System emulator:: @end menu @node x86 (PC) System emulator @section x86 (PC) System emulator @cindex system emulation (PC) @menu * pcsys_devices:: Peripherals * cpu_models_x86:: Supported CPU model configurations on x86 hosts @end menu @node pcsys_devices @subsection Peripherals @c man begin DESCRIPTION The QEMU PC System emulator simulates the following peripherals: @itemize @minus @item i440FX host PCI bridge and PIIX3 PCI to ISA bridge @item Cirrus CLGD 5446 PCI VGA card or dummy VGA card with Bochs VESA extensions (hardware level, including all non standard modes). @item PS/2 mouse and keyboard @item 2 PCI IDE interfaces with hard disk and CD-ROM support @item Floppy disk @item PCI and ISA network adapters @item Serial ports @item IPMI BMC, either and internal or external one @item Creative SoundBlaster 16 sound card @item ENSONIQ AudioPCI ES1370 sound card @item Intel 82801AA AC97 Audio compatible sound card @item Intel HD Audio Controller and HDA codec @item Adlib (OPL2) - Yamaha YM3812 compatible chip @item Gravis Ultrasound GF1 sound card @item CS4231A compatible sound card @item PCI UHCI, OHCI, EHCI or XHCI USB controller and a virtual USB-1.1 hub. @end itemize SMP is supported with up to 255 CPUs. QEMU uses the PC BIOS from the Seabios project and the Plex86/Bochs LGPL VGA BIOS. QEMU uses YM3812 emulation by Tatsuyuki Satoh. QEMU uses GUS emulation (GUSEMU32 @url{http://www.deinmeister.de/gusemu/}) by Tibor "TS" Schütz. Note that, by default, GUS shares IRQ(7) with parallel ports and so QEMU must be told to not have parallel ports to have working GUS. @example @value{qemu_system_x86} dos.img -soundhw gus -parallel none @end example Alternatively: @example @value{qemu_system_x86} dos.img -device gus,irq=5 @end example Or some other unclaimed IRQ. CS4231A is the chip used in Windows Sound System and GUSMAX products @c man end @lowersections @include docs/system/cpu-models-x86.texi @raisesections @node PowerPC System emulator @section PowerPC System emulator @cindex system emulation (PowerPC) Use the executable @file{qemu-system-ppc} to simulate a complete 40P (PREP) or PowerMac PowerPC system. QEMU emulates the following PowerMac peripherals: @itemize @minus @item UniNorth or Grackle PCI Bridge @item PCI VGA compatible card with VESA Bochs Extensions @item 2 PMAC IDE interfaces with hard disk and CD-ROM support @item NE2000 PCI adapters @item Non Volatile RAM @item VIA-CUDA with ADB keyboard and mouse. @end itemize QEMU emulates the following 40P (PREP) peripherals: @itemize @minus @item PCI Bridge @item PCI VGA compatible card with VESA Bochs Extensions @item 2 IDE interfaces with hard disk and CD-ROM support @item Floppy disk @item PCnet network adapters @item Serial port @item PREP Non Volatile RAM @item PC compatible keyboard and mouse. @end itemize Since version 0.9.1, QEMU uses OpenBIOS @url{https://www.openbios.org/} for the g3beige and mac99 PowerMac and the 40p machines. OpenBIOS is a free (GPL v2) portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (referred to as Open Firmware) compliant firmware. @c man begin OPTIONS The following options are specific to the PowerPC emulation: @table @option @item -g @var{W}x@var{H}[x@var{DEPTH}] Set the initial VGA graphic mode. The default is 800x600x32. @item -prom-env @var{string} Set OpenBIOS variables in NVRAM, for example: @example qemu-system-ppc -prom-env 'auto-boot?=false' \ -prom-env 'boot-device=hd:2,\yaboot' \ -prom-env 'boot-args=conf=hd:2,\yaboot.conf' @end example @end table @c man end More information is available at @url{http://perso.magic.fr/l_indien/qemu-ppc/}. @node Sparc32 System emulator @section Sparc32 System emulator @cindex system emulation (Sparc32) Use the executable @file{qemu-system-sparc} to simulate the following Sun4m architecture machines: @itemize @minus @item SPARCstation 4 @item SPARCstation 5 @item SPARCstation 10 @item SPARCstation 20 @item SPARCserver 600MP @item SPARCstation LX @item SPARCstation Voyager @item SPARCclassic @item SPARCbook @end itemize The emulation is somewhat complete. SMP up to 16 CPUs is supported, but Linux limits the number of usable CPUs to 4. QEMU emulates the following sun4m peripherals: @itemize @minus @item IOMMU @item TCX or cgthree Frame buffer @item Lance (Am7990) Ethernet @item Non Volatile RAM M48T02/M48T08 @item Slave I/O: timers, interrupt controllers, Zilog serial ports, keyboard and power/reset logic @item ESP SCSI controller with hard disk and CD-ROM support @item Floppy drive (not on SS-600MP) @item CS4231 sound device (only on SS-5, not working yet) @end itemize The number of peripherals is fixed in the architecture. Maximum memory size depends on the machine type, for SS-5 it is 256MB and for others 2047MB. Since version 0.8.2, QEMU uses OpenBIOS @url{https://www.openbios.org/}. OpenBIOS is a free (GPL v2) portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (referred to as Open Firmware) compliant firmware. A sample Linux 2.6 series kernel and ram disk image are available on the QEMU web site. There are still issues with NetBSD and OpenBSD, but most kernel versions work. Please note that currently older Solaris kernels don't work probably due to interface issues between OpenBIOS and Solaris. @c man begin OPTIONS The following options are specific to the Sparc32 emulation: @table @option @item -g @var{W}x@var{H}x[x@var{DEPTH}] Set the initial graphics mode. For TCX, the default is 1024x768x8 with the option of 1024x768x24. For cgthree, the default is 1024x768x8 with the option of 1152x900x8 for people who wish to use OBP. @item -prom-env @var{string} Set OpenBIOS variables in NVRAM, for example: @example qemu-system-sparc -prom-env 'auto-boot?=false' \ -prom-env 'boot-device=sd(0,2,0):d' -prom-env 'boot-args=linux single' @end example @item -M [SS-4|SS-5|SS-10|SS-20|SS-600MP|LX|Voyager|SPARCClassic] [|SPARCbook] Set the emulated machine type. Default is SS-5. @end table @c man end @node Sparc64 System emulator @section Sparc64 System emulator @cindex system emulation (Sparc64) Use the executable @file{qemu-system-sparc64} to simulate a Sun4u (UltraSPARC PC-like machine), Sun4v (T1 PC-like machine), or generic Niagara (T1) machine. The Sun4u emulator is mostly complete, being able to run Linux, NetBSD and OpenBSD in headless (-nographic) mode. The Sun4v emulator is still a work in progress. The Niagara T1 emulator makes use of firmware and OS binaries supplied in the S10image/ directory of the OpenSPARC T1 project @url{http://download.oracle.com/technetwork/systems/opensparc/OpenSPARCT1_Arch.1.5.tar.bz2} and is able to boot the disk.s10hw2 Solaris image. @example qemu-system-sparc64 -M niagara -L /path-to/S10image/ \ -nographic -m 256 \ -drive if=pflash,readonly=on,file=/S10image/disk.s10hw2 @end example QEMU emulates the following peripherals: @itemize @minus @item UltraSparc IIi APB PCI Bridge @item PCI VGA compatible card with VESA Bochs Extensions @item PS/2 mouse and keyboard @item Non Volatile RAM M48T59 @item PC-compatible serial ports @item 2 PCI IDE interfaces with hard disk and CD-ROM support @item Floppy disk @end itemize @c man begin OPTIONS The following options are specific to the Sparc64 emulation: @table @option @item -prom-env @var{string} Set OpenBIOS variables in NVRAM, for example: @example qemu-system-sparc64 -prom-env 'auto-boot?=false' @end example @item -M [sun4u|sun4v|niagara] Set the emulated machine type. The default is sun4u. @end table @c man end @node MIPS System emulator @section MIPS System emulator @cindex system emulation (MIPS) @menu * recommendations_cpu_models_MIPS:: Supported CPU model configurations on MIPS hosts * nanoMIPS System emulator :: @end menu Four executables cover simulation of 32 and 64-bit MIPS systems in both endian options, @file{qemu-system-mips}, @file{qemu-system-mipsel} @file{qemu-system-mips64} and @file{qemu-system-mips64el}. Five different machine types are emulated: @itemize @minus @item A generic ISA PC-like machine "mips" @item The MIPS Malta prototype board "malta" @item An ACER Pica "pica61". This machine needs the 64-bit emulator. @item MIPS emulator pseudo board "mipssim" @item A MIPS Magnum R4000 machine "magnum". This machine needs the 64-bit emulator. @end itemize The generic emulation is supported by Debian 'Etch' and is able to install Debian into a virtual disk image. The following devices are emulated: @itemize @minus @item A range of MIPS CPUs, default is the 24Kf @item PC style serial port @item PC style IDE disk @item NE2000 network card @end itemize The Malta emulation supports the following devices: @itemize @minus @item Core board with MIPS 24Kf CPU and Galileo system controller @item PIIX4 PCI/USB/SMbus controller @item The Multi-I/O chip's serial device @item PCI network cards (PCnet32 and others) @item Malta FPGA serial device @item Cirrus (default) or any other PCI VGA graphics card @end itemize The Boston board emulation supports the following devices: @itemize @minus @item Xilinx FPGA, which includes a PCIe root port and an UART @item Intel EG20T PCH connects the I/O peripherals, but only the SATA bus is emulated @end itemize The ACER Pica emulation supports: @itemize @minus @item MIPS R4000 CPU @item PC-style IRQ and DMA controllers @item PC Keyboard @item IDE controller @end itemize The MIPS Magnum R4000 emulation supports: @itemize @minus @item MIPS R4000 CPU @item PC-style IRQ controller @item PC Keyboard @item SCSI controller @item G364 framebuffer @end itemize The Fulong 2E emulation supports: @itemize @minus @item Loongson 2E CPU @item Bonito64 system controller as North Bridge @item VT82C686 chipset as South Bridge @item RTL8139D as a network card chipset @end itemize The mipssim pseudo board emulation provides an environment similar to what the proprietary MIPS emulator uses for running Linux. It supports: @itemize @minus @item A range of MIPS CPUs, default is the 24Kf @item PC style serial port @item MIPSnet network emulation @end itemize @lowersections @include docs/system/cpu-models-mips.texi @raisesections @node nanoMIPS System emulator @subsection nanoMIPS System emulator @cindex system emulation (nanoMIPS) Executable @file{qemu-system-mipsel} also covers simulation of 32-bit nanoMIPS system in little endian mode: @itemize @minus @item nanoMIPS I7200 CPU @end itemize Example of @file{qemu-system-mipsel} usage for nanoMIPS is shown below: Download @code{} from @url{https://mipsdistros.mips.com/LinuxDistro/nanomips/buildroot/index.html}. Download @code{} from @url{https://mipsdistros.mips.com/LinuxDistro/nanomips/kernels/v4.15.18-432-gb2eb9a8b07a1-20180627102142/index.html}. Start system emulation of Malta board with nanoMIPS I7200 CPU: @example qemu-system-mipsel -cpu I7200 -kernel @code{} \ -M malta -serial stdio -m @code{} -hda @code{} \ -append "mem=256m@@0x0 rw console=ttyS0 vga=cirrus vesa=0x111 root=/dev/sda" @end example @node ARM System emulator @section ARM System emulator @cindex system emulation (ARM) Use the executable @file{qemu-system-arm} to simulate a ARM machine. The ARM Integrator/CP board is emulated with the following devices: @itemize @minus @item ARM926E, ARM1026E, ARM946E, ARM1136 or Cortex-A8 CPU @item Two PL011 UARTs @item SMC 91c111 Ethernet adapter @item PL110 LCD controller @item PL050 KMI with PS/2 keyboard and mouse. @item PL181 MultiMedia Card Interface with SD card. @end itemize The ARM Versatile baseboard is emulated with the following devices: @itemize @minus @item ARM926E, ARM1136 or Cortex-A8 CPU @item PL190 Vectored Interrupt Controller @item Four PL011 UARTs @item SMC 91c111 Ethernet adapter @item PL110 LCD controller @item PL050 KMI with PS/2 keyboard and mouse. @item PCI host bridge. Note the emulated PCI bridge only provides access to PCI memory space. It does not provide access to PCI IO space. This means some devices (eg. ne2k_pci NIC) are not usable, and others (eg. rtl8139 NIC) are only usable when the guest drivers use the memory mapped control registers. @item PCI OHCI USB controller. @item LSI53C895A PCI SCSI Host Bus Adapter with hard disk and CD-ROM devices. @item PL181 MultiMedia Card Interface with SD card. @end itemize Several variants of the ARM RealView baseboard are emulated, including the EB, PB-A8 and PBX-A9. Due to interactions with the bootloader, only certain Linux kernel configurations work out of the box on these boards. Kernels for the PB-A8 board should have CONFIG_REALVIEW_HIGH_PHYS_OFFSET enabled in the kernel, and expect 512M RAM. Kernels for The PBX-A9 board should have CONFIG_SPARSEMEM enabled, CONFIG_REALVIEW_HIGH_PHYS_OFFSET disabled and expect 1024M RAM. The following devices are emulated: @itemize @minus @item ARM926E, ARM1136, ARM11MPCore, Cortex-A8 or Cortex-A9 MPCore CPU @item ARM AMBA Generic/Distributed Interrupt Controller @item Four PL011 UARTs @item SMC 91c111 or SMSC LAN9118 Ethernet adapter @item PL110 LCD controller @item PL050 KMI with PS/2 keyboard and mouse @item PCI host bridge @item PCI OHCI USB controller @item LSI53C895A PCI SCSI Host Bus Adapter with hard disk and CD-ROM devices @item PL181 MultiMedia Card Interface with SD card. @end itemize The XScale-based clamshell PDA models ("Spitz", "Akita", "Borzoi" and "Terrier") emulation includes the following peripherals: @itemize @minus @item Intel PXA270 System-on-chip (ARM V5TE core) @item NAND Flash memory @item IBM/Hitachi DSCM microdrive in a PXA PCMCIA slot - not in "Akita" @item On-chip OHCI USB controller @item On-chip LCD controller @item On-chip Real Time Clock @item TI ADS7846 touchscreen controller on SSP bus @item Maxim MAX1111 analog-digital converter on I@math{^2}C bus @item GPIO-connected keyboard controller and LEDs @item Secure Digital card connected to PXA MMC/SD host @item Three on-chip UARTs @item WM8750 audio CODEC on I@math{^2}C and I@math{^2}S busses @end itemize The Palm Tungsten|E PDA (codename "Cheetah") emulation includes the following elements: @itemize @minus @item Texas Instruments OMAP310 System-on-chip (ARM 925T core) @item ROM and RAM memories (ROM firmware image can be loaded with -option-rom) @item On-chip LCD controller @item On-chip Real Time Clock @item TI TSC2102i touchscreen controller / analog-digital converter / Audio CODEC, connected through MicroWire and I@math{^2}S busses @item GPIO-connected matrix keypad @item Secure Digital card connected to OMAP MMC/SD host @item Three on-chip UARTs @end itemize Nokia N800 and N810 internet tablets (known also as RX-34 and RX-44 / 48) emulation supports the following elements: @itemize @minus @item Texas Instruments OMAP2420 System-on-chip (ARM 1136 core) @item RAM and non-volatile OneNAND Flash memories @item Display connected to EPSON remote framebuffer chip and OMAP on-chip display controller and a LS041y3 MIPI DBI-C controller @item TI TSC2301 (in N800) and TI TSC2005 (in N810) touchscreen controllers driven through SPI bus @item National Semiconductor LM8323-controlled qwerty keyboard driven through I@math{^2}C bus @item Secure Digital card connected to OMAP MMC/SD host @item Three OMAP on-chip UARTs and on-chip STI debugging console @item Mentor Graphics "Inventra" dual-role USB controller embedded in a TI TUSB6010 chip - only USB host mode is supported @item TI TMP105 temperature sensor driven through I@math{^2}C bus @item TI TWL92230C power management companion with an RTC on I@math{^2}C bus @item Nokia RETU and TAHVO multi-purpose chips with an RTC, connected through CBUS @end itemize The Luminary Micro Stellaris LM3S811EVB emulation includes the following devices: @itemize @minus @item Cortex-M3 CPU core. @item 64k Flash and 8k SRAM. @item Timers, UARTs, ADC and I@math{^2}C interface. @item OSRAM Pictiva 96x16 OLED with SSD0303 controller on I@math{^2}C bus. @end itemize The Luminary Micro Stellaris LM3S6965EVB emulation includes the following devices: @itemize @minus @item Cortex-M3 CPU core. @item 256k Flash and 64k SRAM. @item Timers, UARTs, ADC, I@math{^2}C and SSI interfaces. @item OSRAM Pictiva 128x64 OLED with SSD0323 controller connected via SSI. @end itemize The Freecom MusicPal internet radio emulation includes the following elements: @itemize @minus @item Marvell MV88W8618 ARM core. @item 32 MB RAM, 256 KB SRAM, 8 MB flash. @item Up to 2 16550 UARTs @item MV88W8xx8 Ethernet controller @item MV88W8618 audio controller, WM8750 CODEC and mixer @item 128×64 display with brightness control @item 2 buttons, 2 navigation wheels with button function @end itemize The Siemens SX1 models v1 and v2 (default) basic emulation. The emulation includes the following elements: @itemize @minus @item Texas Instruments OMAP310 System-on-chip (ARM 925T core) @item ROM and RAM memories (ROM firmware image can be loaded with -pflash) V1 1 Flash of 16MB and 1 Flash of 8MB V2 1 Flash of 32MB @item On-chip LCD controller @item On-chip Real Time Clock @item Secure Digital card connected to OMAP MMC/SD host @item Three on-chip UARTs @end itemize A Linux 2.6 test image is available on the QEMU web site. More information is available in the QEMU mailing-list archive. @c man begin OPTIONS The following options are specific to the ARM emulation: @table @option @item -semihosting Enable semihosting syscall emulation. On ARM this implements the "Angel" interface. Note that this allows guest direct access to the host filesystem, so should only be used with trusted guest OS. @end table @c man end @node ColdFire System emulator @section ColdFire System emulator @cindex system emulation (ColdFire) @cindex system emulation (M68K) Use the executable @file{qemu-system-m68k} to simulate a ColdFire machine. The emulator is able to boot a uClinux kernel. The M5208EVB emulation includes the following devices: @itemize @minus @item MCF5208 ColdFire V2 Microprocessor (ISA A+ with EMAC). @item Three Two on-chip UARTs. @item Fast Ethernet Controller (FEC) @end itemize The AN5206 emulation includes the following devices: @itemize @minus @item MCF5206 ColdFire V2 Microprocessor. @item Two on-chip UARTs. @end itemize @c man begin OPTIONS The following options are specific to the ColdFire emulation: @table @option @item -semihosting Enable semihosting syscall emulation. On M68K this implements the "ColdFire GDB" interface used by libgloss. Note that this allows guest direct access to the host filesystem, so should only be used with trusted guest OS. @end table @c man end @node Cris System emulator @section Cris System emulator @cindex system emulation (Cris) TODO @node Microblaze System emulator @section Microblaze System emulator @cindex system emulation (Microblaze) TODO @node SH4 System emulator @section SH4 System emulator @cindex system emulation (SH4) TODO @node Xtensa System emulator @section Xtensa System emulator @cindex system emulation (Xtensa) Two executables cover simulation of both Xtensa endian options, @file{qemu-system-xtensa} and @file{qemu-system-xtensaeb}. Two different machine types are emulated: @itemize @minus @item Xtensa emulator pseudo board "sim" @item Avnet LX60/LX110/LX200 board @end itemize The sim pseudo board emulation provides an environment similar to one provided by the proprietary Tensilica ISS. It supports: @itemize @minus @item A range of Xtensa CPUs, default is the DC232B @item Console and filesystem access via semihosting calls @end itemize The Avnet LX60/LX110/LX200 emulation supports: @itemize @minus @item A range of Xtensa CPUs, default is the DC232B @item 16550 UART @item OpenCores 10/100 Mbps Ethernet MAC @end itemize @c man begin OPTIONS The following options are specific to the Xtensa emulation: @table @option @item -semihosting Enable semihosting syscall emulation. Xtensa semihosting provides basic file IO calls, such as open/read/write/seek/select. Tensilica baremetal libc for ISS and linux platform "sim" use this interface. Note that this allows guest direct access to the host filesystem, so should only be used with trusted guest OS. @end table @c man end @node System requirements @chapter System requirements @section KVM kernel module On x86_64 hosts, the default set of CPU features enabled by the KVM accelerator require the host to be running Linux v4.5 or newer. The OpteronG[345] CPU models require KVM support for RDTSCP, which was added with Linux 4.5 which is supported by the major distros. And even if RHEL7 has kernel 3.10, KVM there has the required functionality there to make it close to a 4.5 or newer kernel. @include docs/security.texi @include qemu-tech.texi @include qemu-deprecated.texi @include docs/system/build-platforms.texi @include docs/system/license.texi @node Index @appendix Index @menu * Concept Index:: * Function Index:: * Keystroke Index:: * Program Index:: * Data Type Index:: * Variable Index:: @end menu @node Concept Index @section Concept Index This is the main index. Should we combine all keywords in one index? TODO @printindex cp @node Function Index @section Function Index This index could be used for command line options and monitor functions. @printindex fn @node Keystroke Index @section Keystroke Index This is a list of all keystrokes which have a special function in system emulation. @printindex ky @node Program Index @section Program Index @printindex pg @node Data Type Index @section Data Type Index This index could be used for qdev device names and options. @printindex tp @node Variable Index @section Variable Index @printindex vr @bye