Я изучаю операционную систему сейчас, и я совершенно смущен двумя понятиями: mutex и атомная операция. По моему мнению, они такие же, но мой учитель ОС дает нам такой вопрос:Есть ли разница между «мьютексом» и «атомной операцией»?
Предположим, что многопроцессорное ядро операционной системы отслеживает количество процессов, созданных каждым пользователем. Это ядро операционной системы поддерживает переменную счетчика для каждого пользователя, которую он увеличивает каждый раз при создании нового процесса для пользователя и уменьшается каждый раз, когда процесс от этого пользователя заканчивается. Кроме того, эта операционная система работает на процессоре, который предоставляет инструкции по упорядочиванию и приложению атома, а также выборку и уменьшение. Должна ли операционная система обновлять счетчик с помощью инструкций по увеличению и уменьшению количества атомов или обновлять счетчик в критическом разделе, защищенном мьютексом?
Этот вопрос указывает, что мьютекс и атомная операция - это две вещи. Может ли кто-нибудь помочь мне с этим?