Patent ID: 7464250

Claim:
A method of loading data from disk in a data processing system, comprising: comparing a current sequence of disk requests to data indicative of a previous sequence of disk requests, wherein the sequence of disk requests includes the sequence of disk requests following a power-on event; responsive to detecting a match between the current sequence and the previous sequence, storing a copy of data blocks accessed during the current sequence in a contiguous portion of the disk, wherein storing a copy of data blocks accessed during the I/O sequence comprises storing the data blocks sequentially in the order that the data blocks were accessed chronologically; and responsive to a subsequent request for data in the disk sequence, mapping the request to the sequential portion of the disk and servicing the request from data in the sequential portion; wherein the contiguous portion of the disk to which the data is copied is on a different partition of the disk than a disk partition on which the original data is stored; recording a sequence of disk accesses, wherein recording the sequence includes recording the disk address of each block accessed and the length of each block; responsive to retrieving data from the contiguous portion, prefetching additional data from the contiguous portion of the disk and caching the additional data in a buffer; and responsive to an I/O request, determining whether the data requested resides in the buffer and, if so, retrieving the data from the buffering without accessing the hard disk.