Я думаю о следующем сценарии и хочу еще раз проверить его у вас.
Один процесс Linux с двумя или более потоками, работающими параллельно на разных ядрах. Допустим, они оба вызывают malloc с одинаковым количеством, так что malloc не нужно будет вызывать mmap. Другими словами, куча достаточно велика и (ранее) увеличена другими вызовами sbrk. В таком случае распределение памяти полностью в пользовательском пространстве. Глядя на git hub, я увидел, что существует мьютекс, защищающий внутренние структуры данных, которые использует malloc.
Мои вопросы: может ли ядро вытеснить поток, если потоки пытаются получить такую же блокировку? Другими словами, один из потоков будет подвергнут наказанию за выполнение из-за того, что другой получил эту блокировку.
Спасибо