Virtual machine vs. virtual OS

UML is technically a virtual OS rather than a virtual machine

No machine emulation layer

UML can talk directly to host OS

pseudo-terminals can log to the host

syslog can go directly to the host

invisible to root

root can't interfere

Notes:

Here, I make a distinction between a virtual OS, which UML is, and a virtual machine, such as VMWare or Bochs, and describe its significance.
A virtual machine separates the host and guest OSes with a hardware emulation layer. This allows a standard OS kernel to run on top of another, but it also isolates them.
UML, as a virtual OS, is aware of the host OS and is able to use all of its capabilities. UML takes advantage of this by having its pseudo-terminals logging directly to files on the host. Similarly, syslog output can go directly to the host by tying the /dev/log socket to a socket on the host. These logging mechanisms are invisible to anyone inside UML, including root, and there is nothing that root inside UML can do to interfere with it.