Lennart Poettering has talked about preparing to add a soft-reboot mode ("systemctl soft-reboot") to the systemd system manager, which will only restart user space components without touching the Linux kernel. Compared to a regular reboot, it is expected that a soft-reboot will reduce downtime during updates of environments that use pre-built system images.
The new mode will allow for the shutdown of all user space processes, after which the root file system image can be replaced with a new version and the system initialization process can be started without rebooting the kernel. Additionally, preserving the state of the running kernel during the replacement of the user environment will allow for the updating of some services in live mode, organizing the transfer of file descriptors and listening network sockets for these services from the old environment to the new one. This way, it will be possible to significantly reduce the time it takes to replace one version of the system with another and ensure the seamless transfer of resources to the most important services, which will continue to work without stopping.
The acceleration of the reboot is achieved by excluding relatively long stages such as hardware initialization, bootloader operation, kernel startup, driver initialization, firmware loading, and initrd processing. For kernel updates in combination with soft-reboot, the use of the livepatch mechanism is proposed to introduce fixes to the running Linux kernel without a full reboot and without stopping the operation of applications.
No comments yet