mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-21 19:02:25 +00:00
22 lines
3.1 KiB
HTML
22 lines
3.1 KiB
HTML
<?xml version="1.0" encoding="ISO-8859-1"?>
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><link rel="stylesheet" type="text/css" href="libvir.css" /><title>libvir architecture</title></head><body><div id="main"><div id="top"><img src="libvirHeader.png" alt="Libvir the virtualization API" /></div><div id="left"><div class="left"><form action="search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><div class="box"><h2 class="box_title">main menu</h2></div><p><a href="index.html">Home</a></p><p><a href="news.html">Releases</a></p><p><a href="intro.html">Introduction</a></p><p><a href="architecture.html">libvir architecture</a></p><p><a href="downloads.html">Downloads</a></p><p><a href="FAQ.html">FAQ</a></p><p><a href="bugs.html">Reporting bugs and getting help</a></p><p><a style="font-weight:bold" href="html/index.html">API Menu</a></p><p><a href="ChangeLog.html">Recent Changes</a></p><div class="box"><h2 class="box_title">related links</h2></div><p><a href="https://www.redhat.com/archives/libvir-list/">Mail archive</a></p><p><a href="http://www.cl.cam.ac.uk/Research/SRG/netos/xen/index.html">Xen project</a></p><a href="http://xmlsoft.org/"><img src="Libxml2-Logo-90x34.gif" alt="Made with Libxml2 Logo" /></a></div></div><div id="right"><h3 class="title">libvir architecture</h3><p>In a Xen environment, programs using libvir have to execute in "Domain 0",
|
|
which is the primary Linux OS loaded on the machine. That OS kernel provides
|
|
most if not all of the actual drivers used by the set of domains. It also
|
|
runs the Xen Store, a database of informations shared by the hypervisor, the
|
|
kernels, the drivers and the xen daemon. Xend, the xen daemon, also runs in
|
|
Domain0 and supervise the control and execution of the sets of domains. The
|
|
hypervisor, drivers, kernels and daemons communicate though a shared system
|
|
bus implemented in the hypervisor. The figure below tries to provide a view
|
|
of this environment: </p><img src="architecture.gif" alt="The Xen architecture" /><p>The library can be initialized in 2 ways depending on the level of
|
|
priviledge of the embedding program. If it runs with root access,
|
|
virConnectOpen() can be used, it will use a read/write connection to the Xen
|
|
Store and use Xen Hypervisor calls when possible. If it runs without root
|
|
access virConnectOpenReadOnly() should be used, it will try to open the
|
|
read-only socket <code>/var/run/xenstored/socket_ro</code> to connect to the
|
|
Xen Store. In this case use of hypervisor calls and write to the Xen Store
|
|
will not be possible, restraining the amount of APIs available and slowing
|
|
down information gathering about domains. We expect libvir will also conmnect
|
|
to the Xend daemon for some of the domain control operations, though this is
|
|
not the case in the 0.0.1 initial version.</p></div><div id="copyright"></div></div></body></html>
|