This article is from the CD-Recordable FAQ, by Andy McFadden (firstname.lastname@example.org) with numerous contributions by others.
On a Mac, this is reasonably straightforward.
For pre-OS X systems, a CD can be bootable if it has a bootable system
folder on it. Tell the recording software that you want to make the CD
bootable; this usually involves clicking in a checkbox before burning
the first session. Then, copy a bootable system folder onto the disc.
An easy way to create an appropriate system folder is to launch the
system installer, tell it you want to do a "Custom" install, choose the
"Universal System" option, and then install it onto the CD source volume.
One caveat: any control panels or extensions that want to write to their
preferences files will fail. You may need to write from a system folder
that has been booted at least once.
Detailed instructions for creating a bootable CD with Toast can be found at
Holding down the 'c' key while booting will cause the Mac to boot from an
internal CD-ROM drive. Alternatively, the "Startup Disk" control panel
will allow you to select a CD-ROM.
Under Mac OS X, you have to create an image from a running system.
"BootCD", from http://www.charlessoft.com/, will help you do this.
The rest of the section applies only to PCs, which are more challenging.
The BIOS or SCSI card on most newer machines support booting from
CD-ROM, but on many older machines (pre-2000) it's just not possible.
Phoenix (the BIOS developer) and IBM have created the El Torito standard
for booting discs. When the machine boots, if the BIOS detects a
bootable image on the CD-ROM, it maps that image onto the A: floppy drive.
(Depending on implementation, A: will move to B: and B: will go away.)
From that point onward, it works just like booting a floppy.
Not surprisingly, the way you create a bootable CD-ROM is to take an image
of a bootable floppy disk and write it in a specific way onto the CD.
Most current CD writing programs, e.g. Easy CD Creator and CDRWIN, will
do the hard work for you.
A very nice page with lots of technical and how-to information:
If you like to do things the hard way, step-by-step procedures with
varying levels of detail can be found here:
When booting the PC, you may need to change the boot order in the BIOS from
the typical "A, C" to "A, SCSI, C", and configure the SCSI interface to
attempt to boot from CD. On some adapters, the boot-up SCSI bus scan may
take an extra second or two while the interface tries to determine if a
bootable CD-ROM is present.
Some programs insist that bootable CD-ROMs be written in plain ISO-9660
format, not Joliet. One way around this is to write the bootable portion
in the first session, and then write the rest of the data in a second
session. However, not all PCs will boot a multisession disc. A better
approach is to use a program like mkisofs (6-1-10) to create the image.
The El Torito standard allows CD-ROMs to have more than one bootable
image, but few applications support creating such images. You can use
mkisofs with the "-eltorito-alt-boot" option to do this.
If you're having trouble finding drivers for your CD-ROM drive, try the
Win98 boot disk, or http://www.drivershq.com/.