Посмотрите на init , который является традиционным стартером процесса и запускает сценарии из папок /etc/init.d
, /etc/rc1.d
и т. Д. . и /etc/rc.local
, что, вероятно, является желаемым местом.
В некоторых дистрибутивах вместо этого используется выскочка - если это так, посмотрите документацию по этому поводу.
В любом случае точные пути могут отличаться в зависимости от дистрибутива, но этого должно быть достаточно, чтобы вы начали.
Ядро полностью загружается в оперативную память при запуске и не подкачивается. Ядро не знает и не заботится, откуда оно загружается. Его можно было загрузить из сети, а по tftp качать тяжело.
Точнее будет сказать, что загрузчик загружает в память все, что ему приказано загрузить в качестве ядра. на самом деле это не обязательно должно быть само ядро, это может быть загрузчик второй -стадии (, и в большинстве случаев это действительно то, что технически происходит, потому что GRUB переходит к процедуре декомпрессии, которая извлекает реальное ядро ), или это может быть гипервизор типа -1, который затем загружает и выполняет ядро Linux.
Проще говоря, все это должно умещаться в памяти и иметь достаточно места для таких вещей, как пользовательское пространство,или система не может загрузиться (это одна из причин того, почему в наши дни так сложно построить систему Linux, работающую с объемом оперативной памяти менее 64 МБ ). То же самое можно сказать о любой другой системе UNIX, которую я знаю: (SVR4, BSD, Solaris, IRIX, Ultrix, Xenix и т. д. ). Обработка подкачки памяти в пространстве ядра -слишком утомительна, чтобы ее можно было реализовать.