Object oriented storage device having a disc drive controller providing an interface exposing methods which are invoked to access objects stored in a storage media
First Claim
Patent Images
1. A data storage device configurable to perform a data storage function by being coupled to a host in a computer system, the data storage device comprising:
- non-volatile storage media having stored thereon data configured as a plurality of objects, each object having attributes indicative of characteristics of the object; and
a data storage device control component, configured to be coupled to the host and operably coupled to the storage media, and configured to manage storage of the objects on the storage media according to an object file system by providing an interface to the objects, the interface exposing methods which are invoked to access the objects.
8 Assignments
0 Petitions
Accused Products
Abstract
A data storage device includes storage media having stored thereon data configured as a plurality of objects, each object having attributes indicative of characteristics of the object. A control component is operably coupled to the storage media and is configured to provide an interface to the objects. The interface exposes methods which are invoked to access the objects.
-
Citations
45 Claims
-
1. A data storage device configurable to perform a data storage function by being coupled to a host in a computer system, the data storage device comprising:
-
non-volatile storage media having stored thereon data configured as a plurality of objects, each object having attributes indicative of characteristics of the object; and
a data storage device control component, configured to be coupled to the host and operably coupled to the storage media, and configured to manage storage of the objects on the storage media according to an object file system by providing an interface to the objects, the interface exposing methods which are invoked to access the objects. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 27)
a device control object including attributes indicative of characteristics of the data storage device.
-
-
3. The data storage device of claim 2 wherein the device control object includes attributes indicative of characteristics of other objects of the plurality of objects on the storage media.
-
4. The data storage device of claim 1 wherein the storage media is divided into a plurality of partitions, each partition including a plurality of objects.
-
5. The data storage device of claim 4 wherein the plurality of objects comprises:
a plurality of partition control objects corresponding to the plurality of partitions, each partition control object including attributes indicative of characteristics of the corresponding partition.
-
6. The data storage device of claim 5 wherein each of the partition control objects comprises attributes indicative of characteristics pertaining to all objects in the corresponding partition.
-
7. The data storage device of claim 4 wherein the plurality of objects comprises:
a plurality of partition list objects associated with the plurality of partitions, each partition list object including attributes indicative of identifying data identifying objects stored in an associated partition.
-
8. The data storage device of claim 7 wherein the methods comprise:
a remove method which, when invoked, causes the control component to delete a specified object from the storage media by releasing identifying data previously associated with the specified object.
-
9. The data storage device of claim 7 wherein the each of the plurality of partition list objects is stored in the associated partition.
-
10. The data storage device of claim 4 wherein the methods comprise:
a create partition method which, when invoked, causes the control component to divide the storage media into the plurality of partitions.
-
11. The data storage device of claim 4 wherein the methods comprise:
a remove partition method which, when invoked, causes the control component to remove a specified partition from the storage media.
-
12. The data storage device of claim 1 wherein some of the plurality of objects have portions thereof stored on a plurality of storage devices and wherein the plurality of objects comprises:
a device association object including association attributes indicative of associations among two or more data storage devices.
-
13. The data storage device of claim 12 wherein the methods comprise:
a device association method which, when invoked, causes the control component to access the association attributes.
-
14. The data storage device of claim 13 wherein the device association method comprises:
a get association attributes method which, when invoked, causes the control component to obtain and return the association attributes.
-
15. The data storage device of claim 13 wherein the device association method comprises:
a set association attributes method which, when invoked, causes the control component to set the association attributes.
-
16. The data storage device of claim 1 wherein the storage device is coupleable to a requester and wherein the methods comprise:
an open method which, when invoked by the requester, provides the requester with access to an object on the storage device.
-
17. The data storage device of claim 16 wherein the open method comprises:
an open create method which, when invoked by the requester, causes the control component to create a new object on the storage media having attributes specified by the requester.
-
18. The data storage device of claim 16 wherein the open method comprises:
an open update method which, when invoked by a requester, causes the control component to modify an object identified by the requester in a way specified by the requester.
-
19. The data storage device of claim 16 wherein the open method comprises:
an open read method which, when invoked by the requester, causes the control component to open an object identified by the requester for reading only.
-
20. The data storage device of claim 1 wherein the storage device is coupleable to a requester and wherein the methods comprise:
a read method which, when invoked by the requester, causes the control component to return data stored in an object specified by the requester.
-
21. The data storage device of claim 20 wherein the methods comprise:
a write method which, when invoked by the requester, causes the control component to write data specified by the requester to an object specified by the requester.
-
22. The data storage device of claim 20 wherein the methods comprise:
a close method which, when invoked by the requester, causes the control component to identify a specified object previously opened by the requester as closed.
-
23. The data storage device of claim 22 wherein the close method further causes the control component to save changes made to the specified object while the specified object was open.
-
24. The data storage device of claim 1 wherein the data storage device is coupleable to a second data storage device and wherein the methods comprise:
an export object which, when invoked, causes the control component to copy a specified object to the second data storage device.
-
25. The data storage device of claim 1 wherein the data storage device is coupleable to a requester and wherein the methods comprise:
a get object attributes method which, when invoked by the requester, causes the control component to obtain and return attributes of an object specified by the requester.
-
27. The data storage device of claim 1 wherein the methods comprise:
a lock method which, when invoked, causes the control component to access lock attributes of a specified object, the lock attributes being indicative of whether one of the specified object, a specified partition, and the data storage device are currently accessible.
-
26. The data storage device 1 wherein the data storage device is coupleable to a requester and wherein the methods comprise:
a set object attributes method which, when invoked by the requester, causes the control component to set attributes of an object specified by the requester.
-
28. A method of storing data on a disc drive, the method comprising steps of:
-
(a) using a disc drive controller on the disc drive, storing data on a disc according to an object file system as a plurality of objects, each object having attributes indicative of characteristics of the object; and
(b) accessing the objects on the disc through the disc drive controller and through the object file system which includes an interface to the objects by invoking functions exposed by the interface. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39)
(a) (1) storing a device control object on the disc including attributes indicative of characteristics of the data storage device.
-
-
30. The method of claim 28 wherein the disc is divided into a plurality of partitions, each partition including a plurality of objects, and wherein the storing step (a) comprises a step of:
(a) (1) storing on the disc one of a plurality of partition control objects corresponding to a selected one of the plurality of partitions, each partition control object including attributes indicative of characteristics of the corresponding partition.
-
31. The method of claim 30 wherein the storing step (a) comprises a step of:
(a) (3) storing on the disc one of a plurality of partition list objects associated with the plurality of partitions, each partition list object including attributes indicative of identifying data identifying objects stored in an associated partition.
-
32. The method of claim 31 wherein the accessing step (b) comprise a step of:
invoking a remove function to delete a specified object from the disc by releasing identifying data previously associated with the specified object.
-
33. The method of claim 31 wherein the accessing step (b) comprises a step of:
invoking at least one of a create partition function to divide the disc into the plurality of partitions, and a remove partition function to remove a specified partition from the disc.
-
34. The method of claim 28 the storing step (a) comprises a step of:
storing a device association object including association attributes indicative of associations among two or more disc drives.
-
35. The method of claim 34 wherein the accessing step (b) comprises a step of:
-
invoking a get association attributes function to obtain and return the association attributes; and
invoking a set association attributes function to set the association attributes in the device association object.
-
-
36. The method of claim 28 wherein the disc drive is coupleable to a requester and wherein the accessing step (b) comprise a step of:
-
invoking an open function to provide the requester with access to an object on the disc drive, the step of invoking the open function including at least one of the steps of;
invoking an open create function to create a new object on the disc having attributes specified by the requester;
invoking an open update function to modify an object identified by the requester in a way specified by the requester; and
invoking an open read function to open an object identified by the requester for reading only.
-
-
37. The method of claim 28 wherein the disc drive is coupleable to a requester and wherein the accessing step (b) comprises steps of at least one of:
-
invoking a read function to return data stored in an object specified by the requester;
invoking a write function to write data specified by the requester to an object specified by the requester; and
invoking a close function to identify a specified object previously opened by the requester as closed.
-
-
38. The method of claim 28 wherein the disc drive is coupleable to a second disc drive and wherein the accessing step (b) comprises a step of:
invoking an export object function to copy a specified object to the second disc drive.
-
39. The method of claim 28 wherein the accessing step (b) comprises a step of:
invoking a lock function to access lock attributes of a specified object, the lock attributes being indicative of whether one of the specified object, a specified partition, and the data storage device are currently accessible.
-
40. A data storage system including a first disc drive, the first disc drive comprising:
-
a data head;
a data storage disc, rotatably mouinted relative to the data head and having stored thereon data configured as a plurality of objects, each object having attributes indicative of characteristics of the object; and
a disc drive control component, operably coupled to the data storage disc, configured to manage the objects according to an object file system by providing an interface to the objects, the interface exposing methods which are invoked to access the objects. - View Dependent Claims (41, 42, 43, 44)
a device control object including attributes indicative of characteristics of the first disc drive and indicative of characteristics of other objects of the plurality of objects on the storage media.
-
-
42. The data storage system of claim 40 wherein the data storage disc is divided into a plurality of partitions, each partition including a plurality of objects, and wherein the plurality of objects comprises:
-
a plurality of partition control objects corresponding to the plurality of partitions, each partition control object including attributes indicative of characteristics of the corresponding partition and indicative of characteristics pertaining to all objects in the corresponding partition; and
a plurality of partition list objects associated with the plurality of partitions, each partition list object including attributes indicative of identifying data identifying objects stored in an associated partition.
-
-
43. The data storage system of claim 42 wherein the methods comprise:
-
a remove method which, when invoked, causes the control component to delete a specified object from the data storage disc by releasing identifying data previously associated with the specified object;
a create partition method which, when invoked, causes the control component to divide the data storage disc into the plurality of partitions; and
a remove partition method which, when invoked, causes the control component to remove a specified partition from the data storage disc.
-
-
44. The data storage system of claim 40 including a second disc drive operably coupled to the first disc drive and wherein the plurality of objects comprises:
a device association object including association attributes indicative of associations among two or more disc drives, and wherein the methods comprise a device association method which, when invoked, causes the control component to access the association attributes.
-
45. A computer readable medium having instructions stored thereon which, when executed by a disc drive controller in a data storage system, cause the disc drive controller to perform steps of:
-
(a) storing data on a data storage disc according to an object file system as a plurality of objects, each object having attributes indicative of characteristics of the object; and
(b) accessing the objects on the data storage disc through the object file system which includes an interface to the objects by invoking functions exposed by the interface.
-
Specification