Bendžamins Bergs (), viens no Red Hat inženieriem, kurš strādā pie GNOME izstrādes, rezultāti, kas iegūti, pārvēršot GNOME sesiju pārvaldību, izmantojot tikai systemd, bez gnome-session procesa izmantošanas.
Lai pārvaldītu piekļuvi GNOME, jau ilgu laiku tiek izmantots , kas izseko sesiju stāvoklim, kas saistīts ar lietotāju, pārvalda sesiju identifikatorus, atbild par pārlēkšanu starp aktīvajām sesijām, koordinē vairāku lietotāju vidi (Multi-seat), iestata ierīču piekļuves politiku, nodrošina līdzekļus izslēgšanai un miega režīmam utt.
Tomēr daļa funkcionalitātes, kas saistīta ar sesijām, palika uz gnome-session procesa pleciem, kurš nodarbojās ar pārvaldību, izmantojot D-Bus, displeja menedžera un GNOME komponentu palaišanu, organizējot lietotāja norādīto lietojumprogrammu automātisko palaišanu. GNOME 3.34 izstrādes procesā gnome-session specifiskās iespējas ir ieviestas kā unit-faili systemd, kas tiek izpildīti režīmā "systemd --user", t.i., konkrēta lietotāja vidē, nevis visas sistēmas kontekstā. Izmaiņas jau tika ieviestas Fedora 31 izplatījumā, kas gaidāms oktobra beigās.
Systemd izmantošana ļāva organizēt apstrādātāju palaišanu pēc pieprasījuma vai noteiktu notikumu iestāšanās brīdī, kā arī izsmalcinātāk reaģēt uz procesu priekšlaicīgu pabeigšanu kļūdu dēļ un plaši apstrādāt atkarības komponentu palaišanā GNOME. Tādējādi var samazināt pastāvīgi palaisto procesoru skaitu un samazināt atmiņas patēriņu. Piemēram, XWayland tagad var palaist tikai tad, kad tiek mēģināts izpildīt lietojumprogrammu, kas balstīta uz X11 protokolu, bet specifiskās aparatūras komponentes – tikai tad, ja tāda aparatūra ir klāt (piemēram, viedkartes apstrādātāji tiks palaisti, kad karte tiek ievietota un pabeigti, kad tā tiek izņemta).
Lietotājiem ir pieejami elastīgāki rīki pakalpojumu palaišanas pārvaldīšanai, piemēram, lai atslēgtu multivides taustiņu apstrādātāju, ir pietiekami izpildīt „systemctl —user stop gsd-media-keys.target”. Ja rodas problēmas, saistītas ar katru apstrādātāju, žurnālus var apskatīt ar komandu journalctl (piemēram, „journalctl —user -u gsd-media-keys.service”), iepriekš iespējot žurnāla saglabāšanu ar debug režīmu servisā (“Environment=G_MESSAGES_DEBUG=all”). Tāpat ir ieviesta iespēja palaist visus GNOME komponentus izolētās sandbox vidēs, kurām ir paaugstinātas drošības prasības.
Lai mazinātu pāreju, atbalsts vecajam veidam, kā palaist procesus tiks saglabāts vairāku GNOME izstrādes ciklu laikā. Pēc tam izstrādātāji pārskatīs gnome-session stāvokli un, visticamāk (atzīmēts kā „īstermiņa”) izņems no tā procesa palaišanas un D-Bus API atbalsta līdzekļus. Pēc tam „systemd —user” lietošana tiks atzīta par obligātu funkciju, kas var radīt grūtības sistēmām bez systemd un prasīs alternatīvu risinājumu sagatavošanu, tāpat kā tas bija ar . Tomēr savā uzrunā GUADEC 2019 konferencē Benjamins Bergs pieminēja nodomu saglabāt atbalstu vecajam palaišanas metodam sistēmām bez systemd, bet šī informācija nesakrīt ar plāniem par .

Avots: opennet.lv
