projectacrn.github.io/0.4/tools/acrntrace
David B. Kinder 667bdcbc14 publish 0.4
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-12-26 16:36:47 -08:00
..
README.html publish 0.4 2018-12-26 16:36:47 -08:00

README.html

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.


<!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>acrntrace &mdash; Project ACRN™ v 0.4-unstable documentation</title>
  

  
  
    <link rel="shortcut icon" href="../../_static/ACRN-favicon-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="stylesheet" href="../../_static/acrn-custom.css" type="text/css" />
    <link rel="index" title="Index" href="../../genindex.html" />
    <link rel="search" title="Search" href="../../search.html" />
    <link rel="next" title="Developer Guides" href="../../developer-guides/index.html" />
    <link rel="prev" title="acrnlog" href="../acrnlog/README.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"> Project ACRN™
          

          
            
            <img src="../../_static/ACRN_Logo_200w.png" class="logo" alt="Logo"/>
          
          </a>

          
            
            
              <div class="version">
                0.4
              </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">
          
            
            
              
            
            
              <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../../introduction/index.html">Introduction to Project ACRN</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../introduction/index.html#automotive-use-case-example">Automotive Use Case Example</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../introduction/index.html#licensing">Licensing</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../introduction/index.html#acrn-device-model-service-os-and-user-os">ACRN Device Model, Service OS, and User OS</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../introduction/index.html#boot-sequence">Boot Sequence</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../introduction/index.html#acrn-hypervisor-architecture">ACRN Hypervisor Architecture</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../introduction/index.html#acrn-device-model-architecture">ACRN Device Model Architecture</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../introduction/index.html#device-pass-through">Device pass through</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../introduction/index.html#hardware-support-for-device-passthrough">Hardware support for device passthrough</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../introduction/index.html#hypervisor-support-for-device-passthrough">Hypervisor support for device passthrough</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../introduction/index.html#acrn-i-o-mediator">ACRN I/O mediator</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../introduction/index.html#virtio-framework-architecture">Virtio framework architecture</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../getting-started/index.html">Getting Started Guides</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../getting-started/apl-nuc.html">Getting started guide for Intel NUC</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../getting-started/apl-nuc.html#hardware-setup">Hardware setup</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../getting-started/apl-nuc.html#firmware-update-on-the-nuc">Firmware update on the NUC</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../getting-started/apl-nuc.html#software-setup">Software setup</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../getting-started/apl-nuc.html#set-up-a-clear-linux-operating-system">Set up a Clear Linux Operating System</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../getting-started/apl-nuc.html#add-the-acrn-hypervisor-to-the-efi-partition">Add the ACRN hypervisor to the EFI Partition</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../getting-started/apl-nuc.html#acrn-network-bridge">ACRN Network Bridge</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../getting-started/apl-nuc.html#set-up-reference-uos">Set up Reference UOS</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../getting-started/apl-nuc.html#build-acrn-from-source">Build ACRN from Source</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../getting-started/apl-nuc.html#install-build-tools-and-dependencies">Install build tools and dependencies</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../getting-started/apl-nuc.html#build-the-hypervisor-device-model-and-tools">Build the hypervisor, device model and tools</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../getting-started/apl-nuc.html#generate-the-hypervisor-configurations">Generate the hypervisor configurations</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../getting-started/apl-nuc.html#modify-the-hypervisor-configurations">Modify the hypervisor configurations</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../getting-started/apl-nuc.html#create-a-new-default-configuration">Create a new default configuration</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../getting-started/up2.html">Getting started guide for UP2 board</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../getting-started/up2.html#hardware-setup">Hardware setup</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../getting-started/up2.html#connecting-to-the-serial-port">Connecting to the serial port</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../getting-started/up2.html#software-setup">Software setup</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../getting-started/up2.html#up2-serial-port-setting">UP2 serial port setting</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../getting-started/up2.html#up2-block-device">UP2 block device</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../getting-started/up2.html#running-the-hypervisor">Running the hypervisor</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../hardware.html">Supported Hardware</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../hardware.html#intel-apollo-lake-nuc">Intel Apollo Lake NUC</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../hardware.html#up-squared-board">UP Squared board</a></li>
