PRoot is a user-space implementation of chroot, mount --bind, and binfmt_misc.
This means that users don't need any privileges or setup to do things like
using an arbitrary directory as the new root filesystem, making files
accessible somewhere else in the filesystem hierarchy, or executing programs
built for another CPU architecture transparently through QEMU user-mode.
Also, developers can use PRoot as a generic Linux process instrumentation
engine thanks to its extension mechanism, see CARE for an example.
Technically PRoot relies on ptrace, an unprivileged system-call available
in every Linux kernel. |