Я интересуюсь разработкой ядра, и я пытаюсь найти способ завершить и уничтожить процесс. Единственной вещью, которую я знаю, является pid и значение дескриптора задачи того процесса.
Другими словами, как я могу уничтожить процесс при помощи его pid или указателя на его task_struct в ядре?
Код, на который Вы могли сослаться, является oom уничтожителем в mm/oom_kill.c
https://github.com/torvalds/linux/blob/master/mm/oom_kill.c
Это - механизм, когда система будет вне памяти, ядро выберет некоторый процесс для уничтожения.
Android LMK относительно более прост. Это использует send_sig. https://android.googlesource.com/kernel/arm64 / +/android-9.0.0_r0.32/drivers/staging/android/lowmemorykiller.c
Или можно использовать int kill_pid(struct pid *pid, int sig, int priv)
функция.