Portable console handling for Mirage applications
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib_test Switch to jbuilder May 31, 2017
lwt require 4.04.2, add safe-string, remove 'open Result', test on 4.06.0… Nov 17, 2017
pkg Add topkg-jbuilder May 31, 2017
src require 4.04.2, add safe-string, remove 'open Result', test on 4.06.0… Nov 17, 2017
udev [xen]: (protocol extension) allow consoles to be given string labels May 24, 2014
unix require 4.04.2, add safe-string, remove 'open Result', test on 4.06.0… Nov 17, 2017
xen require 4.04.2, add safe-string, remove 'open Result', test on 4.06.0… Nov 17, 2017
.gitignore
.travis.yml add 4.05 to test matrix Nov 23, 2017
CHANGES.md Merge branch 'master' of github.com:mirage/mirage-console Jul 15, 2017
LICENSE.md Spring cleanups Nov 11, 2016
Makefile
README.md
mirage-console-lwt.opam require 4.04.2, add safe-string, remove 'open Result', test on 4.06.0… Nov 17, 2017
mirage-console-unix.opam require 4.04.2, add safe-string, remove 'open Result', test on 4.06.0… Nov 17, 2017
mirage-console-xen-backend.opam require 4.04.2, add safe-string, remove 'open Result', test on 4.06.0… Nov 17, 2017
mirage-console-xen-cli.opam require 4.04.2, add safe-string, remove 'open Result', test on 4.06.0… Nov 17, 2017
mirage-console-xen-proto.opam require 4.04.2, add safe-string, remove 'open Result', test on 4.06.0… Nov 17, 2017
mirage-console-xen.opam mirage-console-xen: require mirage-xen 3.0.2+ Nov 18, 2017
mirage-console.opam require 4.04.2, add safe-string, remove 'open Result', test on 4.06.0… Nov 17, 2017

README.md

mirage-console -- implementations of Mirage consoles, for Unix and Xen

%%VERSION%%

The Unix version of the console currently uses standard output. The code is in

unix/console.{ml,mli}

The Xen kernel version of the console uses the primary PV console ring. The code is in

xen/console.{ml,mli}

There is also a Unix userspace utility which creates and services Xen consoles ("console backends"):

Connect a console to a VM like this:

[root@st30 ~]# ./mirage-console connect trusty
Operating on VM domain id: 19
Creating device 1 (linux device /dev/tty1)
{ ref = 128; event_channel = 13 }

Then inside the guest:

[root@trusty ~]# cat > /dev/hvc1
hello
there

And observe in dom0:

hello
there

Then hit Control+C and it all cleans up.