The hack is applicable for the first and second generation of the iPhone, says the
iPhone Dev Team on it's blog. To boot the Linux kernel (2.6 of course), the bootloader Openiboot is used.
Thanks to reverse engineering of the hardwaredrivers the usb port of the iPhone can be reached in Linux. The nand flash memory can be read as well (no writing though). To execute commands the usb connection is used.