Last night I was working on my old machine at home which had Windows XP installed on it. I wondered how I can have Windows 7 up and running on this machine without formatting my drive, since I had only one partition with Windows XP on it. Well I finally managed Windows 7 booting from Windows XP and here are the steps if you want to try it.
Disclaimer: Please be advised that these steps are not endorsed by Microsoft and should be tried at your own risk.
1. You must have a machine running Windows 7.
2. Using the machine already running Windows 7, copy the contents of the C:\Windows\Boot\ folder and BCDEDIT.EXE from C:\Windows\System32 folder to an USB drive.
3. Copy this folder to Windows XP machine. If you installed Windows XP on C:\Windows then copy the Boot folder under C:\Windows. You should now have a C:\Windows\Boot\ folder on your XP machine.
4. Download and install the latest version of EasyBCD on Windows XP machine.
5. Run EasyBCD. When you first start it, it will display an error message stating "EasyBCD has detected that your BCD boot data and MBR are either not from the lates version of Windows vista, or don't yet exist. If you would like Easy BCD to correct these issues press OK.....". Click yes to repair it.
6. When prompted for the letter of a Vista drive, give it the same drive letter as your XP partition. When asked for the boot drive letter, give the letter of the drive with boot.ini and ntldr (most likely C:\).
7. Once in EasyBCD, go to the "Manage Bootloader" page, and select "Reinstall the Vista Bootloader" then "Write MBR" to get the Vista bootloader back.
8. Once it has completed, you'll have a (non-working) entry to boot into Windows Vista. Delete this entry from the "Add/Remove Entries" screen and select "Windows NT/2k/XP/2003" from the drop-down list, give it a name, then press "Add Entry" to finish. add a new entry for Windows XP.
9. Using the BCDEDIT.EXE file on your USB Drive, ensure that the entry for Vista resembles the entries shown below. You can create the entries which do not exist in your machine using BCDEDIT.EXE
Now follow the instructions available here to build a bootable Windows 7 VHD image from a Windows 7 “install.wim” file using diskpart.exe and imagex.exe.