Le nombre de shells pouvant s'exécuter simultanément sous Linux n'est pas limité par un nombre fixe comme le nombre maximum de processus. Au lieu de cela, il est limité par les ressources système disponibles :
* Mémoire (RAM) : Chaque processus shell consomme de la mémoire. Si vous essayez d'ouvrir tellement de shells que le système manque de RAM, les performances se dégraderont considérablement et le système risque de ne plus répondre ou de planter. L'échange sur disque ralentira considérablement les choses.
* Processeur : Les shells, bien que relativement légers, nécessitent néanmoins du temps CPU pour fonctionner. Trop de shells entraîneront des conflits et des ralentissements du processeur.
* Descripteurs de fichiers : Chaque shell et les processus qu'il exécute peuvent utiliser des descripteurs de fichiers. Il existe une limite au nombre de descripteurs de fichiers qu'un système et un utilisateur peuvent ouvrir simultanément. Le dépassement de cette limite entraînera des erreurs. Cette limite est configurable (`ulimit -n`).
* Configuration du système : Les administrateurs système peuvent définir des limites sur le nombre de processus qu'un seul utilisateur peut avoir.
En bref, vous pouvez exécuter plusieurs shells simultanément, mais la limite pratique est déterminée par les ressources de votre système et sa configuration, et non par un nombre codé en dur. Vous rencontrerez des contraintes de ressources bien avant d'atteindre une limite théorique sur le nombre d'obus.
|