будет ли mmap использовать пользовательский процессор вместо целого sys? (Solaris)
Вопрос
когда мы используем mmap для размещения некоторого анонимного mem, мы часто устанавливаем начальный адрес как 0 / null, поэтому mmap сам определит начальный адрес. И чтобы получить начальный адрес, он будет работать, продумывая все пространство виртуальной памяти, чтобы найти дыру, которая могла бы разместить патрон памяти для выделения. Я думаю, это рассчитывается как пользовательский процессор вместо системного процессора. Если виртуальная память фрагментирована, то для поиска начального адреса потребуется больше пользовательских процессоров, насколько я понимаю, верно
Решение
Я не думаю, что это правильно. Время, проведенное в системном вызове mmap, считается системным временем. Время найти достаточно большое окно адресного пространства и настроить сопоставления должно быть тривиальным. Р>