The management console (mconsole) driver is a new low-level interface into the
kernel. It provides the following capabilities:

Halting and rebooting the kernel

This allows the mconsole user to perform
a kernel shutdown. The system is not shut down cleanly, so the filesystems are
not unmounted cleanly and init has no opportunity to shut down the
system's services.

Plugging and unplugging devices

This is the ability to insert and remove
devices from the running system, which is discussed in detail in section 2.5.
Not all UML drivers currently support devices being inserted and removed - this
is intended to be fixed in the medium-term future.

Providing access to the SysRq driver

The mconsole has a sysrq
command which allows the user to execute the commands provided by the SysRq
driver in the generic kernel.

Enabling and disabling the kernel debugger

The kernel debugger is considered
to be a device, so it can be 'plugged' and 'unplugged' like the other devices.
This is also described in more detail in section 2.5.

These capabilities are accessed through a client which sends requests to the
mconsole driver and receives replies from it through a Unix domain socket. The
existing client is a simple text-mode command-line client that can communicate
with a single UML.