Booting more than one operating system can be a problem. Reason being that Microsoft Windows doesn't normally take into account that users might want to run something else alongside it.
As the underdog, Linux has never had this problem. It has always been designed to boot alongside Windows OSes and without this basic functionality, the world would have far fewer Linux users.
This is thanks to the Linux boot loader - the small menu that you normally see after the BIOS screen (POST) and before the Linux operating system starts to launch. It's the boot loader that configures your system to boot and adapt to any installed operating system.
Grub boot loader
Recently, Lilo, a boot loader that could only be modified within the Linux system, has been replaced with another boot loader called 'Grub', which is considered a more flexible solution.
This is not least because you can change the boot configuration from the boot menu itself rather than booting into any operating system, which is vital if you run into problems finding the operating system you need. And problems with multi-boot systems are relatively common - at least in the early stages.
There's no standard for where the boot loader should store its data. The boot loader will normally occupy a space on your drive called the 'Master Boot Record' (MBR) but this is just as volatile as any other part of your hard drive. As a result, you may find that occasionally your MBR will be overwritten during system maintenance or an OS upgrade.
In these cases, the boot menu provided by either Grub or Lilo will disappear and you will instead boot into the default operating system without any other options. To repair your installation in these cases, have a Live Linux CD such as Ubuntu handy to reinstall the boot loader. Your alternative OSes will appear unscathed.
And fortunately, things have improved considerably since the early years of Linux, and if you're installing a simple dual or triple boot system, you're unlikely to have any problems and configuration should be automatic.
Divide and conquer
You need to install more than one operating system before you can dual or even triple boot. Things are much easier if you're starting from scratch with a blank hard drive. This is really the only method we can recommend as you don't need to juggle any valuable data that may already be in use on your drive.
This avoids the most common problem with multi OS installations - resizing partially used partitions to make way for new ones. The problem is that by default, an installed operating system will use all the space on the drive available to it.
When you're starting from a blank drive, you manually create partitions for each operating system using a pre-defined space on the disk. This will avoid any resizing issues. But if you do have data on your system, you will need to ensure it survives a repartition of your drive using a partition resize and management tool.
Windows XP doesn't include one, although Vista does, and you'll need to use either a commercial application like Norton's Partition Magic or try Linux and GpartEd.
You must back up your data first, there's a good chance you might lose everything in the resizing process. After coming up with a partition/disk strategy, the next consideration is the order you install each operating system. This is a relatively easy decision, as the order is dependent on how adaptable each operating system is to anything previously installed on the drive.
Install Windows XP first, as it doesn't take any alternatives into account. XP also expects to be installed onto the first available partition on your drive, and you'll need to use the manual partition selection at installation to make sure this happens.