view docs/src/user/glossary.tex @ 7176:0e1838de9db8

Move XendDomainInfo.{create,recreate,parseConfig} to the top level of the
domain. This allows us to refer to them using an import statement, rather than
a from .. import. This is a step towards getting rid of the xroot hack. All
other references to XendDomainInfo methods need to be doubly qualified (once
for the module, once for the class).

Remove XendDomainDict, replacing it with a simple dictionary, folding the
get_by_name method into XendDomain.

Replace XendDomain.refresh_lock with a domains_lock which goes around any
reference to XendDomain.domains or anything that will create or destroy a
domain. This serialises most accesses through XendDomain, ensuring that we will
not return stale state when racing against the watches fired in separate
threads. This should have fixed bugs #270 and #234.

Added a number of domain_get_xyz methods. Those named xyz_nr are to allow
components internal to XendDomain (XendDomainInfo, XendCheckpoint) to call back
into XendDomain without triggering further calls to XendDomain.refresh. The
other methods simply make it clear which fallback behaviour is expected.

Replace XendDomainInfo.domain_exists with XendDomainInfo.domain_by_name; the
internals of this method needed to change to match those changes above, and it
has been a misnomer for some time.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
author emellor@ewan
date Tue Oct 04 02:21:28 2005 +0100 (2005-10-04)
parents 06d84bf87159
children bc7567741a4c
line source
1 \chapter{Glossary of Terms}
3 \begin{description}
5 \item[Atropos] One of the CPU schedulers provided by Xen. Atropos
6 provides domains with absolute shares of the CPU, with timeliness
7 guarantees and a mechanism for sharing out `slack time'.
9 \item[BVT] The BVT scheduler is used to give proportional fair shares
10 of the CPU to domains.
12 \item[Exokernel] A minimal piece of privileged code, similar to a {\bf
13 microkernel} but providing a more `hardware-like' interface to the
14 tasks it manages. This is similar to a paravirtualising VMM like
15 {\bf Xen} but was designed as a new operating system structure,
16 rather than specifically to run multiple conventional OSs.
18 \item[Domain] A domain is the execution context that contains a
19 running {\bf virtual machine}. The relationship between virtual
20 machines and domains on Xen is similar to that between programs and
21 processes in an operating system: a virtual machine is a persistent
22 entity that resides on disk (somewhat like a program). When it is
23 loaded for execution, it runs in a domain. Each domain has a {\bf
24 domain ID}.
26 \item[Domain 0] The first domain to be started on a Xen machine.
27 Domain 0 is responsible for managing the system.
29 \item[Domain ID] A unique identifier for a {\bf domain}, analogous to
30 a process ID in an operating system.
32 \item[Full virtualisation] An approach to virtualisation which
33 requires no modifications to the hosted operating system, providing
34 the illusion of a complete system of real hardware devices.
36 \item[Hypervisor] An alternative term for {\bf VMM}, used because it
37 means `beyond supervisor', since it is responsible for managing
38 multiple `supervisor' kernels.
40 \item[Live migration] A technique for moving a running virtual machine
41 to another physical host, without stopping it or the services
42 running on it.
44 \item[Microkernel] A small base of code running at the highest
45 hardware privilege level. A microkernel is responsible for sharing
46 CPU and memory (and sometimes other devices) between less privileged
47 tasks running on the system. This is similar to a VMM, particularly
48 a {\bf paravirtualising} VMM but typically addressing a different
49 problem space and providing different kind of interface.
51 \item[NetBSD/Xen] A port of NetBSD to the Xen architecture.
53 \item[Paravirtualisation] An approach to virtualisation which requires
54 modifications to the operating system in order to run in a virtual
55 machine. Xen uses paravirtualisation but preserves binary
56 compatibility for user space applications.
58 \item[Shadow pagetables] A technique for hiding the layout of machine
59 memory from a virtual machine's operating system. Used in some {\bf
60 VMMs} to provide the illusion of contiguous physical memory, in
61 Xen this is used during {\bf live migration}.
63 \item[Virtual Machine] The environment in which a hosted operating
64 system runs, providing the abstraction of a dedicated machine. A
65 virtual machine may be identical to the underlying hardware (as in
66 {\bf full virtualisation}, or it may differ, as in {\bf
67 paravirtualisation}).
69 \item[VMM] Virtual Machine Monitor - the software that allows multiple
70 virtual machines to be multiplexed on a single physical machine.
72 \item[Xen] Xen is a paravirtualising virtual machine monitor,
73 developed primarily by the Systems Research Group at the University
74 of Cambridge Computer Laboratory.
76 \item[XenLinux] Official name for the port of the Linux kernel that
77 runs on Xen.
79 \end{description}