9vx is an implementation of the simple x86 virtual machine vx32 specifically designed for running real Plan9 on other host systems.
A short tutorial
After installing 9vx
* Extract a Plan9 root file system (ISOs from official plan9, 9atom or 9front all should work) into your directory of choice "/path/to/plan9" (9vx defaults to the directory /usr/local/plan9vx)
* make sure that /opt/vx32/bin is in your PATH
* invoke "9vx -r /path/to/plan9 -u glenda" to start as user Glenda, a local system administrator user account which can be used for installing programs and changing etc. If you run the official Plan9 root file system, you will here also get a small tutorial about how to use rio and acme.
* invoke "9vx -r /path/to/plan9" to start as your user (at first run, write /sys/lib/newuser at the rc prompt to set up your environment).
Running Plan9 from a directory can be very handy, especially since you easily can move files into your virtual system from your host system. It does however come with a cost, which is related to user permissions. You will most likely run into issues where directories can not be created since the virtual Plan9 system lacks write permissions.
One alternative to overcome this is to install a Plan9 according to these instructions.