История изменений
Исправление hateyoufeel, (текущая версия) :
Нагуглил что обычно в секунду ядро не делает больше 1 000 переключений контекста,
Ты не то нагуглил. Это таймер. И он может быть разным, зависит от настроек ядра.
~ zcat /proc/config.gz | grep CONFIG_HZ
# CONFIG_HZ_PERIODIC is not set
# CONFIG_HZ_100 is not set
CONFIG_HZ_250=y
# CONFIG_HZ_300 is not set
# CONFIG_HZ_500 is not set
# CONFIG_HZ_1000 is not set
CONFIG_HZ=250
Помимо него, переключение контекста делается при каждом системном вызове и ещё паре вариантов.
будем исходить из того что микроядро увеличит это значение в 20 раз.
Нет, не будем. Есть масса способов избежать переключения контекста или уменьшить их количество. Из последнего, вышеупомянутый io_uring из лялекса, который позволяет делать IO вообще без системных вызовов.
Исходная версия hateyoufeel, :
Нагуглил что обычно в секунду ядро не делает больше 1 000 переключений контекста,
Ты не то нагуглил. Это таймер. И он может быть разным, зависит от настроек ядра.
~ zcat /proc/config.gz | grep CONFIG_HZ
# CONFIG_HZ_PERIODIC is not set
# CONFIG_HZ_100 is not set
CONFIG_HZ_250=y
# CONFIG_HZ_300 is not set
# CONFIG_HZ_500 is not set
# CONFIG_HZ_1000 is not set
CONFIG_HZ=250
Помимо него, переключение контекста делается при каждом системном вызове и ещё паре вариантов.
будем исходить из того что микроядро увеличит это значение в 20 раз.
Нет, не будем.