Patent ID: 8479166

Claim:
A method of detecting locking discipline violations of shared resources of a computing platform, by a testing process to be executed concurrently with one or more other processes on said computing platform, the testing process comprising: locking a shared resource of said computing platform; reading a value of the shared resource; locally storing the value read from the shared resource to a location other than the shared resource; rereading the value of the shared resource which has been locked, after a predefined time period; generating a locking discipline violation report if the value of said shared resource as reread by said rereading is different from the value of said resource as locally stored by said locally storing generating said list of locks prior to execution of a program which includes said testing process and said one or more other processes; wherein generating said list of locks comprises: performing a static analysis of a source code of said program, to detect one or more locks and one or more, respective, shared resources protected by the one or more locks; identifying substantially all the locks in said program; identify a scope of each lock of said locks; identifying one or more variables that are within the scope of each lock; and generating said list of locks, wherein each lock is associated with the one or more variables within its scope.