я имел экзамен и я столкнулся этот вопрос на экзамене:операционной системы и параллельных потоков
Для каждого из приведенных ниже утверждений, указывают в одном предложении или не утверждение истинным или ложным, и почему. • В среде параллельного программирования, которая обеспечивает потоки без преднамеренного планирования (т. Е. без принудительных переключателей контекста), синхронизация взаимного исключения не требуется.
После экзамена я получил ответ, который:
[Ложные. Синхронизация Mutex по-прежнему требуется (1) на мультипроцессорах и (2) на однопроцессорных устройствах для критических секций, которые содержат операции блокировки.]
Но я не могу его подстать. Может ли кто-нибудь объяснить это ясно?
Спасибо, но как T1 может быть заблокирован, когда мы используем потоки, не связанные с упреждением? –
non-preemptive означает, что планировщик не может остановить поток и позволить другому работать. Таким образом, поток может блокировать только добровольно. Но операция, как и чтение с жесткого диска, также заблокирует поток. И в ожидании запроса завершить другой поток будет работать. – Philipp