Встречается на собеседованиях • сегодня
Что не так, если программа проводит много времени в Kernel space и мало времени в User space
Если программа проводит много времени в kernel space, это может указывать на одну из следующих проблем:
- Частые системные вызовы – например, множество мелких read/write вместо буферизированных операций.
python
# Плохо: много мелких системных вызовов with open('file.txt', 'r') as f: for line in f: # Каждый read() – syscall pass
-
Блокирующие операции – ожидание I/O (диск, сеть) без асинхронности.
python# Лучше: использовать asyncio/aiohttp для сетевых запросов async def fetch(): async with aiohttp.ClientSession() as session: await session.get('http://example.com') -
Ошибки синхронизации – contention в многопоточном коде (GIL, lock contention).
-
Неоптимальные алгоритмы – например, сортировка в ядре через
os.system('sort file.txt').
Как диагностировать:
- Используйте
strace -cдля подсчета syscall. - Профилируйте код (cProfile, py-spy).
- Проверьте нагрузку на I/O (iotop, vmstat).
Оптимизация: минимизировать syscall, использовать асинхронность, буферизацию (например, io.BufferedReader).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы