Electrical computers and digital data processing systems: input/ – Input/output data processing – Input/output access regulation
Reexamination Certificate
2001-02-20
2004-04-20
Gaffin, Jeffrey (Department: 2182)
Electrical computers and digital data processing systems: input/
Input/output data processing
Input/output access regulation
C710S008000, C710S010000, C710S013000, C710S031000, C710S037000, C710S038000, C710S104000, C713S001000, C713S002000, C713S100000, C709S241000, C709S241000, C709S241000
Reexamination Certificate
active
06725294
ABSTRACT:
FIELD OF THE INVENTION
This invention relates to the “boot” process of computers, such as personal computers. More particularly, the present invention relates to an improved technique for initializing certain devices, such as floppy drives, hard drives, compact disk drives, etc., during the start-up of a computer.
BACKGROUND OF THE INVENTION
The original 80×86-based personal computers (PC's) booted from a combination of the PC's BIOS (Basic Input/Output System) firmware stored in read-only memory (ROM) and an operating system (OS) stored on a floppy disk installed in the floppy drive. Once fixed disks, or hard drives, became available, PC's were developed with the ability to boot from the hard drives. Today, PC's still commonly boot from a hard drive, but the PC industry has also developed a standard by which PC's can boot from a compact disk (CD-ROM). This standard is known as the “El Torito Bootable CD-ROM Format Specification.”
To boot from the floppy drive, the BIOS firmware begins the initial boot process, but then “calls” the standard interrupt 13h (INT 13h) to access the floppy drive “handler” (software that interfaces with the floppy drive) to complete the boot process and load the OS from the floppy disk. (The “h” appended to a number indicates hexadecimal numbering.) To install the hard drive upon start-up so that the PC boots from it instead of from the floppy drive, the BIOS firmware moves the floppy drive handler from INT 13h to the standard INT 40h and places the handler for the hard drive in the INT 13h location. The process of replacing the INT 13h handler and retaining the previous INT 13h handler is commonly called “hooking” INT 13h. If an additional hard drive, option ROM, “Plug-and-Play” device or other INT 13h device is installed during the start-up, then firmware for the additional device “hooks” INT 13h again, retaining the previous INT 13h handler in order to pass on access requests for other devices. It is possible for several INT 13h devices to be installed with each device placing its own handler at INT 13h and retaining the previous INT 13h handler, thereby creating a “chain” of INT 13h devices.
An exemplary prior art procedure
100
for installing an INT 13h device (e.g. a hard drive) at the start-up of a PC is shown in FIG.
1
. Once the procedure
100
starts (step
102
), the software reads (step
104
) the current hard drive count and determines (step
106
) whether the hard drive count is zero, indicating whether another INT 13h hard drive has already been installed. If no other INT 13h hard drive has been installed, then the current device handler for the INT 13h (assumed to be the floppy drive handler) is redirected (step
108
) to the INT 40h. After redirecting (step
108
) the floppy drive handler or if the hard drive count is not zero (step
106
), the procedure
100
“hooks” (step
110
) the current INT 13h, thereby installing the new INT 13h device. The new INT 13h device is then designated (step
112
) with a device number equal to the current hard drive count plus 80h, since add-in drives. (e.g. hard drives, CD-ROMs, magneto optical drives, removable hard drives, etc.) are designated as devices 80h through FFh. (Floppy drives are designated as devices 00h through 7Fh.) The hard drive count is then incremented (step
114
) by one, and the procedure
100
ends (step
116
).
An exemplary prior art procedure
118
for an INT 13h device handler to respond to an access request is shown in FIG.
2
. Once the procedure
118
starts (step
120
), it is determined (step
122
) whether the device number specified by the calling program in the standard DL register is the same as the device number for the current INT 13h device, indicating that this device is the requested device. If this device is the requested device, then the access request is processed (step
124
) and the appropriate code (e.g. indicating success or failure) is returned (step
126
) to the calling program. If this device is not the requested device (step
122
), then if the device number specified in the DL register is less than 80h (step
128
), indicating that the floppy drive is the requested device, then the procedure
118
calls (step
130
) INT 40h to handle the access request to the floppy drive. If the device number specified in the DL register is not less than 80h (step
128
), indicating that the requested device is another INT 13h device (e.g. another hard drive), then the procedure
118
calls (step
132
) the next entry (which was “hooked” at step
110
in the procedure
100
in
FIG. 1
) in the chain of INT 13h devices. The procedure
118
ends at step
134
.
States
136
,
138
and
140
of a typical prior art PC are shown in
FIG. 3
prior to the installation of any INT 13h devices (state
136
), after the installation of one INT 13h device (state
138
) and after the installation of a second INT 13h device (state
140
). At state
136
, there are no added INT 13h devices, such as hard drives, indicated by the hard drive count. There is one floppy drive (not shown) indicated by the floppy drive count. The chain
142
of INT 13h devices includes only the standard system handler
144
for the floppy drive. The chain
146
of INT 40h devices is empty or may include a “dummy” handler
148
or the system handler
144
. Only the system handler
144
is able to respond to an access request according to the procedure
118
(FIG.
2
).
At state
138
, one INT 13h device, such as a hard drive (not shown), has been installed by the procedure
100
(
FIG. 1
) in a PC previously having the state
136
. There are the one hard drive indicated by the hard drive count and one floppy drive (not shown) indicated by the floppy drive count. The chain
142
of INT 13h devices now includes the device handler
150
for the INT 13h device having device number 80h followed by the original system handler
144
, since the previous INT 13h handler was “hooked” at step
110
(
FIG. 1
) in the procedure
1006
. Additionally, the chain
146
of INT 40h devices now includes the original system handler
144
, since the system handler
144
was redirected to INT 40h at step
108
(
FIG. 1
) in the procedure
100
. Therefore, if an access request is not directed to the device numbered 80h, as determined from the DL register at step
122
(
FIG. 2
) of the procedure
118
(FIG.
2
), the device handler
150
will redirect the access request to the system handler
144
at step
130
or
132
(
FIG. 2
) of the procedure
118
.
At state
140
, the second INT 13h device (not shown) has been installed by the procedure
100
(
FIG. 1
) in a PC previously having the state
138
. There are two hard drives and one floppy drive indicated by the hard drive count and the floppy drive count, respectively. The chain
142
of INT 13h devices, as generated by the procedure
100
, now includes the device handler
152
for the INT 13h device numbered 81h followed by the device handler
150
the INT 13h device numbered 80h followed by the system handler
144
. Additionally, the chain
146
of INT 40h devices still includes the system handler
144
. Therefore, when the device handler
152
receives an access request under the procedure
118
(FIG.
2
), if the access request is not directed to the device numbered 81h, as determined at step
122
(FIG.
2
), the device handler
152
will pass the access request either to the system handler
144
(step
130
,
FIG. 2
) or to the device handler
150
(step
132
, FIG.
2
). If the device handler
152
passes the access request to the device handler
150
(step
132
), then if the device handler
150
determines at step
122
(
FIG. 2
) that the access request is not directed to the device numbered 80h, the device handler
150
passes the access request to the system handler
144
at step
130
or
132
(FIG.
2
).
States
154
,
156
,
158
and
160
of a typical prior art PC are shown in
FIG. 4
after the installation of an “El Torito” device in combination with the installation of one or more INT 13h devices. An “El Torito” device emul
Moore Derick G.
Wade Roy W.
Gaffin Jeffrey
John R. Ley, LLC
LSI Logic Corporation
Nguyen Tanh
LandOfFree
Installation and access of a device handler for a peripheral... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Installation and access of a device handler for a peripheral..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Installation and access of a device handler for a peripheral... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3221297