Ctrl K
Middle · Теория

Ваш процесс на сервере с 16 гигабайтами памяти показывает в top VIRT 40 гигабайт, RES 2 гигабайта, а потом его внезапно убивает OOM killer. Объясните, как устроена память процесса в Linux, что означают эти цифры и как процесс мог дойти до OOM.

~4 мин голосом

Как подойти

Проверяют, понимает ли кандидат модель памяти Linux: виртуальное адресное пространство, ленивое выделение страниц и overcommit, и может ли из этого объяснить, почему большой VIRT не страшен, а OOM приходит «внезапно» — в том числе из-за лимита cgroup.

Встречал этот вопрос на настоящем собесе?
Ответов0
Средний балл—
Сильных—
Тренировали0
Темы
Где спрашивают
Похожие вопросыКак один процесс сервера может держать десятки тысяч открытых соединений? Расскажите, что такое файловый дескриптор, как работает epoll и почему он лучше select, и что делать, если сервис падает с «too many open files». MiddleКак в Python устроено управление памятью? Каким образом удаляются объекты, которые больше не нужны? JuniorКак в CPython устроено управление памятью? И как бы вы искали утечку памяти в долгоживущем Python-процессе? SeniorВаш Django-сервис работает под gunicorn, и на каждом сервере воркеры съедают всю память. Как вы спроектируете конфигурацию воркеров и что сделаете с потреблением памяти? SeniorВоркер на Python за сутки работы разрастается по памяти с двухсот мегабайт до трёх гигабайт. Как вы будете искать утечку? Middle

Ответь голосом

Интервьюер задаст этот вопрос и послушает. Думай вслух, проси подсказку, если нужно. Закончил — пауза или «Я ответил», через минуту здесь балл и какие пункты закрыты.

Войти, чтобы ответить

Лучше в наушниках · ~4 мин