nice (Unix)

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Page d'aide sur l'homonymie Pour les articles homonymes, voir Nice.

nice est une commande disponible sur le système d'exploitation UNIX et autres systèmes compatibles tels que Linux. Cette commande pointe directement vers un point d'entrée du kernel portant le même nom, elle permet de changer le niveau de priorité d'un processus déterminé. La priorité la plus élevée correspond à un niveau de -20, tandis que la plus basse correspond à +19. Le niveau de priorité par défaut d'un processus est celui de son processus parent, et vaut généralement zéro.

Nice est utile dès que plusieurs processus requièrent plus de puissance CPU que celui-ci peut fournir. Dans ce cas, le processus ayant la priorité la plus élevée bénéficiera de plus de puissance de la part du CPU. En revanche, si le CPU n'est pas utilisé à 100 %, alors un processus de faible priorité pourra quand même bénéficier d'une part de puissance pouvant aller jusqu'à 99 %. Seul un super-utilisateur (root) peut assigner des niveaux de priorité élevés.

Le mécanisme de répartition de la charge CPU en fonction de la priorité des processus est effectué par l'ordonnanceur de taches (task scheduler). L'algorithme mis en œuvre peut varier d'une implémentation à une autre, les pourcentages de CPU alloués entre deux processus se partageant 100 % du temps machine peuvent donc être très variables entre diverses versions de Unix, Linux ou autres BSD.

La commande renice permet quant à elle de modifier le niveau de priorité d'un processus en cours d'exécution.

Linux dispose également d'une commande ionice qui agit sur les niveaux de priorité des accès aux entrées-sorties.

Source[modifier | modifier le code]