Patent ID: 7325041

Claim:
A computer system comprising: a plurality of first computers, wherein a subset of the plurality of first computers stores at least a portion of a file; at least one second computer configured to use the file; and a management computer operatively coupled to the plurality of first computers and to the second computer, wherein: each of the plurality of first computers configured to send to the second computer property information about itself; the management computer configured to manage the computer property information of each of the first computers; the second computer configured to store a plurality of allocation rules associated with a plurality of file types; the second computer further configured to receive a computer property information and a portion of the file from one of the first computers and to compare the received computer property information to one or more allocation rules corresponding to the file type of the received portion of the file; the second computer further configured to receive from the management computer information that identifies other first computers which contain a portion of the file, wherein the information that identifies other first computers comprises a list of said other first computers; for each of the other first computers, if the computer property information does not match said one or more allocation rules, then the second computer instructs said each of the other first computers to send its portion of the file to another first computers; wherein when the second computer determines that the list includes one of the first computers holding another partial file than those to be moved which belong to the distributed file holding the partial file to be moved, the second computer removes the one of the first computers from the list.