30.7. Modifier la priorité des services pendant le processus de démarrage


En utilisant le service systemd, il est possible de définir des priorités en temps réel pour les services lancés pendant le processus de démarrage. Le site unit configuration directives permet de modifier la priorité d'un service pendant le processus de démarrage.

Le changement de priorité du processus de démarrage s'effectue en utilisant les directives suivantes dans la section service :

CPUSchedulingPolicy=
Définit la politique d'ordonnancement du processeur pour les processus exécutés. Elle est utilisée pour définir les politiques other, fifo et rr.
CPUSchedulingPriority=
Définit la priorité d'ordonnancement du CPU pour les processus exécutés. La plage de priorité disponible dépend de la politique d'ordonnancement du CPU sélectionnée. Pour les politiques d'ordonnancement en temps réel, un nombre entier entre 1 (priorité la plus faible) et 99 (priorité la plus élevée) peut être utilisé.

La procédure suivante décrit comment modifier la priorité d'un service, pendant le processus de démarrage, à l'aide du service mcelog.

Conditions préalables

  1. Installez le paquet TuneD :

    # dnf install tuned
    Copy to Clipboard Toggle word wrap
  2. Activez et démarrez le service TuneD :

    # systemctl enable --now tuned
    Copy to Clipboard Toggle word wrap

Procédure

  1. Afficher les priorités d'ordonnancement des threads en cours d'exécution :

    # tuna --show_threads
                          thread       ctxt_switches
        pid SCHED_ rtpri affinity voluntary nonvoluntary             cmd
      1      OTHER     0     0xff      3181          292         systemd
      2      OTHER     0     0xff       254            0        kthreadd
      3      OTHER     0     0xff         2            0          rcu_gp
      4      OTHER     0     0xff         2            0      rcu_par_gp
      6      OTHER     0        0         9            0 kworker/0:0H-kblockd
      7      OTHER     0     0xff      1301            1 kworker/u16:0-events_unbound
      8      OTHER     0     0xff         2            0    mm_percpu_wq
      9      OTHER     0        0       266            0     ksoftirqd/0
    [...]
    Copy to Clipboard Toggle word wrap
  2. Créez un fichier de répertoire de configuration du service supplémentaire mcelog et insérez le nom et la priorité de la politique dans ce fichier :

    # cat << EOF > /etc/systemd/system/mcelog.system.d/priority.conf
    
    [SERVICE]
    CPUSchedulingPolicy=fifo
    CPUSchedulingPriority=20
    EOF
    Copy to Clipboard Toggle word wrap
  3. Recharger la configuration des scripts systemd:

    # systemctl daemon-reload
    Copy to Clipboard Toggle word wrap
  4. Redémarrez le service mcelog:

    # systemctl restart mcelog
    Copy to Clipboard Toggle word wrap

Verification steps

  • Afficher la priorité mcelog fixée par systemd issue :

    # tuna -t mcelog -P
    thread       ctxt_switches
      pid SCHED_ rtpri affinity voluntary nonvoluntary             cmd
    826     FIFO    20  0,1,2,3        13            0          mcelog
    Copy to Clipboard Toggle word wrap
Retour au début
Red Hat logoGithubredditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance. Découvrez nos récentes mises à jour.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez le Blog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

Theme

© 2025 Red Hat