</ul>
</li>
<li class="toctree-l1 current"><a class="reference internal" href="../../user-guides/index.html">User Guides</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="../../user-guides/acrn-shell.html">ACRN Shell Commands</a></li>
<li class="toctree-l2 current"><a class="reference internal" href="../../user-guides/tools.html">Tools</a><ul class="current">
<li class="toctree-l3"><a class="reference internal" href="../README.html">ACRN tools</a></li>
<li class="toctree-l3"><a class="reference internal" href="../acrn-crashlog/README.html">ACRN-Crashlog</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../acrn-crashlog/README.html#introduction">Introduction</a></li>
<li class="toctree-l4"><a class="reference internal" href="../acrn-crashlog/README.html#building">Building</a></li>
<li class="toctree-l4"><a class="reference internal" href="../acrn-crashlog/README.html#installing">Installing</a></li>
<li class="toctree-l4"><a class="reference internal" href="../acrn-crashlog/README.html#enabling-disabling">Enabling/Disabling</a></li>
<li class="toctree-l4"><a class="reference internal" href="../acrn-crashlog/README.html#usage">Usage</a></li>
<li class="toctree-l4"><a class="reference internal" href="../acrn-crashlog/README.html#source-code">Source Code</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../acrn-crashlog/acrnprobe/README.html">acrnprobe</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../acrn-crashlog/acrnprobe/README.html#description">Description</a></li>
<li class="toctree-l4"><a class="reference internal" href="../acrn-crashlog/acrnprobe/README.html#usage">Usage</a></li>
<li class="toctree-l4"><a class="reference internal" href="../acrn-crashlog/acrnprobe/README.html#architecture">Architecture</a></li>
<li class="toctree-l4"><a class="reference internal" href="../acrn-crashlog/acrnprobe/README.html#source-files">Source files</a></li>
<li class="toctree-l4"><a class="reference internal" href="../acrn-crashlog/acrnprobe/README.html#configuration-files">Configuration files</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../acrn-crashlog/acrnprobe/conf.html">acrnprobe Configuration</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../acrn-crashlog/acrnprobe/conf.html#description">Description</a></li>
<li class="toctree-l4"><a class="reference internal" href="../acrn-crashlog/acrnprobe/conf.html#layout">Layout</a></li>
<li class="toctree-l4"><a class="reference internal" href="../acrn-crashlog/acrnprobe/conf.html#properties-of-group-members">Properties of group members</a></li>
<li class="toctree-l4"><a class="reference internal" href="../acrn-crashlog/acrnprobe/conf.html#crash-tree-in-acrnprobe">Crash tree in acrnprobe</a></li>
<li class="toctree-l4"><a class="reference internal" href="../acrn-crashlog/acrnprobe/conf.html#sections">Sections</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../acrn-crashlog/usercrash/README.html">usercrash</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../acrn-crashlog/usercrash/README.html#description">Description</a></li>
<li class="toctree-l4"><a class="reference internal" href="../acrn-crashlog/usercrash/README.html#design">Design</a></li>
<li class="toctree-l4"><a class="reference internal" href="../acrn-crashlog/usercrash/README.html#usage">Usage</a></li>
<li class="toctree-l4"><a class="reference internal" href="../acrn-crashlog/usercrash/README.html#souce-code">Souce Code</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../acrn-manager/README.html">acrnctl and acrnd</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../acrn-manager/README.html#description">Description</a></li>
<li class="toctree-l4"><a class="reference internal" href="../acrn-manager/README.html#usage">Usage</a></li>
<li class="toctree-l4"><a class="reference internal" href="../acrn-manager/README.html#acrnd">acrnd</a></li>
<li class="toctree-l4"><a class="reference internal" href="../acrn-manager/README.html#build-and-install">Build and Install</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../acrnlog/README.html">acrnlog</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../acrnlog/README.html#description">Description</a></li>
<li class="toctree-l4"><a class="reference internal" href="../acrnlog/README.html#usage">Usage</a></li>
<li class="toctree-l4"><a class="reference internal" href="../acrnlog/README.html#build-and-install">Build and Install</a></li>
</ul>
</li>
<li class="toctree-l3 current"><a class="current reference internal" href="#">acrntrace</a><ul>
<li class="toctree-l4"><a class="reference internal" href="#description">Description</a></li>
<li class="toctree-l4"><a class="reference internal" href="#usage">Usage</a></li>
<li class="toctree-l4"><a class="reference internal" href="#build-and-install">Build and Install</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../developer-guides/index.html">Developer Guides</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../developer-guides/hld/index.html">High-Level Design Guides</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/hld/hld-overview.html">Overview</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-overview.html#acrn-supported-use-cases">ACRN Supported Use Cases</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-overview.html#hardware-requirements">Hardware Requirements</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-overview.html#acrn-architecture">ACRN Architecture</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-overview.html#hypervisor">Hypervisor</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-overview.html#sos">SOS</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-overview.html#uos">UOS</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-overview.html#freedom-from-interference">Freedom From Interference</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-overview.html#boot-flow">Boot Flow</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-overview.html#power-management">Power Management</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/hld/hld-hypervisor.html">Hypervisor</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hv-startup.html">Hypervisor Startup</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hv-cpu-virt.html">CPU Virtualization</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hv-memmgt.html">Memory management</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hv-io-emulation.html">I/O Emulation</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hv-interrupt.html">Physical Interrupt</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hv-timer.html">Timer</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hv-virt-interrupt.html">Virtual Interrupt</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hv-vt-d.html">VT-d</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hv-dev-passthrough.html">Device Passthrough</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hv-pm.html">Power Management</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hv-console.html">Console, Shell, and vUART</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hv-hypercall.html">Hypercall / VHM upcall</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hv-config.html">Compile-time configuration</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/hld/hld-devicemodel.html">Device Model</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-devicemodel.html#configuration">Configuration</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-devicemodel.html#dm-initialization">DM Initialization</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-devicemodel.html#vhm">VHM</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-devicemodel.html#i-o-emulation-in-sos">I/O Emulation in SOS</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-devicemodel.html#device-emulation">Device Emulation</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-devicemodel.html#isa-and-pci-emulation">ISA and PCI Emulation</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-devicemodel.html#acpi-virtualization">ACPI Virtualization</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-devicemodel.html#pm-in-device-model">PM in Device Model</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/hld/hld-emulated-devices.html">Emulated Devices</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/usb-virt-hld.html">USB Virtualization</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/uart-virt-hld.html">UART virtualization</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/watchdog-hld.html">Watchdoc virtualization</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/random-virt-hld.html">Random device virtualization</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-APL_GVT-g.html">GVT-g GPU Virtualization</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/hld/hld-virtio-devices.html">Virtio Devices</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-virtio-devices.html#virtio-introduction">Virtio introduction</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-virtio-devices.html#key-concepts">Key Concepts</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-virtio-devices.html#virtio-frameworks">Virtio Frameworks</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-virtio-devices.html#virtio-apis">Virtio APIs</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-virtio-devices.html#supported-virtio-devices">Supported Virtio Devices</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/hld/hld-vm-management.html">VM Management</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-vm-management.html#vm-state">VM state</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-vm-management.html#scenarios-of-vm-state-change">Scenarios of VM state change</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-vm-management.html#vm-state-management">VM State management</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/hld/hld-power-management.html">Power Management</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-power-management.html#p-state-c-state-management">P-state/C-state management</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-power-management.html#s3-s5">S3/S5</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/hld/hld-trace-log.html">Tracing and Logging</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-trace-log.html#shared-buffer">Shared Buffer</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-trace-log.html#acrn-trace">ACRN Trace</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-trace-log.html#acrn-log">ACRN Log</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/hld/hld-vsbl.html">Virtual Bootloader</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/hld/hld-security.html">Security</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-security.html#introduction">Introduction</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-security.html#background">Background</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/hld/hld-security.html#acrn-high-level-security-architecture">ACRN High-Level Security Architecture</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../developer-guides/primer.html">Developer Primer</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/primer.html#source-tree-structure">Source Tree Structure</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#acrn-hypervisor-source-tree">ACRN hypervisor source tree</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#acrn-device-model-source-tree">ACRN Device Model source tree</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#acrn-tools-source-tree">ACRN Tools source tree</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#acrn-documentation-source-tree">ACRN documentation source tree</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/primer.html#cpu-virtualization">CPU virtualization</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#host-gdt">Host GDT</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#host-idt">Host IDT</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#guest-smp-booting">Guest SMP Booting</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#vmx-configuration">VMX configuration</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#cpuid-and-guest-tsc-calibration">CPUID and Guest TSC calibration</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#rdtsc-rdtscp">RDTSC/RDTSCP</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#cr-register-virtualization">CR Register virtualization</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#msr-bitmap">MSR BITMAP</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#i-o-bitmap">I/O BITMAP</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#exceptions">Exceptions</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/primer.html#memory-virtualization">Memory virtualization</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#physical-memory-layout">Physical Memory Layout</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#pv-mmu-memory-mapping-in-the-hypervisor">PV (MMU) Memory Mapping in the Hypervisor</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#pv-mmu-memory-mapping-in-vms">PV (MMU) Memory Mapping in VMs</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#host-guest-ept-memory-mapping">Host-Guest (EPT) Memory Mapping</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/primer.html#graphic-mediation">Graphic mediation</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/primer.html#i-o-emulation">I/O emulation</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#device-assignment-management">Device Assignment Management</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#pio-mmio-trap-flow">PIO/MMIO trap Flow</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/primer.html#virtual-interrupt">Virtual interrupt</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#virtual-lapic">Virtual LAPIC</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#virtual-ioapic">Virtual IOAPIC</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#virtual-pic">Virtual PIC</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#virtual-interrupt-injection">Virtual Interrupt Injection</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/primer.html#vt-x-and-vt-d">VT-x and VT-d</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/primer.html#hypercall">Hypercall</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/primer.html#device-emulation">Device emulation</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/primer.html#virtio-devices">Virtio Devices</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#virtio-rnd">Virtio-rnd</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#virtio-blk">Virtio-blk</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#virtio-net">Virtio-net</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/primer.html#virtio-console">Virtio-console</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../developer-guides/GVT-g-porting.html">GVT-g Enabling and Porting Guide</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/GVT-g-porting.html#introduction">Introduction</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/GVT-g-porting.html#purpose-of-this-document">Purpose of this document</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/GVT-g-porting.html#overall-components">Overall Components</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/GVT-g-porting.html#core-scenario-interaction-sequences">Core scenario interaction sequences</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/GVT-g-porting.html#vgpu-creation-scenario">vGPU creation scenario</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/GVT-g-porting.html#vgpu-destroy-scenario">vGPU destroy scenario</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/GVT-g-porting.html#vgpu-pci-configure-space-write-scenario">vGPU pci configure space write scenario</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/GVT-g-porting.html#pci-configure-space-read-scenario">pci configure space read scenario</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/GVT-g-porting.html#ggtt-read-write-scenario">GGTT read/write scenario</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/GVT-g-porting.html#mmio-read-write-scenario">MMIO read/write scenario</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/GVT-g-porting.html#ppgtt-write-protection-page-set-unset-scenario">PPGTT write protection page set/unset scenario</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/GVT-g-porting.html#ppgtt-write-protection-page-write">PPGTT write protection page write</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/GVT-g-porting.html#api-details">API details</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../developer-guides/trusty.html">Trusty TEE</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/trusty.html#introduction">Introduction</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/trusty.html#trusty-architecture">Trusty Architecture</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/trusty.html#trusty-specific-hypercalls">Trusty specific Hypercalls</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/trusty.html#trusty-boot-flow">Trusty Boot flow</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/trusty.html#ept-hierarchy">EPT Hierarchy</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/trusty.html#design">Design</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/trusty.html#benefit">Benefit</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/trusty.html#api">API</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../developer-guides/l1tf.html">L1 Terminal Fault Mitigation</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/l1tf.html#overview">Overview</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/l1tf.html#l1tf-problem-in-acrn">L1TF Problem in ACRN</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/l1tf.html#guest-hypervisor-attack">Guest -&gt; hypervisor Attack</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/l1tf.html#guest-guest-attack">Guest -&gt; guest Attack</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/l1tf.html#normal-world-secure-world-attack">Normal_world -&gt; Secure_world Attack</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/l1tf.html#affected-processors">Affected Processors</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/l1tf.html#l1tf-mitigation-in-acrn">L1TF Mitigation in ACRN</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/l1tf.html#l1d-flush-on-vmentry">L1D flush on VMENTRY</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/l1tf.html#ept-sanitization">EPT Sanitization</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/l1tf.html#put-secret-data-into-uncached-memory">Put Secret Data into Uncached Memory</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/l1tf.html#l1d-flush-on-world-switch">L1D flush on World Switch</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/l1tf.html#core-based-scheduling">Core-based scheduling</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/l1tf.html#mitigation-recommendations">Mitigation Recommendations</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/l1tf.html#mitigation-status">Mitigation Status</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../developer-guides/modularity.html">ACRN Hypervisor: Modular Design</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/modularity.html#overview">Overview</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/modularity.html#principles">Principles</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/modularity.html#minimizing-cyclic-dependencies">Minimizing Cyclic Dependencies</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/modularity.html#measuring-complexity">Measuring Complexity</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/modularity.html#architecture">Architecture</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/modularity.html#references">References</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../api/index.html">API Documentation</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../api/hypercall_api.html">Hypercall APIs</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../api/devicemodel_api.html">Device Model APIs</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../api/GVT-g_api.html">ACRN GVT-g APIs</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../api/GVT-g_api.html#core-driver-infrastructure">Core Driver Infrastructure</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../api/GVT-g_api.html#vhm-apis-called-from-acrngt">VHM APIs called from AcrnGT</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../api/GVT-g_api.html#acrngt-mediated-pass-through-mpt-interface">AcrnGT mediated pass-through (MPT) interface</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../api/GVT-g_api.html#gvt-g-intel-gvt-ops-interface">GVT-g intel_gvt_ops interface</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../api/GVT-g_api.html#acrngt-sysfs-interface">AcrnGT sysfs interface</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../reference/kconfig/index.html">Configuration Symbol Reference</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../reference/kconfig/index.html#introduction">Introduction</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../reference/kconfig/index.html#supported-options">Supported Options</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../developer-guides/index.html#contributing-to-the-project">Contributing to the project</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/contribute_guidelines.html">Contribution Guidelines</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/contribute_guidelines.html#licensing">Licensing</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/contribute_guidelines.html#developer-certification-of-origin-dco">Developer Certification of Origin (DCO)</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/contribute_guidelines.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/contribute_guidelines.html#repository-layout">Repository layout</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/contribute_guidelines.html#submitting-issues">Submitting Issues</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/contribute_guidelines.html#contribution-tools-and-git-setup">Contribution Tools and Git Setup</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/contribute_guidelines.html#coding-style">Coding Style</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/contribute_guidelines.html#contribution-workflow">Contribution Workflow</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/contribute_guidelines.html#commit-guidelines">Commit Guidelines</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/doc_guidelines.html">Documentation Guidelines</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/doc_guidelines.html#headings">Headings</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/doc_guidelines.html#content-highlighting">Content Highlighting</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/doc_guidelines.html#lists">Lists</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/doc_guidelines.html#multi-column-lists">Multi-column lists</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/doc_guidelines.html#file-names-and-commands">File names and Commands</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/doc_guidelines.html#internal-cross-reference-linking">Internal Cross-Reference Linking</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/doc_guidelines.html#non-ascii-characters">Non-ASCII Characters</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/doc_guidelines.html#code-and-command-examples">Code and Command Examples</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/doc_guidelines.html#tabs-spaces-and-indenting">Tabs, spaces, and indenting</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/doc_guidelines.html#drawings">Drawings</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../developer-guides/graphviz.html">Drawings using graphviz</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/graphviz.html#simple-directed-graph">Simple directed graph</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/graphviz.html#adding-edge-labels">Adding edge labels</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/graphviz.html#tables">Tables</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../developer-guides/graphviz.html#finite-state-machine">Finite-State Machine</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../tutorials/index.html">Tutorials</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/docbuild.html">ACRN documentation generation</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docbuild.html#documentation-overview">Documentation overview</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docbuild.html#set-up-the-documentation-working-folders">Set up the documentation working folders</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docbuild.html#installing-the-documentation-tools">Installing the documentation tools</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docbuild.html#documentation-presentation-theme">Documentation presentation theme</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docbuild.html#running-the-documentation-processors">Running the documentation processors</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docbuild.html#publishing-content">Publishing content</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docbuild.html#document-versioning">Document Versioning</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docbuild.html#filtering-expected-warnings">Filtering expected warnings</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/static-ip.html">Using a static IP address</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/static-ip.html#acrn-network-setup">ACRN Network Setup</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/static-ip.html#setting-up-the-static-ip-address">Setting up the static IP address</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/static-ip.html#activate-the-new-configuration">Activate the new configuration</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/using_partition_mode_on_up2.html">Using partition mode on UP2</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/using_partition_mode_on_up2.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/using_partition_mode_on_up2.html#build-kernel-and-modules-for-partition-mode-uos">Build kernel and modules for partition mode UOS</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/using_partition_mode_on_up2.html#enable-partition-mode-in-acrn-hypervisor">Enable partition mode in ACRN hypervisor</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/using_partition_mode_on_up2.html#switch-between-privileged-vms">Switch between privileged VMs</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/using_ubuntu_as_sos.html">Using Ubuntu as the Service OS</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/using_ubuntu_as_sos.html#install-ubuntu-natively">Install Ubuntu (natively)</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/using_ubuntu_as_sos.html#install-acrn">Install ACRN</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/using_ubuntu_as_sos.html#install-the-service-os-kernel">Install the Service OS kernel</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/using_ubuntu_as_sos.html#prepare-the-user-os-uos">Prepare the User OS (UOS)</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/using_ubuntu_as_sos.html#start-the-user-os-uos">Start the User OS (UOS)</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/using_ubuntu_as_sos.html#enabling-network-sharing">Enabling network sharing</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/using_ubuntu_as_sos.html#enabling-usb-keyboard-and-mouse">Enabling USB keyboard and mouse</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../release_notes.html">Release Notes</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../release_notes_0.4.html">ACRN v0.4 (Dec 2018)</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../release_notes_0.4.html#version-0-4-new-features">Version 0.4 new features</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../release_notes_0.4.html#fixed-issues">Fixed Issues</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../release_notes_0.4.html#known-issues">Known Issues</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../release_notes_0.4.html#change-log">Change Log</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../release_notes_0.3.html">ACRN v0.3 (Nov 2018)</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../release_notes_0.3.html#version-0-3-new-features">Version 0.3 new features</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../release_notes_0.3.html#fixed-issues">Fixed Issues</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../release_notes_0.3.html#known-issues">Known Issues</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../release_notes_0.3.html#change-log">Change Log</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../release_notes_0.2.html">ACRN v0.2 (Sep 2018)</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../release_notes_0.2.html#version-0-2-new-features">Version 0.2 new features</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../release_notes_0.2.html#vt-x-vt-d">VT-x, VT-d</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../release_notes_0.2.html#pic-ioapic-msi-msi-x-pci-lapic">PIC/IOAPIC/MSI/MSI-X/PCI/LAPIC</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../release_notes_0.2.html#ethernet">Ethernet</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../release_notes_0.2.html#storage-emmc">Storage (eMMC)</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../release_notes_0.2.html#usb-xdci">USB (xDCI)</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../release_notes_0.2.html#usb-mediator-xhci-and-drd">USB Mediator (xHCI and DRD)</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../release_notes_0.2.html#csme">CSME</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../release_notes_0.2.html#wifi">WiFi</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../release_notes_0.2.html#ipu-mipi-cs2-hdmi-in">IPU (MIPI-CS2, HDMI-in)</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../release_notes_0.2.html#bluetooth">Bluetooth</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../release_notes_0.2.html#gpu-preemption">GPU   Preemption</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../release_notes_0.2.html#gpu-display-surface-sharing-via-hyper-dma">GPU  display surface sharing via Hyper DMA</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../release_notes_0.2.html#s3">S3</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../release_notes_0.2.html#fixed-issues">Fixed Issues</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../release_notes_0.2.html#known-issues">Known Issues</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../release_notes_0.2.html#change-log">Change Log</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../release_notes_0.1.html">ACRN v0.1 (July 2018)</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../release_notes_0.1.html#version-0-1-new-features">Version 0.1 new features</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../release_notes_0.1.html#hardware-support">Hardware Support</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../release_notes_0.1.html#gvt-g-for-acrn">GVT-g for ACRN</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../release_notes_0.1.html#virtio-standard-is-supported">Virtio standard is supported</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../release_notes_0.1.html#device-pass-through-support">Device pass-through support</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../release_notes_0.1.html#hypervisor-configuration">Hypervisor configuration</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../release_notes_0.1.html#new-acrn-tools">New ACRN tools</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../release_notes_0.1.html#known-issues">Known Issues</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../release_notes_0.1.html#change-log">Change Log</a></li>
</ul>
</li>
</ul>
</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">Project ACRN™</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> &raquo;</li>
        
          <li><a href="../../user-guides/index.html">User Guides</a> &raquo;</li>
        
          <li><a href="../../user-guides/tools.html">Tools</a> &raquo;</li>
        
      <li>acrntrace</li>
    
    
      <li class="wy-breadcrumbs-aside">
        
            
        
      </li>
    
  </ul>

  
  <hr/>
