Что такое PID? Это PROCESS IDentificator - тут понять не сложно. Каждая запущенная и загруженная в память компьютера программа запускает процесс, которому присваивается PID. Эти процессы можно посмотреть запустив программу top.
Но что такое PPID? Это Parent Process IDentificator. В дополнение к уникальному идентификатору процесса каждому процессу присваивается идентификатор родительского процесса (PPID), который сообщает, какой процесс его запустил.
Почему важен PPID?
Иногда процессы выходят из строя. Вы можете попытаться завершить работу программы только для того, чтобы обнаружить, что у нее другие намерения. Процесс может продолжать выполняться или использовать ресурсы, даже если его интерфейс закрыт. Иногда это приводит к тому, что называется процессом-зомби, процессом, который все еще запущен, но мертв.
Один из эффективных способов убить зомби-процесс - это убить его родительский процесс. Это включает в себя использование команды ps для обнаружения PPID зомби-процесса и последующей отправки родительскому процессу сигнала kill . Конечно, любые другие дочерние элементы родительского процесса также будут уничтожены.
Посмотреть PPID можно в программе htop:
Но проблема в том, что по-умолчанию программа не показывает данные процессы. Нужно открывать настройки F2(Setup) и добавлять столбец PPID:
После чего появляется столбец с PPID:
А чего собственно говоря я решил копаться в этих PID и PPID?! А вот задача попалась, по условиям которой нужно было:
суммарное потребление памяти древа процессов, с корнем root_pid, в процентах
Вот в этой задаче и используется такое понятие как PPID...
Как-то так...