Patent ID: 7441159

Claim:
A computer system that contains an operating system, one or more application programs, a mass storage location, and one or more drivers situated in a communication path between the one or more application programs and the mass storage location, wherein one of the drivers included in the one or more drivers is a checksum filter driver that calculates checksum values for data blocks that are transferred along the communication path, wherein the computer system comprises one or more computer-readable media having computer-executable instructions for implementing a method for detecting data corruption, and wherein the method comprises: an act of performing an I/O operation that causes a data block to be transferred along the communication path; an act of dynamically inserting a first checksum filter in a first location along the communication path; an act of calculating a first checksum value for the data block as the data block is being transferred; an act of dynamically inserting a second checksum filter in a second location along the communication path with at least one low level driver between the first location and the second location; an act of performing a subsequent I/O operation that causes the data block to be subsequently transferred along the communication path; an act of calculating a second checksum value for the data block as the data block is being subsequently transferred; and an act of comparing the first checksum value and the second checksum value.