1 Jan 96

IDE and SCSI Disks

The normal boot sequence is to check first for a floppy in the A: drive, then to try and boot a system on the first hard disk. The last chance might be to boot through the LAN adapter from a server. The boot sequence can be altered with the configuration utility of some computer systems. For example, the ability to boot a floppy drive could be eliminated on public systems to improve system security.

Whether the system boots from a floppy or a hard disk, the ROM Initialization code will read the first 512 sector from the device. This contains a program which is then allowed to continue executing. On a floppy diskette, the boot sector program is written when the diskette is formatted. Each operating system has its own version of the boot sector program. When DOS is told to format a floppy, but not to put a copy of the DOS system files on the volume, it writes a boot sector program that produces the frequently seen message:

This is not a system disk
Press any key to restart

If there is no floppy in the A: drive, the ROM initialization logic is supposed to load the first sector from the first hard disk. However, if there are several hard disks installed using several disk controllers, it may not be obvious just which disk comes first. Most desktop PC's come with built-in support for IDE disks, though a SCSI disk controller can be used as a replacement or to provide supplemental storage. These two disk architectures should be explained.

The IDE option is the most widely used and least expensive. The IDE disk interface is based on the ISA I/O bus architecture used on most desktop machines. Because it essentially duplicates and extends the native bus, the control logic for an IDE system is minimal. IDE disks also duplicate the old ST506 command set of the first hard disk controller (the Seagate Technologies 506) installed in IBM PC's. The ST506 control functions are directly supported by the ROM BIOS, by all versions of DOS, and by all other systems.

An IDE interface supports one or two hard disks. Over the last year, computers shipped with a EIDE interface that supports two cables each able to connect two devices for a total of 4 devices. Most desktop units ship with one IDE or EIDE hard disk, and that is usually the boot device.

Because of differences between the original IBM BIOS and the ST506 hardware, older systems were limited to IDE disks with no more than 528 megabytes. A new system has an improved BIOS that lifts this limit. A new operating system like Windows 95 has support that bypasses the BIOS. Even with Plain Old DOS, you can usually install a driver that fixes things. However, you can only use operating system drivers after the operating system boots. The Boot process itself uses the BIOS. It is generally a good idea to make sure that the C: drive, and any other bootable partition, begins and ends within the first 528 megabytes of the first IDE disk.

IDE is a logical extension of the ISA bus. It is not found on other systems (Macinstosh, RISC workstations, high end servers) that use other I/O buses. IDE is also designed to handle only one I/O operation at a time. Servers running a multitasking operating system (OS/2, NT, Netware) will want to run several I/O operations to multiple disks concurrently. IDE is therefore limited to single user desktop systems based on PC architecture. All the other (more expensive) machines use SCSI I/O.

SCSI is a more general standard for the attachment of all sorts of devices. Disks, backup tape units, CD- ROM, high-capacity optical systems, and a variety of other devices support SCSI attachment. SCSI devices can be located inside the PC (connected to the adapter card by a flat ribbon cable) or external (connected by a cable similar in size to the parallel printer cable).

If a system is to use the advanced features of SCSI (high performance, multitasking, various device types) then it needs special support. SCSI adapter cards are made by several vendors (Adaptec, Future Domain, and IBM for example) and advanced operating systems (OS/2, Windows NT, Unix) provide extensive support for each type of card. However, this support along with the rest of the operating system must be loaded off disk, and if the only disk available is a SCSI disk, then there is a clear chicken-egg problem. How do you load the SCSI adapter support from a disk controlled by the SCSI adapter?

In response, the SCSI adapter cards for a PC contain extra logic to convert the first two SCSI disks into simulated ST506 disks that can be used by the standard BIOS. An operating system and its device drivers are loaded using the ST506 simulation, then the system switches over and uses the more advanced support.

If a system has only IDE drives, then the first IDE disk is the boot device. If a system has only SCSI drives, then the ROM initialization logic on the first SCSI adapter card detects this situation and inserts the first SCSI disk (under ST506 simulation) as the boot device. If both IDE and SCSI disks are present, the SCSI controller defers to the IDE support and the system boots from the first IDE disk.

Continue Back PCLT

Copyright 1995 PC Lube and Tune -- Das Boot -- H. Gilbert