I kodebasen af Linux-kernen, som release 6.19 vil blive dannet ud fra i begyndelsen af februar, er koden til LUO (Live Update Orchestrator) subsystemet blevet accepteret. Denne teknologi, udviklet af Google, muliggør opdatering af kernen i Live-tilstand uden fysisk genstart. Subsystemet er baseret på KHO-mekanikken (Kexec HandOver), som tidligere blev tilføjet i kerneversion 6.16 og tillader opstart af en ny kerne fra den gamle uden tab af systemtilstand.
Live Update Orchestrator gør det muligt at genstarte og opdatere kernen uden at stoppe arbejdet og uden at miste systemtilstand, enheder og processer. Ud over KHO-funktionaliteten bevarer LUO subsystemet tilstanden af enheder og RAM, samt sikrer kontinuitet i operationer relateret til DMA og interrupt behandling. Tilstanden bevares indtil omkoblingen til den nye kerne og genoprettes efter aktivering af den nye kerne uden at forstyrre kontinuerlige operationer med enheder udført af systemet og applikationer i brugerrummet.
En særlig egenskab ved den nye serie patcher er muligheden for at bevare filhåndtag memfd for at opretholde tilstanden af vigtige data i hukommelsen mellem genstarter, såsom indholdet i RAM. virtual machines. Som grundlæggende anvendelsesområde for subsystemet nævnes hurtig opdatering servere med virtualiseringssystemer baseret på KVM-hypervisoren for at løse problemer med sikkerhed og stabilitet med minimal nedetid for virtuelle maskiner. Google anvender allerede denne teknologi i sine arbejdsomgivelser.
I modsætning til livepatch, Ksplice, kpatch, kGraft og andre metoder til hot patching, er det nye subsystem ikke begrænset til at kunne anvende individuelle rettelser til den kørende kerne, men muliggør fuldstændig udskiftning af kernen. I modsætning til kexec-anrop bevarer LUO subsystemet tilstanden af enheder og kernesubsystemer mellem genstarter, mens kexec-anropet kun fungerer som en loader, der starter en ny kerne med fuld geninitialisering af systemet (ækvivalent med en genstart, men uden at overføre kontrol til firmware).
Kilde: opennet.ru
