Patent US5590336A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5590336A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for performing overlapping service of multiple IDE peripheral devices

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1994-10-25
•
Granted: 1996-12-31
•
Expires: 2014-10-25
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for performing overlapping service of requests to two peripheral devices, specifically a CD-ROM drive and a hard disk drive connected to a computer. When a read request is issued to the CD-ROM drive, a seek is immediately initiated. A timer, with a period much shorter than the typical seek time of a CD-ROM drive, is started and any requests to the peripheral hard disk drive are initiated. When the timer times out and when the hard disk request is complete, an inquiry is made to determine whether the CD-ROM drive has finished seeking. This inquiry is accomplished by determining the status of a bit set by the CD-ROM drive in a register in the computer when the CD-ROM drive has finished seeking. If the bit is set, indicating the CD-ROM seek is complete, the data transfer request is immediately issued to the CD-ROM drive. If the bit is not set, indicating the CD-ROM seek is not complete, the timer is reset and the service of hard disk drive requests continues.

Inventors

  • 👤 William G. Parry

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-09 09:51
CPC Classifications
G; G06; G06F; G06F3/00; G06F3/06; G06F3/0601; G06F3/0668; G06F3/0671; G06F3/0673

Claims Analysis

Total Claims: 35
Claim 1
Independent Claim 164 words
A method for performing overlapping service of requests from a computer to multiple peripheral devices connected to the computer, wherein each request includes a seek and a data transfer operation and wherein the time required for a first peripheral device to complete a seek operation is longer than the time required for a second peripheral device to complete a seek operation, said method comprising the steps of: initiating a seek operation for the first peripheral device in response to a request from the computer to the first peripheral device; starting a timer; initiating execution of a request from the computer to the second peripheral device; determining whether the first peripheral device has completed its seek operation when the timer times out; executing a data transfer operation for the first peripheral device if the first peripheral device has completed its seek operation; resetting the timer and returning to said step of starting the timer if the first peripheral device has not completed its seek operation.
Claim 2
Independent Claim 164 words
A method for performing overlapping service of requests from a computer to multiple peripheral devices connected to the computer, wherein each request includes a seek and a data transfer operation and wherein the time required for a first peripheral device to complete a seek operation is longer than the time required for a second peripheral device to complete a seek operation, said method comprising the steps of: initiating a seek operation for the first peripheral device in response to a request from the computer to the first peripheral device; starting a timer; initiating execution of a request from the computer to the second peripheral device; determining whether the first peripheral device has completed its seek operation when the timer times out; executing a data transfer operation for the first peripheral device if the first peripheral device has completed its seek operation; resetting the timer and returning to said step of starting the timer if the first peripheral device has not completed its seek operation.
Claim 3
Dependent Claim 48 words
The method of claim 1 further comprising the steps of determining whether the execution of the request to the second peripheral device is complete and determining whether the first peripheral device has completed its seek operation when execution of the request to the second peripheral device is complete.
Claim 4
Dependent Claim 14 words
The method of claim 1 wherein the first peripheral device is a CD-ROM drive.
Claim 5
Dependent Claim 15 words
The method of claim 1 wherein the second peripheral device is a hard disk drive.
Claim 6
Dependent Claim 24 words
The method of claim 1 wherein the first peripheral device is a CD-ROM drive and the second peripheral device is a hard disk drive.
Claim 7
Dependent Claim 33 words
The method of claim 1 wherein the timer has a period at least an order of magnitude less than the maximum time required for the first peripheral device to complete a seek operation.
Claim 8
Dependent Claim 24 words
The method of claim 1 wherein the first peripheral device is a CD-ROM drive and the timer has a period of approximately 20 milliseconds.
Claim 9
Dependent Claim 22 words
The method of claim 1 wherein the timer is based on the system clock timer of the operating system of the computer.
Claim 10
Dependent Claim 72 words
The method of claim 1 wherein the first peripheral device includes a read head and a disk having data stored thereon in a plurality of sectors, wherein said method is performed only when the request to the first peripheral device specifies a destination sector which is located at least a predetermined distance from the location of the current sector where the read head is located at the time the request is initiated.
Claim 11
Dependent Claim 23 words
The method of claim 9 wherein the first peripheral device is a CD-ROM drive and the predetermined distance is at least ten sectors.
Claim 12
Dependent Claim 26 words
The method of claim 9 wherein the period of the timer is variable depending on the location of the destination sector relative to the current sector.
Claim 13
Dependent Claim 66 words
The method of claim 1 wherein the peripheral devices are connected to the computer via a controller and the first peripheral device sets a bit in a register in the controller when the first peripheral device has completed its seek operation, and wherein said step of determining whether the first peripheral device has completed its seek operation is determined by monitoring the status of the bit.
Claim 14
Independent Claim 189 words
A method for performing overlapping service of requests from a computer to a CD-ROM drive and a hard disk drive connected to the computer, where each request includes a seek and a data transfer operation, said method comprising the steps of: initiating a seek operation for the CD-ROM drive in response to a request to the CD-ROM drive; starting a timer having a period at least an order of magnitude less than the maximum time required for said first peripheral device to complete a seek operation; initiating a request to the hard disk drive; determining whether the CD-ROM drive has completed its seek operation when the timer times out; determining whether the execution of the request to the hard disk drive is complete; determining whether the CD-ROM drive has completed its seek operation when execution of the request to the hard disk drive is complete; completing the request for the CD-ROM drive by executing a data transfer operation if the CD-ROM drive has completed its seek operation; resetting the timer and returning to said step of starting the timer if the CD-ROM drive has not completed its seek operation.
Claim 15
Independent Claim 189 words
A method for performing overlapping service of requests from a computer to a CD-ROM drive and a hard disk drive connected to the computer, where each request includes a seek and a data transfer operation, said method comprising the steps of: initiating a seek operation for the CD-ROM drive in response to a request to the CD-ROM drive; starting a timer having a period at least an order of magnitude less than the maximum time required for said first peripheral device to complete a seek operation; initiating a request to the hard disk drive; determining whether the CD-ROM drive has completed its seek operation when the timer times out; determining whether the execution of the request to the hard disk drive is complete; determining whether the CD-ROM drive has completed its seek operation when execution of the request to the hard disk drive is complete; completing the request for the CD-ROM drive by executing a data transfer operation if the CD-ROM drive has completed its seek operation; resetting the timer and returning to said step of starting the timer if the CD-ROM drive has not completed its seek operation.
Claim 16
Dependent Claim 225 words
A computer system for performing overlapping service of requests from a computer to multiple peripheral devices connected to the computer, wherein each request includes a seek and a data transfer operation, said computer system comprising: a first and second peripheral device connected to said computer; first driver means in said computer for initiating a seek operation for said first peripheral device in response to a request from said computer to said first peripheral device; timer means for timing a predetermined period of time in response to the initiation of said seek operation for said first peripheral device; second driver means in said computer for initiating execution of a request from said computer to said second peripheral device; first determining means in said computer for determining whether the execution of the request to said second peripheral device is complete; second determining means in said computer, responsive to said timer means and said first determining means, for determining whether said first peripheral device has completed its seek operation; third driver means in said computer, responsive to said second determining means, for executing a data transfer operation for said first peripheral device if said first peripheral device has completed its seek operation; and timer reset means, responsive to said second determining means, for resetting the timer means if said first peripheral device has not completed its seek operation.
Claim 17
Dependent Claim 225 words
A computer system for performing overlapping service of requests from a computer to multiple peripheral devices connected to the computer, wherein each request includes a seek and a data transfer operation, said computer system comprising: a first and second peripheral device connected to said computer; first driver means in said computer for initiating a seek operation for said first peripheral device in response to a request from said computer to said first peripheral device; timer means for timing a predetermined period of time in response to the initiation of said seek operation for said first peripheral device; second driver means in said computer for initiating execution of a request from said computer to said second peripheral device; first determining means in said computer for determining whether the execution of the request to said second peripheral device is complete; second determining means in said computer, responsive to said timer means and said first determining means, for determining whether said first peripheral device has completed its seek operation; third driver means in said computer, responsive to said second determining means, for executing a data transfer operation for said first peripheral device if said first peripheral device has completed its seek operation; and timer reset means, responsive to said second determining means, for resetting the timer means if said first peripheral device has not completed its seek operation.
Claim 18
Dependent Claim 23 words
The system of claim 14 wherein said timer means is based on the system clock timer of the operating system of said computer.
Claim 19
Dependent Claim 36 words
The system of claim 14 wherein the predetermined period of the timer means is at least an order of magnitude less than the maximum time required for said first peripheral device to complete a seek operation.
Claim 20
Dependent Claim 25 words
The system of claim 14 wherein said first peripheral device is a CD-ROM drive and said timer means has a period of approximately 20 milliseconds.
Claim 21
Dependent Claim 28 words
The system of claim 14 wherein said second determining means determines whether said first peripheral device has completed its seek operation when said timer means has timed out.
Claim 22
Dependent Claim 34 words
The system of claim 14 wherein said second determining means determines whether said first peripheral device has completed its seek operation when the execution of the request to said second peripheral device is complete.
Claim 23
Dependent Claim 35 words
The system of claim 14 wherein the time required for said first peripheral device to complete a seek operation is longer than the time required for said second peripheral device to complete a seek operation.
Claim 24
Dependent Claim 14 words
The system of claim 14 wherein said first peripheral device is a CD-ROM drive.
Claim 25
Dependent Claim 15 words
The system of claim 14 wherein said second peripheral device is a hard disk drive.
Claim 26
Dependent Claim 23 words
The system of claim 14 wherein said first peripheral device is a CD-ROM and said second peripheral device is a hard disk drive.
Claim 27
Dependent Claim 79 words
The system of claim 14 wherein said first peripheral device includes a read head and a disk having data stored thereon in a plurality of sectors, wherein said timer means is started only when said first driver means initiates a request for data located in a destination sector located at least a predetermined distance from the location of the current sector where said read head is located at the time the request is initiated by said first driver means.
Claim 28
Dependent Claim 23 words
The system of claim 24 wherein said first peripheral device is a CD-ROM drive and the predetermined distance is at least ten sectors.
Claim 29
Dependent Claim 27 words
The system of claim 24 wherein the period of said timer means is variable depending on the location of the destination sector relative to the current sector.
Claim 30
Dependent Claim 50 words
The system of claim 14 wherein said first peripheral device sets a bit in a register in said computer when said first peripheral device has completed its seek operation, and wherein said second determining means monitors said bit to determine whether said first peripheral device has completed its seek operation.
Claim 31
Dependent Claim 24 words
The system of claim 14 wherein said first and second peripheral devices interface with said computer through a first and second IDE controller, respectively.
Claim 32
Dependent Claim 19 words
The system of claim 28 wherein said first and second peripheral devices communicate with said computer via a bus.
Claim 33
Dependent Claim 19 words
The system of claim 29 wherein said computer communicates with only one of said peripheral devices at a time.
Claim 34
Dependent Claim 302 words
A computer system for performing overlapping service of requests from a computer to multiple peripheral devices connected to the computer, wherein each request includes a seek and a data transfer operation, said computer system comprising: a peripheral hard disk drive connected to said computer via a first IDE controller included within said hard disk drive; a peripheral CD-ROM drive connected to said computer via a second IDE controller included within said CD-ROM drive; first driver means in said computer for initiating a seek operation for said CD-ROM drive in response to a request from said computer to said CD-ROM drive; a timer having a period of approximately 20 milliseconds started upon initiation of said seek operation for said CD-ROM drive; second driver means in said computer for initiating execution of a request from said computer to said hard disk drive; first determining means in said computer for determining whether the execution of the request to said hard disk drive is complete; second determining means in said computer, responsive to said timer timing out, and responsive to said first determining means determining that the execution of the request to said hard disk drive is complete, for determining whether said CD-ROM drive has completed its seek operation; wherein said CD-ROM drive sets a bit in a register in said computer when said CD-ROM drive has completed its seek operation, and wherein said second determining means monitors said bit to determine whether said CD-ROM drive has completed its seek operation; third driver means in said computer, responsive to said second determining means, for executing a data transfer operation for said CD-ROM drive if said CD-ROM drive has completed its seek operation; and timer reset means, responsive to said second determining means, for resetting the timer if said CD-ROM drive has not completed its seek operation.
Claim 35
Dependent Claim 302 words
A computer system for performing overlapping service of requests from a computer to multiple peripheral devices connected to the computer, wherein each request includes a seek and a data transfer operation, said computer system comprising: a peripheral hard disk drive connected to said computer via a first IDE controller included within said hard disk drive; a peripheral CD-ROM drive connected to said computer via a second IDE controller included within said CD-ROM drive; first driver means in said computer for initiating a seek operation for said CD-ROM drive in response to a request from said computer to said CD-ROM drive; a timer having a period of approximately 20 milliseconds started upon initiation of said seek operation for said CD-ROM drive; second driver means in said computer for initiating execution of a request from said computer to said hard disk drive; first determining means in said computer for determining whether the execution of the request to said hard disk drive is complete; second determining means in said computer, responsive to said timer timing out, and responsive to said first determining means determining that the execution of the request to said hard disk drive is complete, for determining whether said CD-ROM drive has completed its seek operation; wherein said CD-ROM drive sets a bit in a register in said computer when said CD-ROM drive has completed its seek operation, and wherein said second determining means monitors said bit to determine whether said CD-ROM drive has completed its seek operation; third driver means in said computer, responsive to said second determining means, for executing a data transfer operation for said CD-ROM drive if said CD-ROM drive has completed its seek operation; and timer reset means, responsive to said second determining means, for resetting the timer if said CD-ROM drive has not completed its seek operation.

References Cited (Backward Citations)

US3950735A Cited
US4517641A Cited
US5392444A Cited
US5483641A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-12-31 2000-07-01 2000-12-31 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-12-31 2004-07-01 2004-12-31 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-12-31 2008-07-01 2008-12-31 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag