Thin Locks: Featherweight Synchronization for Java (1998) [pdf]
citeseerx.ist.psu.edu
citeseerx.ist.psu.edu
IIRC sometime later a further important optimization, known as biased locking[1], was added to Java locks to avoid, in the always uncontended case, the expensive CAS required to acquire the lock.
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.92....
>You have exceeded your daily download allowance.
Same just in PostScript