"A chroot on Unix operating systems is an operation that changes the apparent root directory for the current running process and its children" - http://en.wikipedia.org/wiki/Chroot
This method of running linux distros with android has been around for some time. I have worked on my scripts to make the process more user friendly and give you far more options from the word go.
The scripts start by mounting the ubuntu image file within the android file system and then mounts the sdcard and if ou have it internal memory within the ubuntu file system.
Chroot is then used to change the root directory to that of the mounted ubuntu and a bash shell is then opened to allow you to control Ubuntu this is kind of like 'booting' the OS.
The likes of VNC and SSHD are then set up when ubuntu is 'booted' to allow you to connect to the GUI if you require it.