The newly introduced mutexes and semaphores are similar to OS-level synchronization objects like those in the Win32 API or the POSIX counterparts. Question: Are they somehow based on OS-level mutexes and semaphores? (I'm quite sure the answer is "no", at least I have not discovered according OS objects when creating mutexes and semaphores in the database.)
(*) As an example, we have used Win32 events for years to "automatically" run SQL Remote on the consolidated database when system data has been modified over night, i.e. the maintenance task in the database (a user-defined database EVENT, not to confuse with an OS-level event!) would set an according Win32 event, and a thread in a different process would "wake up" and run SQL Remote then. Besides that, it's apparent that the database objects allow for synchronization between different machines as long as they are connected to the same database. |
You assumption is correct. The answer is NO, the mutexes and semaphores are implemented within the server and do not use any OS level primitives. |