Tranche systemd (slice)
Tranche systemd (en anglais slice unit) : unité systemd de type .slice qui forme un nœud de l'arbre des cgroups et regroupe des services et des portées, pour leur donner un budget commun de mémoire, de processeur ou d'entrées-sorties.
L'arbre par défaut part de -.slice (la racine) et compte system.slice (les services), user.slice (une user-<UID>.slice par personne, avec ses portées de session) et machine.slice (machines virtuelles et conteneurs). Le nom encode la position : le tiret sépare les niveaux, si bien que taches-fond.slice est automatiquement une sous-tranche de taches.slice. Pour borner ensemble les tâches de fond d'une machine, on crée /etc/systemd/system/taches.slice avec une section [Slice] (MemoryHigh=2G, MemoryMax=2560M, CPUWeight=30), puis on y rattache chaque service par un drop-in contenant Slice=taches.slice. systemd-cgls et systemd-cgtop montrent le résultat, sous /sys/fs/cgroup/taches.slice/.
Les limites d'une tranche portent sur la somme de ses membres : aucun OOM ne peut en sortir, et les services restés dans system.slice (rsyslog, ssh) gardent de quoi travailler.