Patent ID: 8539500

Claim:
An electronic device, comprising: a memory; a processor coupled to the memory; one or more policies stored in the memory, including: a resource availability policy determining whether the processor should continue a previously initiated evaluation of software; and a job availability policy determining whether new jobs will be created for unexplored branches; wherein the job availability policy comprises a rule that new jobs are created from unexplored branches upon termination of the received job; wherein the processor is configured to: receive a job to be executed, the job comprising an indication of a portion of software to be evaluated; evaluate the software; if a branch in the software is encountered: select a branch to explore; and store an initialization sequence of one or more unexplored branches; evaluate the job availability policy; based on the job availability policy, decide whether to create a job for each of the unexplored branches; evaluate the resource availability policy; and based on the resource availability policy, decide whether to continue evaluating the software at the branch selected to explore.