В случае однопроцессорного режима мы отключим прерывания перед выполнением операции блокировки (блокировка получения, блокировка), чтобы предотвратить переключение контекста , а затем после операции мы снова включили его.Понимание проблем с операциями атомной блокировки в случае многопроцессорных процессоров
Но в случае многопроцессорного процессора просто отключить прерывания недостаточно, чтобы сделать операции блокировки атомарными.
Я прочитал от источника, что «Это происходит, поскольку каждый процессор имеет кэш, и они могут записываться в одну и ту же память даже при отключенных прерываниях».
Q1. Почему это даже имеет значение в случае работы с атомным замком?
Q2. Каковы другие проблемы, возникающие при реализации операций блокировки в многопроцессорной среде с отключением прерываний?