Вы можете начать с просмотра класса synchronizer.cpp в текущей версии JDK.Приготовьте себе крепкую чашку кофе - вы выбрали одну из самых сложных областей JVM, чтобы начать углубляться в исходный код.
Если вы еще этого не сделали, я бы также предложилвзгляните на страницу Билла Пью о модели памяти Java и рекомендации Дуга Ли для авторов компиляторов по реализации модели памяти Java .
Вы также можете кое-что почерпнутьот запуска отладочной JVM с включенной опцией для вывода JIT-скомпилированной сборки, которую затем можно проверить.(Это не скажет вам всего, но может дать вам некоторые подсказки: я думаю, что некоторые вещи, которые он печатает, будут, если ничто другое не даст вам некоторые вещи для поиска в исходном коде JDK ...)