Patent ID: 8631492

Claim:
In a computing device comprising a plurality of computing resources and an operating system interfaced with the computing resources, a system for dynamic management of utilization of computing capacity by an antivirus application, the system comprising: a plurality of distinct security modules defined by program instructions associated with the antivirus application and stored in a non-transitory data storage medium of the computing device that, when executed, cause the computing device to provide a corresponding security-related functionality based on one or more adjustable operational parameters, wherein adjustment of the one or more adjustable operational parameters for each of the security modules affects allocation of available computing capacity needed to execute the security-related functionality of that security module; a dynamic adaptation module defined by program instructions associated with the antivirus application and stored in a non-transitory data storage medium of the computing device that, when executed, cause the computing device to: access a resource requirements data structure stored in a non-transitory data storage medium, the resource requirements data structure containing an identification of the computing resources required by each of the security modules to perform certain corresponding security-related functionality; determine a current state of authorization granted to the antivirus application to access each of the plurality of computing resources via the operating system; compare the current state of authorization with the identification of the computing resources required by at least one of the security modules to produce a comparison result; and automatically adjust the one or more adjustable operational parameters for the at least one of the security modules based on the comparison result such that, in response to a determination that the current state of authorization is insufficient for the antivirus application to access certain ones of the computing resources required by the at least one of the security modules to perform its corresponding functionality, the one or more operational parameters of the at least one of the security modules are adjusted to disable the corresponding functionality and to thereby de-allocate a portion of the computing capacity needed to execute that corresponding functionality.