Serial data storage system with automatically adjusted data protection to implement worm media with limited overwrite allowing write appending
First Claim
1. A method of operating a read/write drive to conduct read/write operations upon removable, serially accessible, data storage media so as to render the media write-once read-many to a hierarchically superior host, the method comprising the following operations performed by the read/write drive:
- receiving one or more write requests from the host, each write request being accompanied by corresponding write data;
establishing a target write location on a data storage medium;
responsive to each write request, performing operations to store the write data so as to preserve any previously stored data, the operations comprising;
referencing a write append limiter sequentially identifying a location on the data storage medium before which data is not permitted to be altered;
determining whether the target write location occurs before or after the write append limiter;
if before, generating an error message;
if after, storing the write data upon the data storage medium beginning at the target write location, and determining whether an end of the write data exceeds the write append limiter by more than a write allowance index, and only if so, advancing the write append limiter.
1 Assignment
0 Petitions
Accused Products
Abstract
In a data storage subsystem, drive-level processing treats data storage media as WORM by automatically advancing a write append limiter as data is written, and preventing changes to data occurring before the write append limiter. Despite this media'"'"'s WORM nature, the drive-level processing permits limited overwriting of data at the end of tape since the write append limiter lags the current write location by the margin of a write allowance index. Thus, despite the drive'"'"'s treatment of the media as WORM, the drive permits overwriting of trailing metadata in order to facilitate write append operations.
80 Citations
25 Claims
-
1. A method of operating a read/write drive to conduct read/write operations upon removable, serially accessible, data storage media so as to render the media write-once read-many to a hierarchically superior host, the method comprising the following operations performed by the read/write drive:
-
receiving one or more write requests from the host, each write request being accompanied by corresponding write data;
establishing a target write location on a data storage medium;
responsive to each write request, performing operations to store the write data so as to preserve any previously stored data, the operations comprising;
referencing a write append limiter sequentially identifying a location on the data storage medium before which data is not permitted to be altered;
determining whether the target write location occurs before or after the write append limiter;
if before, generating an error message;
if after, storing the write data upon the data storage medium beginning at the target write location, and determining whether an end of the write data exceeds the write append limiter by more than a write allowance index, and only if so, advancing the write append limiter. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
the write allowance index specifying an amount of data.
-
-
3. The method of claim 2, the operations of further comprising:
responsive to the drive receiving an unload command, the drive writing a most recently updated write append limiter to the data storage medium.
-
4. The method of claim 1, where the operation of establishing a target write location on the data storage medium comprises:
receiving specification of the target write location from the host.
-
5. The method of claim 1, where the operation of establishing a target write location on the data storage medium comprises:
establishing the target write location at the write append limiter.
-
6. The method of claim 2, where:
-
following the storage of write data, the drive stores a prescribed size of trailing metadata upon the data storage medium; and
the write allowance index specifies an amount of data substantially equal to the trailing metadata.
-
-
7. The method of claim 2, the operations further including accepting host requests to decrease the write allowance index and rejecting host requests to increase the write allowance index.
-
8. The method of claim 2, where the operation of storing write data stores data logically divided into blocks, and the write allowance index comprises a number of logical blocks expressed as an integer.
-
9. A signal-bearing medium tangibly embodying a program of machine-readable instructions executable by a digital processing apparatus to perform a method for operating a read/write drive to conduct read/write operations upon removable, serially accessible, data storage media so as to render the media write-once-read-many to a hierarchically superior host, the method comprising the following operations performed by the read/write drive:
-
receiving one or more write requests from the host, each write request being accompanied by corresponding write data;
establishing a target write location on a data storage medium;
responsive to each write request, performing operations to store the write data so as to preserve any previously stored data, the operations comprising;
referencing a write append limiter sequentially identifying a location on the data storage medium before which data is not permitted to be altered;
determining whether the target write location occurs before or after the write append limiter;
if before, generating an error message;
if after, storing the write data upon the data storage medium beginning at the target write location, and determining whether an end of the write data exceeds the write append limiter by more than a write allowance index. and only if so, advancing the write append limiter. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
the write allowance index specifying an amount of data.
-
-
11. The medium of claim 10, the operation of further comprising:
responsive to the drive receiving an unload command, the drive writing a most recently updated write append limiter to the data storage medium.
-
12. The medium of claim 9, where the operation of establishing a target write location on the data storage medium comprises:
receiving specification of the target write location from the host.
-
13. The medium of claim 9, where the operation of establishing a target write location on the data storage medium comprises:
establishing the target write location at the write append limiter.
-
14. The medium of claim 10, where:
-
following the storage of write date, the drive stores a prescribed size of trailing metadata upon the date storage medium; and
the write allowance index specifies an amount of data substantially equal to the trailing metadata.
-
-
15. The medium of claim 10, the operations further include accepting host requests decrease the write allowance index and rejecting host requests to increase the write allowance index.
-
16. The medium of claim 10, where the operation of storing write data stores data logically divided into blocks, and the write allowance index comprises a number of logical blocks expressed as an integer.
-
17. A logic circuit of multiple interconnected electrically conductive elements configured to perform operations to operate a read/write drive to conduct read/write operations upon removable, serially accessible, data storage media so as to render the media write-once read-many to a hierarchically superior host, the method comprising the following operations performed by the read/write drive:
-
receiving one or more write requests from the host, each write request being accompanied by corresponding write data;
establishing a target write location on a data storage medium;
responsive to each write request, performing operations to store the write data so as to preserve any previously stored data, the operations comprising;
referencing a write append limiter sequentially identifying a location on the data storage medium before which data is not permitted to be altered;
determining whether the target write location occurs before or after the write append limiter;
if before, generating an error message;
if after, storing the write data upon the data storage medium beginning at the target write location, and determining whether an end of the write data exceeds the write append limiter by more than a write allowance index, and only if so, advancing the write append limiter.
-
-
18. A data storage library, comprising:
-
robotics;
multiple cartridge slots accessible by the robotics;
a read/write drive;
a controller, coupled to the robotics and the read/write drive;
where the read/write drive includes a drive mechanism and drive engine, and the drive engine is programmed to perform operations to conduct read/write operations upon removable, serially accessible, data storage media so as to render the media write-once-read-many to a hierarchically superior host, the operations comprising;
receiving one or more write requests from the host, each write request being accompanied by corresponding write data;
establishing a target write location on a data storage medium;
responsive to each write request, performing operations to store the write data so as to preserve any previously stored data, the operations comprising;
referencing a write append limiter sequentially identifying a location on the data storage medium before which data is not permitted to be altered;
determining whether the target write location occurs before or after the write append limiter;
if before, generating an error message;
if after, storing the write data upon the data storage medium beginning at the target write location, and determining whether an end of the write data exceeds the write append limiter by more than a write allowance index, and only if so, advancing the write append limiter. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25)
the write allowance index specifying an amount of data.
-
-
20. The library of claim 19, further comprising:
responsive to the drive receiving an unload command, the drive writing a most recently updated write append limiter to the data storage medium.
-
21. The library of claim 18, where the operation of establishing a target write location on the data storage medium comprises:
receiving specification of the target write location from the host.
-
22. The library of claim 19, where the operation of establishing a target write location on the data storage medium comprises:
establishing the target write location at the write append limiter.
-
23. The library of claim 19, where:
-
following the storage of write data, the drive stores a prescribed size of trailing metadata upon the data storage medium; and
the write allowance index specifies an amount of data substantially equal to the trailing metadata.
-
-
24. The library of claim 19, the operations further including accepting host requests to decrease the write allowance index and rejecting host requests to increase the write allowance index.
-
25. The library of claim 19, where the operation of storing write data stores data logically divided into blocks, and the write allowance index comprises a number of logical blocks expressed as an integer.
Specification