Merry Christmas from all of us at UML development headquarters! We've been
working through the holidays to bring you the finest in UML patches.
Today's patch features the following:
There is now a port channel, which is what used to be known as the socket
channel. UML consoles and serial lines may be attached to a port on the
host and accessed by telnetting to that port. The command line syntax
to attach various things to the host's port 9000 is as follows:
If you attach multiple devices to a port, each telnet to it will attach to
a different device. If you have more telnets than devices. the extra telnets
will block until another telnet exits (i.e. with ^] q). The newly freed
device will then be attached by one of the waiting telnets.
One oddity is that telnet will display the host banner before the UML login
prompt. This is a side-effect of using telnetd to implement the server
side of the telnet protocol.
In order to use this, you will need a new helper (port-helper) which you
should get by grabbing the latest utilities tarball.
The context switching mechanism has been redone so that it's much simpler
and it should be noticeably faster. The old mechanism involved processes
sending SIGTERMs to each other. This involved the tracing thread because
it sees all signals delivered to all of its processes. The new mechanism
involves a process waking another one up by writing a character into a
pipe belonging to it. This involves no signals, there a UML context switch
can involve one host context switch instead of the four required by the
UML can now be shut down by sending a SIGINT or SIGTERM to the tracing
thread. Note that this is a hard machine shutdown. It releases host
resources cleanly, but does not shut down userspace cleanly.
As always, it's available at