Я запутался в задачах инициализации и подкачки в ядре Linux. Насколько я понимаю, задача подкачки похожа на задачу бездействия — она запускается, когда другие процессы не могут быть запущены. Задача инициализации остается в спящем режиме и просыпается, чтобы пожинать процессы, когда это необходимо.
Я добавил еще один элемент в блок управления задачами, который я хочу инициализировать нулем для ВСЕХ задач (включая инициализацию и подкачку)
В linux/init_task.h есть макрос с очень запутанным названием INIT_TASK, который, по-видимому, устанавливает начальные значения для блока управления задачами задачи подкачки.
Где установить начальные значения для блока управления задачами init? Я могу установить начальные значения для всех других задач в функции copy_process в файле kernel/fork.c, когда они разветвляются.