One Hat Cyber Team
Your IP :
216.73.216.115
Server IP :
194.44.31.54
Server :
Linux zen.imath.kiev.ua 4.18.0-553.77.1.el8_10.x86_64 #1 SMP Fri Oct 3 14:30:23 UTC 2025 x86_64
Server Software :
Apache/2.4.37 (Rocky Linux) OpenSSL/1.1.1k
PHP Version :
5.6.40
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
usr
/
share
/
doc
/
qemu-kvm
/
system
/
Edit File:
device-emulation.html
<!DOCTYPE html> <!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]--> <!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]--> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Device Emulation — QEMU qemu-kvm-6.2.0-53.module+el8.10.0+2055+8eb7870b.4 documentation</title> <link rel="shortcut icon" href="../_static/qemu_32x32.png"/> <link rel="stylesheet" href="../_static/css/theme.css" type="text/css" /> <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> <link rel="index" title="Index" href="../genindex.html" /> <link rel="search" title="Search" href="../search.html" /> <link rel="next" title="Inter-VM Shared Memory device" href="devices/ivshmem.html" /> <link rel="prev" title="Invocation" href="invocation.html" /> <script src="../_static/js/modernizr.min.js"></script> </head> <body class="wy-body-for-nav"> <div class="wy-grid-for-nav"> <nav data-toggle="wy-nav-shift" class="wy-nav-side"> <div class="wy-side-scroll"> <div class="wy-side-nav-search"> <a href="../index.html" class="icon icon-home"> QEMU <img src="../_static/qemu_128x128.png" class="logo" alt="Logo"/> </a> <div class="version"> 6.2.0 </div> <div role="search"> <form id="rtd-search-form" class="wy-form" action="../search.html" method="get"> <input type="text" name="q" placeholder="Search docs" /> <input type="hidden" name="check_keywords" value="yes" /> <input type="hidden" name="area" value="default" /> </form> </div> </div> <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation"> <p class="caption"><span class="caption-text">Contents:</span></p> <ul class="current"> <li class="toctree-l1"><a class="reference internal" href="../about/index.html">About QEMU</a></li> <li class="toctree-l1 current"><a class="reference internal" href="index.html">System Emulation</a><ul class="current"> <li class="toctree-l2"><a class="reference internal" href="quickstart.html">Quick Start</a></li> <li class="toctree-l2"><a class="reference internal" href="invocation.html">Invocation</a></li> <li class="toctree-l2 current"><a class="current reference internal" href="#">Device Emulation</a><ul> <li class="toctree-l3"><a class="reference internal" href="#common-terms">Common Terms</a><ul> <li class="toctree-l4"><a class="reference internal" href="#device-front-end">Device Front End</a></li> <li class="toctree-l4"><a class="reference internal" href="#device-buses">Device Buses</a></li> <li class="toctree-l4"><a class="reference internal" href="#device-back-end">Device Back End</a></li> <li class="toctree-l4"><a class="reference internal" href="#device-pass-through">Device Pass Through</a></li> </ul> </li> <li class="toctree-l3"><a class="reference internal" href="#emulated-devices">Emulated Devices</a><ul> <li class="toctree-l4"><a class="reference internal" href="devices/ivshmem.html">Inter-VM Shared Memory device</a></li> <li class="toctree-l4"><a class="reference internal" href="devices/net.html">Network emulation</a></li> <li class="toctree-l4"><a class="reference internal" href="devices/nvme.html">NVMe Emulation</a></li> <li class="toctree-l4"><a class="reference internal" href="devices/usb.html">USB emulation</a></li> <li class="toctree-l4"><a class="reference internal" href="devices/vhost-user.html">vhost-user back ends</a></li> <li class="toctree-l4"><a class="reference internal" href="devices/virtio-pmem.html">virtio pmem</a></li> <li class="toctree-l4"><a class="reference internal" href="devices/vhost-user-rng.html">QEMU vhost-user-rng - RNG emulation</a></li> </ul> </li> </ul> </li> <li class="toctree-l2"><a class="reference internal" href="keys.html">Keys in the graphical frontends</a></li> <li class="toctree-l2"><a class="reference internal" href="mux-chardev.html">Keys in the character backend multiplexer</a></li> <li class="toctree-l2"><a class="reference internal" href="monitor.html">QEMU Monitor</a></li> <li class="toctree-l2"><a class="reference internal" href="images.html">Disk Images</a></li> <li class="toctree-l2"><a class="reference internal" href="virtio-net-failover.html">QEMU virtio-net standby (net_failover)</a></li> <li class="toctree-l2"><a class="reference internal" href="linuxboot.html">Direct Linux Boot</a></li> <li class="toctree-l2"><a class="reference internal" href="generic-loader.html">Generic Loader</a></li> <li class="toctree-l2"><a class="reference internal" href="guest-loader.html">Guest Loader</a></li> <li class="toctree-l2"><a class="reference internal" href="barrier.html">QEMU Barrier Client</a></li> <li class="toctree-l2"><a class="reference internal" href="vnc-security.html">VNC security</a></li> <li class="toctree-l2"><a class="reference internal" href="tls.html">TLS setup for network services</a></li> <li class="toctree-l2"><a class="reference internal" href="secrets.html">Providing secret data to QEMU</a></li> <li class="toctree-l2"><a class="reference internal" href="authz.html">Client authorization</a></li> <li class="toctree-l2"><a class="reference internal" href="gdb.html">GDB usage</a></li> <li class="toctree-l2"><a class="reference internal" href="managed-startup.html">Managed start up options</a></li> <li class="toctree-l2"><a class="reference internal" href="bootindex.html">Managing device boot order with bootindex properties</a></li> <li class="toctree-l2"><a class="reference internal" href="cpu-hotplug.html">Virtual CPU hotplug</a></li> <li class="toctree-l2"><a class="reference internal" href="pr-manager.html">Persistent reservation managers</a></li> <li class="toctree-l2"><a class="reference internal" href="targets.html">QEMU System Emulator Targets</a></li> <li class="toctree-l2"><a class="reference internal" href="security.html">Security</a></li> <li class="toctree-l2"><a class="reference internal" href="multi-process.html">Multi-process QEMU</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="../user/index.html">User Mode Emulation</a></li> <li class="toctree-l1"><a class="reference internal" href="../tools/index.html">Tools</a></li> <li class="toctree-l1"><a class="reference internal" href="../interop/index.html">System Emulation Management and Interoperability</a></li> <li class="toctree-l1"><a class="reference internal" href="../specs/index.html">System Emulation Guest Hardware Specifications</a></li> <li class="toctree-l1"><a class="reference internal" href="../devel/index.html">Developer Information</a></li> </ul> </div> </div> </nav> <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"> <nav class="wy-nav-top" aria-label="top navigation"> <i data-toggle="wy-nav-top" class="fa fa-bars"></i> <a href="../index.html">QEMU</a> </nav> <div class="wy-nav-content"> <div class="rst-content"> <div role="navigation" aria-label="breadcrumbs navigation"> <ul class="wy-breadcrumbs"> <li><a href="../index.html">Docs</a> »</li> <li><a href="index.html">System Emulation</a> »</li> <li>Device Emulation</li> <li class="wy-breadcrumbs-aside"> <a href="https://gitlab.com/qemu-project/qemu/blob/master/docs/system/device-emulation.rst" class="fa fa-gitlab"> Edit on GitLab</a> </li> </ul> <hr/> </div> <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article"> <div itemprop="articleBody"> <div class="section" id="device-emulation"> <span id="id1"></span><h1>Device Emulation<a class="headerlink" href="#device-emulation" title="Permalink to this headline">¶</a></h1> <p>QEMU supports the emulation of a large number of devices from peripherals such network cards and USB devices to integrated systems on a chip (SoCs). Configuration of these is often a source of confusion so it helps to have an understanding of some of the terms used to describes devices within QEMU.</p> <div class="section" id="common-terms"> <h2>Common Terms<a class="headerlink" href="#common-terms" title="Permalink to this headline">¶</a></h2> <div class="section" id="device-front-end"> <h3>Device Front End<a class="headerlink" href="#device-front-end" title="Permalink to this headline">¶</a></h3> <p>A device front end is how a device is presented to the guest. The type of device presented should match the hardware that the guest operating system is expecting to see. All devices can be specified with the <code class="docutils literal notranslate"><span class="pre">--device</span></code> command line option. Running QEMU with the command line options <code class="docutils literal notranslate"><span class="pre">--device</span> <span class="pre">help</span></code> will list all devices it is aware of. Using the command line <code class="docutils literal notranslate"><span class="pre">--device</span> <span class="pre">foo,help</span></code> will list the additional configuration options available for that device.</p> <p>A front end is often paired with a back end, which describes how the host’s resources are used in the emulation.</p> </div> <div class="section" id="device-buses"> <h3>Device Buses<a class="headerlink" href="#device-buses" title="Permalink to this headline">¶</a></h3> <p>Most devices will exist on a BUS of some sort. Depending on the machine model you choose (<code class="docutils literal notranslate"><span class="pre">-M</span> <span class="pre">foo</span></code>) a number of buses will have been automatically created. In most cases the BUS a device is attached to can be inferred, for example PCI devices are generally automatically allocated to the next free address of first PCI bus found. However in complicated configurations you can explicitly specify what bus (<code class="docutils literal notranslate"><span class="pre">bus=ID</span></code>) a device is attached to along with its address (<code class="docutils literal notranslate"><span class="pre">addr=N</span></code>).</p> <p>Some devices, for example a PCI SCSI host controller, will add an additional buses to the system that other devices can be attached to. A hypothetical chain of devices might look like:</p> <blockquote> <div>–device foo,bus=pci.0,addr=0,id=foo –device bar,bus=foo.0,addr=1,id=baz</div></blockquote> <p>which would be a bar device (with the ID of baz) which is attached to the first foo bus (foo.0) at address 1. The foo device which provides that bus is itself is attached to the first PCI bus (pci.0).</p> </div> <div class="section" id="device-back-end"> <h3>Device Back End<a class="headerlink" href="#device-back-end" title="Permalink to this headline">¶</a></h3> <p>The back end describes how the data from the emulated device will be processed by QEMU. The configuration of the back end is usually specific to the class of device being emulated. For example serial devices will be backed by a <code class="docutils literal notranslate"><span class="pre">--chardev</span></code> which can redirect the data to a file or socket or some other system. Storage devices are handled by <code class="docutils literal notranslate"><span class="pre">--blockdev</span></code> which will specify how blocks are handled, for example being stored in a qcow2 file or accessing a raw host disk partition. Back ends can sometimes be stacked to implement features like snapshots.</p> <p>While the choice of back end is generally transparent to the guest, there are cases where features will not be reported to the guest if the back end is unable to support it.</p> </div> <div class="section" id="device-pass-through"> <h3>Device Pass Through<a class="headerlink" href="#device-pass-through" title="Permalink to this headline">¶</a></h3> <p>Device pass through is where the device is actually given access to the underlying hardware. This can be as simple as exposing a single USB device on the host system to the guest or dedicating a video card in a PCI slot to the exclusive use of the guest.</p> </div> </div> <div class="section" id="emulated-devices"> <h2>Emulated Devices<a class="headerlink" href="#emulated-devices" title="Permalink to this headline">¶</a></h2> <div class="toctree-wrapper compound"> <ul> <li class="toctree-l1"><a class="reference internal" href="devices/ivshmem.html">Inter-VM Shared Memory device</a></li> <li class="toctree-l1"><a class="reference internal" href="devices/net.html">Network emulation</a></li> <li class="toctree-l1"><a class="reference internal" href="devices/nvme.html">NVMe Emulation</a></li> <li class="toctree-l1"><a class="reference internal" href="devices/usb.html">USB emulation</a></li> <li class="toctree-l1"><a class="reference internal" href="devices/vhost-user.html">vhost-user back ends</a></li> <li class="toctree-l1"><a class="reference internal" href="devices/virtio-pmem.html">virtio pmem</a></li> <li class="toctree-l1"><a class="reference internal" href="devices/vhost-user-rng.html">QEMU vhost-user-rng - RNG emulation</a></li> </ul> </div> </div> </div> </div> </div> <footer> <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> <a href="devices/ivshmem.html" class="btn btn-neutral float-right" title="Inter-VM Shared Memory device" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a> <a href="invocation.html" class="btn btn-neutral" title="Invocation" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a> </div> <hr/> <div role="contentinfo"> <p> © Copyright 2021, The QEMU Project Developers. </p> </div> Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>. <!-- Empty para to force a blank line after "Built with Sphinx ..." --> <p></p> <p>This documentation is for QEMU version 6.2.0.</p> <p><a href="../about/license.html">QEMU and this manual are released under the GNU General Public License, version 2.</a></p> </footer> </div> </div> </section> </div> <script type="text/javascript"> var DOCUMENTATION_OPTIONS = { URL_ROOT:'../', VERSION:'qemu-kvm-6.2.0-53.module+el8.10.0+2055+8eb7870b.4', LANGUAGE:'None', COLLAPSE_INDEX:false, FILE_SUFFIX:'.html', HAS_SOURCE: false, SOURCELINK_SUFFIX: '.txt' }; </script> <script type="text/javascript" src="../_static/jquery.js"></script> <script type="text/javascript" src="../_static/underscore.js"></script> <script type="text/javascript" src="../_static/doctools.js"></script> <script type="text/javascript" src="../_static/js/theme.js"></script> <script type="text/javascript"> jQuery(function () { SphinxRtdTheme.Navigation.enable(true); }); </script> </body> </html>
Simpan