Вступить в клуб →
средняяpythonLinux-сервер и Docker: службы, процессы, ресурсы

Разобрать вывод ps aux и найти процессы, съевшие память

Сервер начал активно использовать swap, и вам прислали вывод ps aux. Нужен короткий список самых «тяжёлых» процессов для эскалации.

Напишите top_memory(ps_output, n).

  • ps_output — строка: первая строка — заголовок, дальше по строке на процесс. Колонки разделены пробелами: USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND. В COMMAND могут быть пробелы — это всё, что после десятой колонки.
  • RSS — занятая память в килобайтах.
  • Пустые строки пропускайте.
  • Верните не больше n кортежей (pid, команда, мегабайты): pid — целое, мегабайты — round(RSS / 1024, 1). Порядок — по убыванию RSS, при равенстве — по возрастанию pid.
  • Если n не больше нуля или процессов нет, верните [].

заготовка решения

def top_memory(ps_output, n):
    # ваш код
    return None

🔒 Проверка ответа — для участников клуба

  • Автотесты прямо в браузере
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела