1. A method, comprising: creating a virtual machine (VM) image of an operating system (OS); loading the VM image into a caching application using a mount utility; enumerating file contents of the OS and program file directories on a root file system; storing the enumeration as a directory enumeration result; reading in sequence, from beginning to end, each file in the directory enumeration result in a predetermined segment size; hashing each segment read using a hashing function to generate a hash entry for each segment, the hash entry including an assigned value that is an integer associated with hash entry based on the file contents; and storing each hash entry and its associated assigned value in a hash table data structure.