Project Detail

Block Level file copy  

Block Level file copy is project number 123681
posted at Freelancer.com. Click here to post your own project.

 

| More Free Trial For New Buyers
 

Status:

Selected Providers: HussienSharaf

Budget: $30-100

Created: 02/06/2007 at 6:43 EST

Bid Count: 1

Average Bid:
N/A

02/16/2007 at 6:43 EST

Project Creator: zenu
Employer Rating: 10/1010/1010/1010/1010/1010/1010/1010/1010/1010/10 (4 reviews)

Bid On This Project
 

Description

Hi,

I need to be able to capture the changes between 2 files and save them to a 3rd diff file. Note that only the changes should be saved to these diff file. The catch is that I need this to support both small and large files and both text and binary files.

Here is somemore details on how it should function...

Scenario:
souce file = d:testfile1.txt
target file = g:backupfile1.txt
versioned files = g:backupfile1.txt.b00, file1.txt.b01, file1.txt.b02, etc...

Block level Copy function
============================
Block.Copy(src, tgt, append)
src = File to process
tdt = path to store copy of src
append = True/False.
If True append changes from src to tgt
If False create separate diff files with ".bxxx
extention to store each
change. The xxx represents the version.

Example:
if g:backupfile1.txt does not exist Copy D:testfile1.txt to g:backupfile1.txt and subsequent changes to g:backupfile1.txt.b01, file1.txt.b02, etc...

Block.Copy(d:testfile1.txt, g:backupfile1.txt, false)

Block level Restore function
============================
Block.Restore(src, tgt, version)
src = The first copy of the original file
tgt = The path to recreate the original file in
version = the point in time version to restore the file to.

Example:
Restore the 3rdt version of g:backupfile1.txt to d:testfile1.txt

Block.Restore(g:backupfile1.txt, d:testfile1.txt, 3)

I would expect that the solution will handle any file type (text, binary, etc.) The sizes may range from a few KB to 10GB+.

The large files may be ISO images, outlook PST's, NT Backup .bk images, and a variety of other files.

If the parameter "Append" = False Then The differential files (*.bxxx) should contain only the changes. So if I change the original by inserting "Zenu" only Zenu and minimal pointers are saved to the diff file. This is important because as if it is not done I could end up using too much disk space for the changes.

If the parameter "Append" = True Then only append the changes to the target file and do not create additional diff files.

The algorythm should be able to process any files with minimal Memory, and Disk utilization but at the same time be efficient. CPU utilization should be considered as well.

Reagards,

Zenu

Messages Posted:0 View project clarification board Post message on project clarification board

Bid On This Project
 

If you are the project creator or one of the bidders Log In for more options

Bids are hidden by the project creator. Log in as the project creator or as one of the bidders to view bids. You will not be able to bid on this project if you are not qualified in one of the job categories. To see your qualifications click here.


    Bid on this Project