Files
xen/extras/mini-os
Keir Fraser 70ad90095b fs-front: cope with a missing fs-backend
Obviously save\restore is not going to work if fs-backend is missing,
but at least the stubdom will be able to work correctly in all the
other cases.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
2009-07-23 08:57:02 +01:00
..
2009-07-15 09:09:48 +01:00
2009-07-15 09:09:48 +01:00
2009-07-15 09:09:48 +01:00
2009-06-27 10:39:10 +01:00
2009-07-15 09:09:48 +01:00
2009-07-15 09:09:48 +01:00
2008-07-04 17:47:11 +01:00
2009-07-15 09:09:48 +01:00
2008-12-18 11:27:37 +00:00
2008-07-04 17:47:11 +01:00
2008-03-19 16:20:44 +00:00
2009-07-15 09:09:48 +01:00

 Minimal OS
 ----------

This shows some of the stuff that any guest OS will have to set up.

This includes:

 * installing a virtual exception table
 * handling virtual exceptions
 * handling asynchronous events
 * enabling/disabling async events
 * parsing start_info struct at start-of-day
 * registering virtual interrupt handlers (for timer interrupts)
 * a simple page and memory allocator
 * minimal libc support
 * minimal Copy-on-Write support
 * network, block, framebuffer support
 * transparent access to FileSystem exports (see tools/fs-back)

- to build it just type make.

- to build it with TCP/IP support, download LWIP 1.3 source code and type

  make LWIPDIR=/path/to/lwip/source

- to build it with much better libc support, see the stubdom/ directory

- to start it do the following in domain0 (assuming xend is running)
  # xm create domain_config

This starts the kernel and prints out a bunch of stuff and then once every
second the system time.

If you have setup a disk in the config file (e.g.
disk = [ 'file:/tmp/foo,hda,r' ] ), it will loop reading it.  If that disk is
writable (e.g. disk = [ 'file:/tmp/foo,hda,w' ] ), it will write data patterns
and re-read them.

If you have setup a network in the config file (e.g. vif = [''] ), it will
print incoming packets.

If you have setup a VFB in the config file (e.g. vfb = ['type=sdl'] ), it will
show a mouse with which you can draw color squares.

If you have compiled it with TCP/IP support, it will run a daytime server on
TCP port 13.