An implementation of a technology, described herein, for facilitating the
protection computer-executable instructions, such as software. At least
one implementation, described herein, may generate integrity signatures
of one or more program modules--which are sets of computer-executable
instructions--based upon a trace of activity during execution of such
modules and/or near-replicas of such modules. With at least one
implementation, described herein, the execution context of an execution
instance of a program module is considered when generating the integrity
signatures. With at least one implementation, described herein, a
determination may be made about whether a module is unaltered by
comparing integrity signatures. This abstract itself is not intended to
limit the scope of this patent. The scope of the present invention is
pointed out in the appending claims.