</div>
          <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
           <div itemprop="articleBody">
            
  <div class="section" id="acrntrace">
<span id="id1"></span><h1>acrntrace<a class="headerlink" href="#acrntrace" title="Permalink to this headline">¶</a></h1>
<div class="section" id="description">
<h2>Description<a class="headerlink" href="#description" title="Permalink to this headline">¶</a></h2>
<p><code class="docutils literal notranslate"><span class="pre">acrntrace</span></code> is a tool running on the Service OS (SOS) to capture trace data.
A <code class="docutils literal notranslate"><span class="pre">scripts</span></code> directory includes scripts to analyze the trace data.</p>
</div>
<div class="section" id="usage">
<h2>Usage<a class="headerlink" href="#usage" title="Permalink to this headline">¶</a></h2>
<p>The <code class="docutils literal notranslate"><span class="pre">acrntrace</span></code> tool runs on the Service OS (SOS) to capture trace data and
output to trace file under <code class="docutils literal notranslate"><span class="pre">./acrntrace</span></code> with raw (binary) data format.</p>
<p>Options:</p>
<table class="docutils option-list" frame="void" rules="none">
<col class="option" />
<col class="description" />
<tbody valign="top">
<tr><td class="option-group">
<kbd><span class="option">-h</span></kbd></td>
<td>print this message</td></tr>
<tr><td class="option-group">
<kbd><span class="option">-i <var>period</var></span></kbd></td>
<td>specify polling interval in milliseconds [1-999]</td></tr>
<tr><td class="option-group">
<kbd><span class="option">-t <var>max_time</var></span></kbd></td>
<td>max time to capture trace data (in second)</td></tr>
<tr><td class="option-group">
<kbd><span class="option">-c</span></kbd></td>
<td>clear the buffered old data</td></tr>
</tbody>
</table>
<p>The <code class="docutils literal notranslate"><span class="pre">acrntrace_format.py</span></code> is a offline tool for parsing trace data (as output
by acrntrace) to human-readable formats based on given format.</p>
<p>Heres an explanation of the tools parameters:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>acrntrace_format.py [options] [formats] [trace_data]
</pre></div>
</div>
<p>Options:</p>
<table class="docutils option-list" frame="void" rules="none">
<col class="option" />
<col class="description" />
<tbody valign="top">
<tr><td class="option-group">
<kbd><span class="option">-h</span></kbd></td>
<td>print this message</td></tr>
</tbody>
</table>
<p><em>formats</em> file specifies the rules to reformat the <em>trace_data</em> collected by
<code class="docutils literal notranslate"><span class="pre">acrntrace</span></code> into a human-readable text form. The rules in this file are of
the form:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">event_id</span>  <span class="n">text_format_string</span>
</pre></div>
</div>
<p>The text_format_string may include format specifiers, such as
<code class="docutils literal notranslate"><span class="pre">%(cpu)d</span></code>, <code class="docutils literal notranslate"><span class="pre">%(tsc)d</span></code>, <code class="docutils literal notranslate"><span class="pre">%(event)d</span></code>, <code class="docutils literal notranslate"><span class="pre">%(1)d</span></code>, and <code class="docutils literal notranslate"><span class="pre">%(2)d</span></code>.
The d format specifier outputs in decimal, alternatively x will
output in hexadecimal and o will output in octal.</p>
<p>These respectively correspond to the CPU number (cpu), timestamp
counter (tsc), event ID (event) and the data logged in the trace file.
There can be only one such rule for each type of event.</p>
<p>An example <em>formats_file</em> is available in the acrn_hypervisor repo in
<code class="docutils literal notranslate"><span class="pre">hypervisor/tools/acrntrace/scripts/formats</span></code>.</p>
<p>The <code class="docutils literal notranslate"><span class="pre">acrnalyze.py</span></code> is a offline tool to analyze trace data (as output by
acrntrace) based on given analyzer, such as <code class="docutils literal notranslate"><span class="pre">vm_exit</span></code> or <code class="docutils literal notranslate"><span class="pre">irq</span></code>.</p>
<p>Options:</p>
<table class="docutils option-list" frame="void" rules="none">
<col class="option" />
<col class="description" />
<tbody valign="top">
<tr><td class="option-group">
<kbd><span class="option">-h</span></kbd></td>
<td>print this message</td></tr>
<tr><td class="option-group" colspan="2">
<kbd><span class="option">-i</span>, <span class="option">--ifile=<var>string</var></span></kbd></td>
</tr>
<tr><td>&#160;</td><td>input file name</td></tr>
<tr><td class="option-group" colspan="2">
<kbd><span class="option">-o</span>, <span class="option">--ofile=<var>string</var></span></kbd></td>
</tr>
<tr><td>&#160;</td><td>output filename</td></tr>
<tr><td class="option-group" colspan="2">
<kbd><span class="option">-f</span>, <span class="option">--frequency=<var>unsigned_int</var></span></kbd></td>
</tr>
<tr><td>&#160;</td><td>TSC frequency in MHz</td></tr>
<tr><td class="option-group">
<kbd><span class="option">--vm_exit</span></kbd></td>
<td>generate a vm_exit report</td></tr>
<tr><td class="option-group">
<kbd><span class="option">--irq</span></kbd></td>
<td>generate an IRQ-related report</td></tr>
</tbody>
</table>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p>We depend on TSC frequency to do time-based analysis. Please configure
the right TSC frequency that acrn runs on. TSC frequency can be obtained
from the ACRN console log (calibrate_tsc, tsc_hz=xxx) when the hypervisor boots.</p>
<p class="last">The tool does not take into account CPU frequency variation that can
occur during normal operation (aka CPU throttling) on the processor which
doesnt support for invariant TSC. The results may therefore not be
completely accurate in that regard.</p>
</div>
<p>Heres a typical use of <code class="docutils literal notranslate"><span class="pre">acrntrace</span></code> to capture trace data from the SOS,
converting the binary data to human-readable form, copying the processed trace
data to your linux system, and running the analysis tool.</p>
<ol class="arabic">
<li><p class="first">On the SOS, clear buffers before starting a trace, with:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span># acrntrace -c
</pre></div>
</div>
</li>
<li><p class="first">Start capturing buffered trace data with:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span># acrntrace
</pre></div>
</div>
<p>Trace files are created under current directory where we launch acrntrace,
with a date-time-based directory name such as <code class="docutils literal notranslate"><span class="pre">./acrntrace/20171115-101605</span></code></p>
</li>
<li><p class="first">When done, stop a running <code class="docutils literal notranslate"><span class="pre">acrntrace</span></code>, with:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>q &lt;enter&gt;
</pre></div>
</div>
</li>
<li><p class="first">Convert trace data to human-readable format, with:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span># acrntrace_format.py formats trace_data
</pre></div>
</div>
<p>Trace data will be converted to human-readable format based on given format
and printed to stdout.</p>
</li>
<li><p class="first">Analysis of the collected data is done on a Linux PC, so youll need
to copy the collected trace data to your Linux system (using <code class="docutils literal notranslate"><span class="pre">scp</span></code> is
recommended):</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span># scp -r ./acrntrace/20171115-101605/ \
    username@hostname:/home/username/trace_data
