Question: Finally, we put theory into practice by developing a userlevel tool to guard against file corruption. Assume you are to write a simple set of
Finally, we put theory into practice by developing a userlevel tool to guard against file corruption. Assume you are to write a simple set of tools to detect and repair data integrity. The first tool is used for checksums and parity. It should be called build and used like this:

The repair program should consult the .cp file for the filename in question and verify that all the stored checksums match the computed checksums for the data. If the checksums don’t match for a single block, repair should use the redundant information to reconstruct the correct data and fix the file. However, if two or more blocks are bad, repair should simply report that the file has been corrupted beyond repair. To test your system, we will provide a tool to corrupt files called corrupt. It works as follows:
![]()
All corrupt does is fill the specified block number of the file with random noise. For checksums you will be using MD5. MD5 takes an input string and gives you a

build The build program should then store the needed checksum and redundancy information for the file filename in a file in the same directory called .file name.cp (so it is easy to find later). A second program is then used to check and potentially repair damaged files. It should be called repair and used like this: repair
Step by Step Solution
3.41 Rating (160 Votes )
There are 3 Steps involved in it
Based on the provided information you are tasked with creating a pair of tools to manage file integrity through checksums and parity Heres an outline ... View full answer
Get step-by-step solutions from verified subject matter experts
