Minimalistic Operating System for Xen
Clone or download
Permalink
Failed to load latest commit information.
arch/x86 arch/mm: fix lazy initialization Jun 14, 2016
console console: provide assured printing Sep 18, 2014
include Update NEC license headers with BSD 3-clause Feb 12, 2018
lib netfront: Support lwIP-only interface builds Jun 13, 2016
xenbus Fix null pointer derefence in non-debug builds Apr 21, 2016
.gitignore Add .gitignore Mar 15, 2014
COPYING license: add copyright notice Mar 26, 2014
Config.mk build: Out of tree building Mar 15, 2014
Makefile shutdown: Add kernel shutdown API [1/3] Mar 17, 2014
README Snapshot from MiniOS (xen.git) Mar 3, 2014
app.lds Snapshot from MiniOS (xen.git) Mar 3, 2014
blkfront.c blkfront: On I/O submission check if enough space is free on the ring Jun 17, 2016
daytime.c Snapshot from MiniOS (xen.git) Mar 3, 2014
domain_config Snapshot from MiniOS (xen.git) Mar 3, 2014
events.c events: Suspend/resume events Mar 17, 2014
fbfront.c Snapshot from MiniOS (xen.git) Mar 3, 2014
gntmap.c Snapshot from MiniOS (xen.git) Mar 3, 2014
gnttab.c netfront: notify backend on RX only on changes Jun 13, 2016
hypervisor.c Snapshot from MiniOS (xen.git) Mar 3, 2014
kernel.c pvh: initial patch of pvh port to mini-os for clickos Jul 24, 2014
lock.c Snapshot from MiniOS (xen.git) Mar 3, 2014
lwip-arch.c netfront/lwip: ifdef for pbuf mem_alloc alignment Jun 17, 2016
lwip-net.c lwip-net: Update license header Mar 8, 2017
main.c lwIP: Updated to a310bc1 (> 1.4.1) Feb 27, 2015
minios.mk pvh: initial patch of pvh port to mini-os for clickos Jul 24, 2014
mm.c mm: Improve memory usage getters torwards portability May 5, 2015
netfront.c netfront: Introduce TX statistics interface Mar 8, 2017
pcifront.c Snapshot from MiniOS (xen.git) Mar 3, 2014
sched.c pvh: initial patch of pvh port to mini-os for clickos Jul 24, 2014
shutdown.c shutdown: Update license description Mar 12, 2018
stub.mk netfront: Introduce TX statistics interface Mar 8, 2017
test.c Snapshot from MiniOS (xen.git) Mar 3, 2014
tpm_tis.c Snapshot from MiniOS (xen.git) Mar 3, 2014
tpmback.c Snapshot from MiniOS (xen.git) Mar 3, 2014
tpmfront.c Snapshot from MiniOS (xen.git) Mar 3, 2014

README

 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.2 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.