GNU/Linux >> Tutoriels Linux >  >> Linux

Tutoriel de commande Linux chrt pour les débutants (5 exemples)

Les processus forment le cœur d'un système Linux en cours d'exécution. Lorsqu'un programme se convertit en processus (c'est-à-dire lorsqu'il est exécuté), de nombreux attributs sont définis. Parfois, vous souhaiterez peut-être modifier ces attributs lors de l'exécution. Il existe un outil en ligne de commande chrt qui vous permet de faire cela.

Dans ce tutoriel, nous allons discuter de cet utilitaire avec quelques exemples faciles à comprendre. Mais avant cela, il convient de mentionner que tous les exemples de cet article ont été testés sur une machine Ubuntu 18.04 LTS.

Commande chrt Linux

Comme déjà mentionné dans la section d'introduction ci-dessus, la commande chrt vous permet de manipuler les attributs en temps réel d'un processus. Voici sa syntaxe :

chrt [options] -p [prio] pid

Et voici comment la page de manuel de l'outil l'explique :

       chrt sets or retrieves the real-time scheduling attributes of an exist?
       ing pid, or runs command with the given attributes.  Both  policy  (one
       of  SCHED_OTHER,  SCHED_FIFO, SCHED_RR, SCHED_BATCH, or SCHED_IDLE) and
       priority can be set and retrieved.

       The SCHED_BATCH policy is supported since Linux 2.6.16.  The SCHED_IDLE
       policy is supported since Linux 2.6.23.

       The  SCHED_RESET_ON_FORK  flag  for policies SCHED_RR and SCHED_FIFO is
       supported since Linux 2.6.31.

Voici quelques exemples de style Q&A qui devraient vous donner une bonne idée du fonctionnement de la commande chrt.

Q1. Comment utiliser la commande chrt ?

Supposons que vous souhaitiez manipuler la politique de planification ou la priorité du processus gedit. La première chose à faire est donc d'obtenir l'ID de processus pour ce processus, ce que vous pouvez faire à l'aide de la commande pidof.

pidof gedit

Sur mon système, par exemple, la commande ci-dessus a donné le pid '6063' en sortie. Maintenant, pour récupérer la politique de planification actuelle et la priorité du processus gedit, utilisez chrt de la manière suivante :

chrt -p 6063

Et voici la sortie que cette commande a produite sur mon système :

pid 6063's current scheduling policy: SCHED_OTHER
pid 6063's current scheduling priority: 0

Q2. Comment faire en sorte que chrt affiche les priorités minimales/maximales valides ?

Cela peut être fait en utilisant l'option de ligne de commande -m.

chrt -m

Par exemple, sur notre système, la commande ci-dessus a produit le résultat suivant :

SCHED_OTHER min/max priority    : 0/0
SCHED_FIFO min/max priority    : 1/99
SCHED_RR min/max priority    : 1/99
SCHED_BATCH min/max priority    : 0/0
SCHED_IDLE min/max priority    : 0/0

Vous devrez vous référer à ces valeurs pour définir les priorités lors de la définition des politiques de planification.

Q3. Comment définir une politique de planification sur SCHED_BATCH ?

Cela peut être fait en utilisant l'option de ligne de commande -b.

Par exemple :

chrt -b -p 0 6063

Maintenant, si vous vérifiez à nouveau la politique de planification pour gedit à l'aide de la commande suivante :

chrt -p 6063

Vous devriez obtenir un résultat semblable à celui-ci, indiquant que la modification que vous avez effectuée a été appliquée :

pid 6063's current scheduling policy: SCHED_BATCH
pid 6063's current scheduling priority: 0

Q4. Comment définir une politique de planification sur SCHED_FIFO ?

Cela peut être fait en utilisant l'option de ligne de commande -f.

chrt -f -p 20 6063

Comme fait dans le Q&A précédent, vous pouvez vérifier les changements en utilisant le chrt -p commande. Veuillez noter que vous pouvez avoir besoin des privilèges root pour utiliser l'option de ligne de commande -f.

Q5. Comment définir une politique de planification sur SCHED_OTHER ?

Cela peut être fait en utilisant l'option de ligne de commande -o.

chrt -o -p 0 6063

Pour vérifier, utilisez la commande chrt -p.

chrt -p 6063

Voici la sortie dans mon cas :

pid 6063's current scheduling policy: SCHED_OTHER
pid 6063's current scheduling priority: 0

Conclusion

D'accord, la commande chrt n'est pas le genre d'outil que vous pouvez utiliser tous les jours. Heck, vous n'en aurez peut-être même pas besoin jusqu'à ce que vous soyez dans la gestion du système ou que vous travailliez sur des travaux liés à la planification du noyau. Cependant, il vaut la peine de savoir au moins qu'un tel outil existe. Pour plus d'informations sur chrt, rendez-vous sur sa page de manuel.


Linux
  1. Tutoriel de commande cd Linux pour les débutants (8 exemples)

  2. Tutoriel de commande Linux comm pour les débutants (5 exemples)

  3. Tutoriel de commande Linux df pour les débutants (8 exemples)

  4. Tutoriel de commande de date Linux pour les débutants (8 exemples)

  5. Tutoriel de commande de nom d'hôte Linux pour les débutants (5 exemples)

Tutoriel Linux who Command pour débutants (8 exemples)

Tutoriel de commande Linux nl pour les débutants (7 exemples)

Tutoriel de commande Linux nm pour les débutants (10 exemples)

Tutoriel de commande Linux OD pour les débutants (6 exemples)

Tutoriel de commande Linux w pour débutants (5 exemples)

Tutoriel de commande Linux ss pour les débutants (8 exemples)