thread ht 2 attempts to simulate an access to the memory frame while reserved frame is being accessed by the simulated thread that placed the reservation frame proxy 26 a sends the request to a trap frame 26 c instead of sending the request onward to the underlying memory frame frame proxy 26 a accomplishes this diversion by setting the head of the frame chain to point to trap frame 26 c simulator thread ht 2 which has entered trap frame 26 c waits on a spinlock 28 that has been initialized by frame proxy 26 a in the wait loop for spinlock 28 trap frame 26 c compares the pointer at the head of the frame proxy 26 a to its own pointer as illustrated by fig4 c spinlock 28 is released once frame proxy 26 a receives the response to the access by the simulated thread that placed the reservation in response to completing the access frame proxy 26 a removes trap frame 26 c from the head of the frame chain which is in turn detected by the wait loop for spinlock 28 as described above frame proxy 26 a sets the head of the frame chain to point.