Do you want Linux or XP to control the boot process? With linux you can use lilo or grub as your boot loader and they will both detect your pre-existing XP installation, when you install Linux, and load it into their menus.
If you want XP to control the initial boot process you can do that too, but it requires a little extra work. What I did on one machine was install the Windows operating system, then Linux. When Mandrake's install process asked if I wanted to create a boot disk I said yes and used that to boot the first time after installing Linux. After logging in, I opened a terminal session and logged in as root in the terminal session. Then I chdir to the Windows C: drive (/mnt/win_c in this case) and issued the following command from the # prompt:
#dd if=/dev/hdb1 of=bootsect.lnx bs=512 count=1
In my case the second hard drive (hdb) partition number 1 was where I told the Linux installation routine to put its boot sector. bootsect.lnx is a file for the XP boot loader to load. The next step can be done from either XP or Linux. Edit the boot.ini file in the root of C: and add the following line:
C:\Bootsect.lnx="Mandrake Linux"
The next time you restart your machine without the boot disk you will have an option Mandrake Linux which will start linux instead of XP. (If you edit boot.ini in XP, open a command window and issue the command
C:\attrib -h -r -s boot.ini
before editing. After you have saved boot.ini you will need to restore attributes with
C:\attrib +h +r +s boot.ini
This just shows how linux can be easier that Windows, doesn't it?
p.s. If you later upgrade your Linux kernel, you have to do the "dd" command line I showed you to copy the new boot sector for the Window boot loader.