System and method for pausing and resuming move/copy operations
DC CAFCFirst Claim
1. A method for copying data from a source file to a target file on a computer system, said method comprising:
- reading a first data portion from the source file;
writing the first data portion to the target file;
pausing the copying in response to a user requesting a pause operation from a user interface, wherein the computer system is available for other processing operations following the pausing;
reading a second data portion from the source file in response to the user requesting a resume operation; and
writing the second data portion to the target file.
4 Assignments
Litigations
1 Petition
Accused Products
Abstract
A move/copy interface is provided with a pause feature that allows the user to pause and subsequently resume a move or copy command. In one embodiment, the pause, tool saves an index, source file name, target file name, block size and block number so that the operation can be subsequently resumed. After a pause has been requested, a “resume” command button appears on the, user interface that is selected by the user to resume processing. Extended periods between a pause and subsequent resume are provided by saving the pause data to a data file. Another embodiment pauses a copy operation over a computer network, such as the Internet, suspending the source computer'"'"'s sending of blocks of data comprising the source file until the resume operation is requested. The user can repeatedly pause and resume the copy operation in order to free system resources in order to perform other operations.
114 Citations
19 Claims
-
1. A method for copying data from a source file to a target file on a computer system, said method comprising:
-
reading a first data portion from the source file;
writing the first data portion to the target file;
pausing the copying in response to a user requesting a pause operation from a user interface, wherein the computer system is available for other processing operations following the pausing;
reading a second data portion from the source file in response to the user requesting a resume operation; and
writing the second data portion to the target file. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
writing an index to a storage area, the index including a pointer to the second data portion within the source file.
-
-
4. The method as described in claim 3 wherein the writing an index to a storage area further includes:
-
writing a source file path name to the storage area; and
writing a target file path to a storage area.
-
-
5. The method as described in claim 4 wherein the reading a second data portion further comprises:
reading the index, source file path name, and target file path name from the storage area.
-
6. The method as described in claim 1 wherein the source file resides on a remote computer system and wherein the target file resides on the computer system, the method further comprising:
transmitting the first and second data portions across a computer network, the computer network connecting the remote computer system and the computer system.
-
7. The method as described in claim 1 further comprising:
displaying an amount completed, the amount completed showing a total amount of data written to the target file.
-
8. The method as described in claim 1 further comprising:
selecting a block size, the block size corresponding to the size of the first and second data portions.
-
9. The method as described in claim 8 wherein the selecting further includes:
testing a transmission speed between a source file location corresponding with the source file and a target file location corresponding with the target file.
-
10. A computer system comprising:
-
one or more processors;
one or more nonvolatile storage devices accessible by the one or more processors, wherein the nonvolatile storage devices each include a plurality of locations for storing files;
a data file stored at a first location on the nonvolatile storage device;
a copy tool, the copy tool including;
means for reading a first portion of the data file;
means for writing the first portion to a new file, the new file located at a second location;
means for pausing the copy tool in response to a user request from a user interface, wherein the computer system is available for other processing operations following the pausing;
means for resuming the copy tool in response to a user request;
means for reading a second portion of the data file in response to the resuming; and
means for writing the second portion to the second location. - View Dependent Claims (11, 12, 13, 14, 15)
a remote computer system and the computer system interconnected with a computer network, the remote computer system and the computer system each including a nonvolatile storage device, one or more processors, and a network interface, wherein the first location is included in the nonvolatile storage device connected to the remote computer system and wherein the second location is included in the nonvolatile storage device connected to the computer system; and
means for transmitting the first and second portions from the remote computer system to the computer system.
-
-
12. The computer system as described in claim 10 wherein the means for pausing further includes:
means for writing an index to a storage area, the index including a pointer to the second data portion within the data file.
-
13. The computer system as described in claim 10 wherein the means for resuming further includes:
means for reading an index from a storage area, the index including a pointer to the second data portion within the data file.
-
14. The computer system as described in claim 10 further comprising:
-
means for selecting a block size;
wherein each of the means for reading includes means for reading one or more blocks; and
wherein each of the means for writing includes means for writing one or more blocks.
-
-
15. The computer system as described in claim 14 wherein the selecting further includes testing a transmission speed between the first location and the second location.
-
16. A computer program product in a computer usable medium for copying data from a source file to a target file on a computer system, comprising:
-
means for reading a first data portion from the source file;
means for writing the first data portion to the target file;
means for pausing the copying in response to a user requesting a pause operation from a user interface, wherein the computer system is available for other processing operations following the pausing;
means for reading a second data portion from the source file in response to the user requesting a resume operation; and
means for writing the second data portion to the target file. - View Dependent Claims (17, 18, 19)
means for writing an index to a storage area, the index including a pointer to the second data portion within the source file.
-
-
18. The computer program product as described in claim 16 wherein the source file resides on a remote computer system and wherein the target file resides on the computer system, the computer operable medium further comprising:
means for transmitting the first and second data portions across a computer network, the computer network connecting the remote computer system and the computer system.
-
19. The computer program product as described in claim 16 further comprising:
means for selecting a block size, the block size corresponding to the size of the first and second data portions.
Specification