Partition manipulation architecture supporting multiple file systems
First Claim
1. A computer system implementing a partition manipulation architecture capable of supporting multiple file systems on a computer, the computer having a processor for executing instructions, a memory for storing instructions, and a partitionable storage medium for holding data in sectors according to a partition table, the memory and the partitionable storage medium being accessible by execution of processor instructions, the computer system comprising:
- a data replicator for replicating data from a source sector in a selected partition to a destination sector in a modified partition in the partitionable storage medium, the data replicator having an initialization interface for interfacing to any of a plurality of initialization modules according to a format which is substantially independent of each file system of the computer system, the initialization interface including a source sector identification identifying the source sector, the initialization interface further including a result generated in response to events which include success, memory allocation errors, and disk access errors;
an initialization module which is capable of generating the sector identifications and otherwise interfacing with the data replicator through the initialization interface; and
a partition table utilizer for accessing the partition table and maintaining the integrity and self-consistency of the partition table in connection with data replication.
4 Assignments
0 Petitions
Accused Products
Abstract
Methods and systems are provided for implementing partition manipulation tools. One embodiment of a partition manipulation computer system implements an architecture that supports multiple file systems on a computer. The computer system includes a data replicator for replicating data from a selected partition to a modified partition in a partitionable storage medium. The data replicator has an initialization interface for interfacing to initialization modules in a format that is substantially independent of each file system used on the computer system. The initialization modules, which may be specific to one or more file systems, generate sector identifications. A verification interface and a completion interface are also provided, for interfacing with file-system-specific verification and completion modules.
137 Citations
46 Claims
-
1. A computer system implementing a partition manipulation architecture capable of supporting multiple file systems on a computer, the computer having a processor for executing instructions, a memory for storing instructions, and a partitionable storage medium for holding data in sectors according to a partition table, the memory and the partitionable storage medium being accessible by execution of processor instructions, the computer system comprising:
-
a data replicator for replicating data from a source sector in a selected partition to a destination sector in a modified partition in the partitionable storage medium, the data replicator having an initialization interface for interfacing to any of a plurality of initialization modules according to a format which is substantially independent of each file system of the computer system, the initialization interface including a source sector identification identifying the source sector, the initialization interface further including a result generated in response to events which include success, memory allocation errors, and disk access errors; an initialization module which is capable of generating the sector identifications and otherwise interfacing with the data replicator through the initialization interface; and a partition table utilizer for accessing the partition table and maintaining the integrity and self-consistency of the partition table in connection with data replication. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer system implementing a partition manipulation architecture capable of supporting multiple file systems on a computer, the computer having a processor for executing instructions, a memory for storing instructions, and a partitionable storage medium for holding data in sectors according to a partition table, the memory and the partitionable storage medium being accessible by execution of processor instructions, the computer system comprising:
-
a data replicator for replicating data from a source sector in a selected partition to a destination sector in a modified partition in the partitionable storage medium, the data replicator having an initialization interface for interfacing to any of a plurality of initialization modules according to a format which is substantially independent of each file system of the computer system, the initialization interface including a source sector identification identifying the source sector; an initialization module which is capable of generating the sector identifications and otherwise interfacing with the data replicator through the initialization interface; and a partition table utilizer for accessing the partition table and maintaining the integrity and self-consistency of the partition table in connection with data replication; wherein the initialization module avoids bad sectors by omitting sectors from at least one of the initialization interface sector identifications.
-
-
10. A computer system implementing a partition manipulation architecture capable of supporting multiple file systems on a computer, the computer having a processor for executing instructions, a memory for storing instructions, and a partitionable storage medium for holding data in sectors according to a partition table, the memory and the partitionable storage medium being accessible by execution of processor instructions, the computer system comprising:
-
a data replicator for replicating data from a source sector in a selected partition to a destination sector in a modified partition in the partitionable storage medium, the data replicator having an initialization interface for interfacing to any of a plurality of initialization modules according to a format which is substantially independent of each file system of the computer system, the initialization interface including a source sector identification identifying the source sector; an initialization module which is capable of generating the sector identifications and otherwise interfacing with the data replicator through the initialization interface; and a partition table utilizer for accessing the partition table and maintaining the integrity and self-consistency of the partition table in connection with data replication; wherein the initialization interface further includes a bad sector identification.
-
-
11. A computer system implementing a partition manipulation architecture capable of supporting multiple file systems on a computer, the computer having a processor for executing instructions, a memory for storing instructions, and a partitionable storage medium for holding data in sectors according to a partition table, the memory and the partitionable storage medium being accessible by execution of processor instructions, the computer system comprising:
-
a data replicator for replicating data from a source sector in a selected partition to a destination sector in a modified partition in the partitionable storage medium, the data replicator having an initialization interface for interfacing to any of a plurality of initialization modules according to a format which is substantially independent of each file system of the computer system, the initialization interface including a source sector identification identifying the source sector; an initialization module which is capable of generating the sector identifications and otherwise interfacing with the data replicator through the initialization interface; and a partition table utilizer for accessing the partition table and maintaining the integrity and self-consistency of the partition table in connection with data replication; wherein the initialization module is specific to at least one file system of the computer system and includes a means for relocating user data to avoid colliding with a bad sector during replication.
-
-
12. A computer system implementing a partition manipulation architecture capable of supporting multiple file systems on a computer, the computer having a processor for executing instructions, a memory for storing instructions, and a partitionable storage medium for holding data in sectors according to a partition table, the memory and the partitionable storage medium being accessible by execution of processor instructions, the computer system comprising:
-
a data replicator for replicating data from a source sector in a selected partition to a destination sector in a modified partition in the partitionable storage medium, the data replicator having an initialization interface for interfacing to any of a plurality of initialization modules according to a format which is substantially independent of each file system of the computer system, the initialization interface including a source sector identification identifying the source sector; an initialization module which is capable of generating the sector identifications and otherwise interfacing with the data replicator through the initialization interface; and a partition table utilizer for accessing the partition table and maintaining the integrity and self-consistency of the partition table in connection with data replication; wherein the data replicator also has a verification interface for interfacing to any of a plurality of verification modules according to a format which is substantially independent of the file systems, and the system further comprises a verification module which is specific to at least one file system, which is capable of verifying the integrity and self-consistency of system structures used by the at least one file system, and which is capable of interfacing with the data replicator through the verification interface.
-
-
13. A computer system implementing a partition manipulation architecture capable of supporting multiple file systems on a computer, the computer having a processor for executing instructions, a memory for storing instructions, and a partitionable storage medium for holding data in sectors according to a partition table, the memory and the partitionable storage medium being accessible by execution of processor instructions, the computer system comprising:
-
a data replicator for replicating data from a source sector in a selected partition to a destination sector in a modified partition in the partitionable storage medium, the data replicator having an initialization interface for interfacing to any of a plurality of initialization modules according to a format which is substantially independent of each file system of the computer system, the initialization interface including a source sector identification identifying the source sector; an initialization module which is capable of generating the sector identifications and otherwise interfacing with the data replicator through the initialization interface; and a partition table utilizer for accessing the partition table and maintaining the integrity and self-consistency of the partition table in connection with data replication; wherein the data replicator also has a completion interface for interfacing to any of a plurality of completion modules according to a format which is substantially independent of the file systems, and the system further comprises a completion module which is capable of interfacing with the data replicator through the completion interface. - View Dependent Claims (14)
-
-
15. A computer system implementing a partition manipulation architecture capable of supporting multiple file systems on a computer, the computer having a processor for executing instructions, a memory for storing instructions, and a partitionable storage medium for holding data in sectors according to a partition table, the memory and the partitionable storage medium being accessible by execution of processor instructions, the computer system comprising:
-
a data replicator for replicating data from a source sector in a selected partition to a destination sector in a modified partition in the partitionable storage medium, the data replicator having an initialization interface for interfacing to any of a plurality of initialization modules according to a format which is substantially independent of each file system of the computer system, the initialization interface including a source sector identification identifying the source sector; an initialization module which is capable of generating the sector identifications and otherwise interfacing with the data replicator through the initialization interface; and a partition table utilizer for accessing the partition table and maintaining the integrity and self-consistency of the partition table in connection with data replication; wherein the data replicator utilizes an area of memory to temporarily store data during replication, and the size of the memory area depends at least on the extent of any overlap between the selected partition and the modified partition, the amount of available memory, and the size of the selected partition.
-
-
16. A computer system comprising:
-
a computer having a processor, a memory, and a partitionable storage medium for holding data in sectors according to a partition table; data replication means for replicating data from source sectors in a selected partition to destination sectors in a modified partition in the partitionable storage medium, the data replication means comprising a window sizing means for determining the maximum number of sectors to be buffered together in volatile memory; file-system-specific initialization module means for generating a source sector identification; and initialization interface means for interfacing the data replication means with the initialization module means in a file-system-independent format. - View Dependent Claims (17)
-
-
18. A computer system comprising:
-
a computer having a processor, a memory, and a partitionable storage medium for holding data in sectors according to a partition table; data replication means for replicating data from source sectors in a selected partition to destination sectors in a modified partition in the partitionable storage medium; file-system-specific initialization module means for generating a source sector identification; initialization interface means for interfacing the data replication means with the initialization module means in a file-system-independent format; verification module means for processing a request to verify the integrity and self-consistency of file system structures; and verification interface means for interfacing the data replication means with the verification module means in a file-system-independent format.
-
-
19. A computer system comprising:
-
a computer having a processor, a memory, and a partitionable storage medium for holding data in sectors according to a partition table; data replication means for replicating data from source sectors in a selected partition to destination sectors in a modified partition in the partitionable storage medium; file-system-specific initialization module means for generating a source sector identification; initialization interface means for interfacing the data replication means with the initialization module means in a file-system-independent format; completion module means for processing a request to update system structures; and completion interface means for interfacing the data replication means with the completion module means in a file-system-independent format.
-
-
20. A computer system comprising:
-
a computer having a processor, a memory, and a partitionable storage medium for holding data in sectors according to a partition table; data replication means for replicating data from source sectors in a selected partition to destination sectors in a modified partition in the partitionable storage medium; file-system-specific initialization module means for generating a source sector identification; initialization interface means for interfacing the data replication means with the initialization module means in a file-system-independent format; and a means for identifying bad sectors in the modified partition; wherein a bad sector is located at a relative position within the modified partition, a user data or file system structure sector is located at a relative position within the selected partition, and the system further comprises a means for determining whether the relative position of the bad sector and the relative position of the user data or file system structure sector intersect. - View Dependent Claims (21)
-
-
22. A method for providing a partition manipulation tool, comprising the computer-assisted steps of:
-
providing a data replicator for replicating data from source sectors in a selected partition to destination sectors in a modified partition in a partitionable storage medium, the data replicator having a window sizer which determines the maximum number of sectors to be buffered together in volatile memory; providing an initialization module for generating a source sector identification; and interfacing the data replicator with the initialization module in a file-system-independent format. - View Dependent Claims (23, 24, 25, 26, 27)
-
-
28. A method for providing a partition manipulation tool, comprising the computer-assisted steps of:
-
providing a data replicator for replicating data from source sectors in a selected partition to destination sectors in a modified partition in a partitionable storage medium; providing an initialization module for generating a source sector identification; interfacing the data replicator with the initialization module in a file-system-independent format; providing a file-system-specific verification module for verifying the integrity and self-consistency of file system structures; and interfacing the data replicator with the verification module in a file-system-independent format.
-
-
29. A method for providing a partition manipulation tool, comprising the computer-assisted steps of:
-
providing a data replicator for replicating data from source sectors in a selected partition to destination sectors in a modified partition in a partitionable storage medium; providing an initialization module for generating a source sector identification; interfacing the data replicator with the initialization module in a file-system-independent format; providing a file-system-specific completion module for updating file system structures used to avoid bad sectors; and interfacing the data replicator with the completion module in a file-system-independent format.
-
-
30. A method for providing a partition manipulation tool, comprising the computer-assisted steps of:
-
providing a data replicator for replicating data from source sectors in a selected partition to destination sectors in a modified partition in a partitionable storage medium; providing an initialization module for generating a source sector identification; interfacing the data replicator with the initialization module in a file-system-independent format; using the interfaced data replicator and initialization module to produce a modified partition by replicating a selected partition; wherein the modified partition and the selected partition reside on different disk drives which are attached to two different computers. - View Dependent Claims (31, 32)
-
-
33. A computer storage medium having a configuration that represents data and instructions which will cause at least a portion of a computer system to perform method steps for providing a partition manipulation tool, the method steps comprising:
-
providing a data replicator for replicating data from source sectors in a selected partition to destination sectors in a modified partition in a partitionable storage medium, the data replicator having a window sizer; providing an initialization module for generating a source sector identification; and interfacing the data replicator with the initialization module in a file-system-independent format.
-
-
34. A computer storage medium having a configuration that represents data and instructions which will cause at least a portion of a computer system to perform method steps for providing a partition manipulation tool, the method steps comprising:
-
providing a data replicator for replicating data from source sectors in a selected partition to destination sectors in a modified partition in a partitionable storage medium; providing an initialization module for generating a source sector identification; interfacing the data replicator with the initialization module in a file-system-independent format; providing a file-system-specific verification module for verifying the integrity and self-consistency of file system structures; and interfacing the data replicator with the verification module in a file-system-independent format. - View Dependent Claims (35, 36, 37, 38, 39, 40, 41, 42, 43, 44)
-
-
45. A computer storage medium having a configuration that represents data and instructions which will cause at least a portion of a computer system to perform method steps for providing a partition manipulation tool, the method steps comprising:
-
providing a data replicator for replicating data from source sectors in a selected partition to destination sectors in a modified partition in a partitionable storage medium; providing an initialization module for generating a source sector identification; interfacing the data replicator with the initialization module in a file-system-independent format; providing a file-system-specific completion module for updating file system structures used to avoid bad sectors; and interfacing the data replicator with the completion module in a file-system-independent format.
-
-
46. A computer storage medium having a configuration that represents data and instructions which will cause at least a portion of a computer system to perform method steps for providing a partition manipulation tool, the method steps comprising;
-
providing a data replicator for replicating data from source sectors in a selected partition to destination sectors in a modified partition in a partitionable storage medium; providing an initialization module for generating a source sector identification; interfacing the data replicator with the initialization module in a file-system-independent format; and using the interfaced data replicator and initialization module to produce a modified partition by replicating a selected partition; wherein the modified partition and the selected partition reside on different disk drives which are attached to two different computers.
-
Specification