</pre></div>
</div>
<p>Replace username and hostname with appropriate values.</p>
</li>
<li><p class="first">On the Linux system, run the provided Python3 script to analyze the
<code class="docutils literal notranslate"><span class="pre">vm_exits</span></code>, <code class="docutils literal notranslate"><span class="pre">irq</span></code>:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span># acrnalyze.py -i /home/xxxx/trace_data/20171115-101605/0 \
     -o /home/xxxx/trace_data/20171115-101605/cpu0 --vm_exit --irq
</pre></div>
</div>
<ul class="simple">
<li>Analysis report is written to stdout, or to a CSV file if
a filename is specified using <code class="docutils literal notranslate"><span class="pre">-o</span> <span class="pre">filename</span></code>.</li>
<li>The scripts require Python3.</li>
</ul>
</li>
</ol>
</div>
<div class="section" id="build-and-install">
<h2>Build and Install<a class="headerlink" href="#build-and-install" title="Permalink to this headline">¶</a></h2>
<p>The source files for <code class="docutils literal notranslate"><span class="pre">acrntrace</span></code> are in the <code class="docutils literal notranslate"><span class="pre">tools/acrntrace</span></code> folder,
and can be built and installed using:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span># make
# make install
</pre></div>
</div>
<p>The processing scripts are in <code class="docutils literal notranslate"><span class="pre">tools/acrntrace/scripts</span></code> and need to be
copied to and run on your Linux system.</p>
</div>
</div>


           </div>
           
          </div>
          <footer>
  

  <hr/>

  <div role="contentinfo">
    <p>
        &copy; Copyright 2018, Project ACRN.
      Last updated on Dec 26, 2018.

    </p>
  </div> 

