Apparatus and method for copying and restoring disk files
First Claim
1. In a data processing system having a disk peripheral for storing information, a tape peripheral, a central processing unit and a memory having at least one backup buffer and at least one copy buffer, the method of backing up the information from the disk peripheral to the tape peripheral comprising the steps of:
- (a) reading a section of disk blocks from the disk peripheral;
(b) storing the section in a backup buffer;
(c) when the backup buffer is full, storing the disk blocks stored in the backup buffer in step b on the tape peripheral;
(d) repeating steps a-c until all disk blocks on the disk peripheral have been stored on the tape peripheral; and
(e) if a request is made to write to one or more disk blocks in the disk peripheral while steps a-d are being performed, performing the following steps for each disk block to which the write request was made;
(i) suspending the write request(ii) determining if the disk block has already been written to a backup buffer during the backup operation;
(iii) if already written to a backup buffer, allowing the write request to that disk block to proceed;
(iv) if not already written to a backup buffer, determining if the disk block has already been written to a copy buffer,(v) if already written to a copy buffer, performing the write request;
(vi) if not already written to a copy buffer, storing the disk block in a copy buffer and performing the write request;
(vii) when the copy buffer is full, storing the disk blocks stored in the copy buffer in step (vi) on the tape peripheral.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus for backing up files from a logical disk are described to a backup tape and restoring all or part of the files to the logical disk. Separate "backup" and "copy" buffers in the host processor'"'"'s main memory are employed during a backup operation. Backup buffers hold data read from the logical disk during the sequential backup operation. Copy buffers hold data read from the logical disk prior to execution of a write operation to a portion of the disk not yet backed up. Data is stored on the backup tape in logical tape records containing either backup data or copied data. A full restoration of all files can be done in one read of the backup tape. A partial restoration of selected files can be done in two reads of the backup tape.
221 Citations
9 Claims
-
1. In a data processing system having a disk peripheral for storing information, a tape peripheral, a central processing unit and a memory having at least one backup buffer and at least one copy buffer, the method of backing up the information from the disk peripheral to the tape peripheral comprising the steps of:
-
(a) reading a section of disk blocks from the disk peripheral; (b) storing the section in a backup buffer; (c) when the backup buffer is full, storing the disk blocks stored in the backup buffer in step b on the tape peripheral; (d) repeating steps a-c until all disk blocks on the disk peripheral have been stored on the tape peripheral; and (e) if a request is made to write to one or more disk blocks in the disk peripheral while steps a-d are being performed, performing the following steps for each disk block to which the write request was made; (i) suspending the write request (ii) determining if the disk block has already been written to a backup buffer during the backup operation; (iii) if already written to a backup buffer, allowing the write request to that disk block to proceed; (iv) if not already written to a backup buffer, determining if the disk block has already been written to a copy buffer, (v) if already written to a copy buffer, performing the write request; (vi) if not already written to a copy buffer, storing the disk block in a copy buffer and performing the write request; (vii) when the copy buffer is full, storing the disk blocks stored in the copy buffer in step (vi) on the tape peripheral. - View Dependent Claims (2, 3, 4)
-
-
5. In a data processing system having a CPU, a memory, a disk peripheral and a tape peripheral, and wherein information from the disk peripheral has been stored on the tape peripheral in logical tape records, each said logical tape record containing (i) a plurality of disk blocks of information, (ii) a like plurality of logical disk addresses, each logical disk address being associated with one of said plurality of disk blocks of information and (iii) means for indicating if the information in said tape record is of a first type, a method of restoring the information from the tape peripheral to the disk peripheral comprising the steps of:
-
(a) reading a logical tape record from the tape peripheral into the memory and determining if the information contained in the tape record is of said first type; (b) if so, writing the disk blocks from said tape record to the logical disk; (c) if not, for each disk block in said tape record, determining if another disk block has been restored to the disk peripheral at the same logical disk address, and, if not, writing the disk block to the disk peripheral. - View Dependent Claims (6, 7)
-
-
8. In a data processing system having a CPU, a memory, a disk peripheral and a tape peripheral, and wherein information from the disk peripheral has been stored on the tape peripheral in logical tape records, each said logical tape record having an identifier and containing (i) a plurality of disk blocks of information, (ii) a like plurality of logical disk addresses for said disk blocks, each said logical disk address being associated with one of said plurality of disk blocks of information and (iii) means for indicating if the tape record contains file structure information, a method of restoring a selected portion of the information from the tape peripheral to the disk peripheral comprising the steps of:
-
(a) reading a tape record from the tape peripheral into the memory and examining each disk block in the tape record; (b) if a disk block contains file structure information, placing the disk block into a file structure file in memory; (c) if a disk block contains other than file structure information, entering the identifier of the tape record and the logical disk address of the disk block into a table in memory; (d) repeating steps a-c for each tape record; (e) identifying the logical disk addresses of the disk blocks making up the selected portion of the information to be restored; (f) identifying the tape records which contain one or more of the disk blocks identified in step (e) and creating a sequential list in memory of the identified tape records; (g) reading a tape record identified in step (f) and writing to the disk peripheral all disk blocks identified in step (e) for the tape record; (h) repeating step (g) until all tape records identified in step (e) have been processed. - View Dependent Claims (9)
-
Specification