Abstract:
A method is described. The method includes checking a raw event generated by a file system against a set of predicates conditions indicative of a high-level user operation. The method also includes filtering multiple raw events with a finite state machine (FSM) in response to determining that the raw event matches a predicate condition. The method further includes identifying a single high-level event for the high-level user operation based on the multiple raw events filtered by the FSM.
Abstract:
A computing device configured for replacing a target method in intermediate language code is described. The computing device includes a processor. The computing device also includes memory in electronic communication with the processor. The computing device further includes instructions stored in the memory. The instructions are executable to import a hook method and hook type into a caller method module. The instructions are also executable to replace, in intermediate language code, any call to the target method in a caller method body with a call to the hook method. The instructions are further executable to compile the intermediate language code to assembly language code. The instructions are additionally executable to call the hook method in place of the target method.