## Storage Device Driver Reference

[prev][next][parent][TOC]

### System Initialization

The System initialization (or system boot) sequence is as follows:

1.System initialization first attempts to load an operating system from the first diskette drive. If the drive is not ready or a read error occurs, it then attempts to read the fixed disk master boot record from the first sector of the first fixed disk on the system. If unsuccessful, or if no fixed disk is present, it invokes a device, ROM BASIC or prompts for a startable diskette.

2.If successful, the master boot record is given control. It examines the partition table imbedded within it. If one of the entries indicates a " startable" (active) partition, its boot record is read (from the partition' s first sector) and give control.

3.If none of the partitions is startable, a RIPL device or ROM BASIC is invoked or a prompt for a bootable diskette is displayed.

4.If any of the boot indicators are invalid (values other than 00h or 80h) the message Invalid partition table is displayed and the system stops. You may then insert a system diskette in drive A and use system reset to restart from diskette.

5.If the partition's boot record cannot be successfully read within five retries due to read errors, the message Error loading operating system appears and the system stops.

6.If the partition's boot record does not contain a valid "signature," the message Missing operating system appears, and the system stops.

When a partition's boot record is given control, it has passed its partition table entry address in the DS:SI registers.

System programmers designing a utility to initialize/manage a fixed disk must provide the following functions at a minimum:

1.Write the master disk boot record/partition table to the disk's first sector to initialize it if it is not already present.

2.Perform partitioning of the disk-that is, create or update partition table information (all fields for the partition) when the user wishes to create, modify, or remove a partition. This may be limited to creating a partition for only one type of operating system, but must allow repartitioning the entire disk, or adding a partition without interfering with existing partitions (user's choice).

Note: When changing the size or location of any partition, you must ensure that all existing data on that partition has been backed up (the partitioning process will "lose track" of the previous partition boundaries ).

3.Provide a means for marking a user-specified partition as startable, and resetting the startable indicator bytes for other partitions at the same time.

4.Such utilities should not change or move any partition information that belongs to another operating system.