</footer>

        </div>
      </div>

    </section>

  </div>
  
  <div class="rst-versions" data-toggle="rst-versions" role="note" aria-label="versions">
    <span class="rst-current-version" data-toggle="rst-current-version">
      <span class="fa fa-book"> Project ACRN</span>
      v: 0.4
      <span class="fa fa-caret-down"></span>
    </span>
    <div class="rst-other-versions">
      <dl>
        <dt>Versions</dt>
        
          <dd><a href="/latest/">latest</a></dd>
        
          <dd><a href="/0.3/">0.3</a></dd>
        
          <dd><a href="/0.2/">0.2</a></dd>
        
          <dd><a href="/0.1/">0.1</a></dd>
        
      </dl>
      <dl>
        <dt>On projectacrn.org</dt>
          <dd>
            <a href="https://www.projectacrn.org/">Project Home</a>
          </dd>
          <dd>
            <a href="https://github.com/projectacrn/acrn-hypervisor/wiki">Wiki</a>
          </dd>
      </dl>
    </div>
  </div>

  

    <script type="text/javascript">
        var DOCUMENTATION_OPTIONS = {
            URL_ROOT:'../../',
            VERSION:'v 0.4-unstable',
            LANGUAGE:'None',
            COLLAPSE_INDEX:false,
            FILE_SUFFIX:'.html',
            HAS_SOURCE:  true,
            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/acrn-custom.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>