Случай с mutex_lock совершенно другой - затрагиваются только потоки, пытающиеся получить доступ к блокировке, и если поток достигает заблокированного мьютекса, то происходит перепланирование. По этой причине mutex_locks нельзя использовать в прерываниях (или других элементарных) контекстах.

процесс в пространстве ядра содержитspin_lockпроцесс не может быть прерван из-за какого-либо из следующих условий:

Когда временной интервал процесса истощаетсяКогда процесс с высоким приоритетом становится работоспособнымКогда происходит прерывание

Однако процесс может дать процессор, если он блокирует, спит или явно вызываетschedule(), Правильно ли мое понимание?

Когда процесс в пространстве ядра содержитmutex_lockМожет ли процесс быть прерван из-за вышеуказанных условий, перечисленных как 1, 2 и 3.

Ответы на вопрос(1)

Ваш ответ на вопрос