File archival
First Claim
1. A method of copying a plurality of items, the method being implemented in a computer, the method comprising:
- a parent process in said computer checking if a first item in said plurality is a file or a directory;
the parent process in said computer copying the first item to at least one storage media if the first item is found during the checking to be a file and the parent process creating a child process in said computer if the first item is found during the checking to be a directory;
if the first item is found during the checking to be a directory, the child process in said computer checking if another item in the directory represented by the first item is a file or a directory; and
if the first item is found during the checking to be a file, the parent process in said computer checking if a second item in said plurality is a file or a directory;
wherein at least one item in said plurality of items is copied to said at least one storage media.
2 Assignments
0 Petitions
Accused Products
Abstract
Archival in a computer is performed by creating a process if an item to be copied is a directory, and alternatively by copying the item if the item is a file. The created process in turn recursively performs the just-described acts, e.g. the act of creating or copying, with another item located in the just-described directory. Therefore, depending on the number of directories to be copied, a corresponding number of processes may be created, which speeds up copying. A default limit on a resource available to a copy process may be set to a maximum limit for the resource, for speedy copying. Archival may be speeded up by transferring data from the file into a temporary buffer, locking the temporary buffer, and invoking a direct memory access (DMA) process. Archival may be speeded up also by checking for and eliminating the copying of circular links (such as a symbolic link that points to itself). Such a created process may send an email message if a resource at a destination is full, and wait to be restarted subsequent to sending the email message. A user that receives the email message makes appropriate arrangements (e.g. deletes files in a destination disk or loads a new disk), and therafter restarts the stopped process. On being restarted, the process recopies a file if it was in the middle of copying the file when it was stopped.
21 Citations
42 Claims
-
1. A method of copying a plurality of items, the method being implemented in a computer, the method comprising:
-
a parent process in said computer checking if a first item in said plurality is a file or a directory; the parent process in said computer copying the first item to at least one storage media if the first item is found during the checking to be a file and the parent process creating a child process in said computer if the first item is found during the checking to be a directory; if the first item is found during the checking to be a directory, the child process in said computer checking if another item in the directory represented by the first item is a file or a directory; and if the first item is found during the checking to be a file, the parent process in said computer checking if a second item in said plurality is a file or a directory; wherein at least one item in said plurality of items is copied to said at least one storage media. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 21, 22)
-
-
20. The method of claim I further comprising:
-
checking if the file is in a list of items to be excluded from copying; and performing said copying only if the file is not in said list.
-
-
23. A computer for copying a plurality of items, the computer comprising:
-
a processor comprising means for checking if an item to be copied in said plurality of items is a file or a directory; and said processor further comprising means for copying the item to a storage media if the item is a file and creating a child process if the item is a directory; wherein said child process comprises a copy of said means for checking and said means for copying and creating;
wherein when each item is input to said processor at least one item in said plurality of items is copied to said storage media. - View Dependent Claims (24, 25, 26, 27)
-
-
28. A computer readable storage medium encoded with software, the software comprising instructions to archive an item in a computer by:
-
using a current process to check if said item is a file or a directory; using the current process to copy the item to a storage media if the item is found during checking to be a file and creating a new process if the item is found during checking to be a directory; and using the new process if created to check another item in the directory represented by said item; wherein the new process if created executes simultaneously or contemporaneously with the current process; and wherein at least one item is copied to at least said storage media. - View Dependent Claims (29)
-
-
30. A method of copying a plurality of items, the method being implemented in a computer, the method comprising:
-
a parent process in said computer checking if a first item in said plurality is a file or a directory; the parent process in said computer copying the first item to at least one storage media if the first item is found during the checking to be a file and the parent process creating a child process in said computer if the first item is found during the checking to be a directory; if the first item is found during the checking to be a directory, the child process in said computer checking if another item in the directory represented by the first item is a file or a directory; and if the first item is found during the checking to be a file, the parent process in said computer checking if a second item in said plurality is a file or a directory; wherein at least one item in said plurality of items is copied to said at least one storage media; and wherein, if the first item is found during the checking to be a directory; said child process in said computer is created after said parent process changes a default limit on a resource to a maximum limit; after said creation, the child process inherits the maximum limit prior to performing the checking, the copying and the creating; at least one of the parent process and the child process; allocates memory to hold at least a temporary buffer and a stack, stores in said stack an absolute path and a local path to said directory, checks if an entry in said directory is a symbolic link, checks if the symbolic link is circular, and ignores the symbolic link if circular; checks if a destination is full and sends an email message if a result thereof is true and waits to be restarted subsequent to said sending; and transfers data to said temporary buffer, locks said temporary buffer and invokes a direct memory access process for making a copy from said temporary buffer to said destination. - View Dependent Claims (31)
-
-
32. A computer readable storage medium comprising software that when executed causes a computer to perform a method, the software comprising:
-
a plurality of first instructions to check if a first item received as input is a file; a plurality of second instructions, responsive to the first item being found to be a file, to copy the first item to at least one storage media; a plurality of third instructions, responsive to the first item being found to be not a file and using as input a second item within a directory represented by said first item, to create a child process to execute said first instructions and to execute either said second instructions or said third instructions depending on whether said second item is a file; wherein on execution of said software at least one of said first item and said second item is copied by said computer to at least said storage media. - View Dependent Claims (33, 34, 35, 36, 37, 38, 39, 40, 41)
-
-
42. A computer readable storage medium comprising software that when executed causes a computer to copy a plurality of items, the software comprising:
-
instructions, for a parent process in said computer, to check if a first item in said plurality is a file or a directory; instructions for the parent process in said computer to copy the first item to at least one storage media if the first item is found to be a file, and instructions for the parent process to create a child process in said computer if the first item is found to be a directory; instructions to be executed if the first item is found to be a directory, for the child process in said computer to check if another item in the directory represented by the first item is a file or a directory; and instructions to be executed if the first item is found to be a file, for the parent process in said computer to check if a second item in said plurality is a file or a directory; wherein by execution of said instructions, at least one item in said plurality of items is copied to said at least one storage media; and wherein during execution of said instructions, if the first item is found to be a directory; said child process in said computer is created after said parent process changes a default limit on a resource to a maximum limit; after said creation, the child process inherits the maximum limit prior to performing the checking, the copying and the creating;
at least one of the parent process and the child process;
allocates memory to hold at least a temporary buffer and a stack, stores in said stack an absolute path and a local path to said directory,checks if an entry in said directory is a symbolic link, checks if the symbolic link is circular, and ignores the symbolic link if circular;
checks if a destination is full and sends an email message if a result thereof is true and waits to be restarted subsequent to said sending; andtransfers data to said temporary buffer, locks said temporary buffer and invokes a direct memory access process for making a copy from said temporary buffer to said destination.
-
Specification