Interface système

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

Une interface système (shell[1] en anglais) est une couche logicielle qui fournit l'interface utilisateur d'un système d'exploitation. Il correspond à la couche la plus externe de ce dernier. L'interface système est utilisé comme diminutif de l'interface utilisateur du système d'exploitation.

Étymologie[modifier | modifier le code]

Le terme anglais shell (pour 'coquille'[2] ou 'coque'[réf. insuffisante]) vient à l'origine de la terminologie employé avec les premiers systèmes d'exploitation de type Unix ou il avait le sens plus spécifique de shell Unix. Avec l'arrivée de la souris et des interfaces graphiques, cette expression a fini par être traduite en français pour se démocratiser et pour désigner tous les types d'interfaces de contrôle d'un système d'exploitation, qu'elles soient textuelles ou graphiques.

Définition[modifier | modifier le code]

Le shell d'un système d'exploitation peut prendre deux formes distinctes[3] :

  1. Interface en ligne de commande (CLI, pour Command Line Interface en anglais) : le programme fonctionne alors à partir d'instructions en mode texte;
  2. Shell graphique fournissant une interface graphique pour l'utilisateur (GUI, pour Graphical User Interface).

Les mérites relatifs des shells de type CLI et GUI sont souvent débattus. Les partisans de CLI avancent que certaines opérations se font beaucoup plus rapidement sous des shells CLI que des shells GUI (déplacement de fichier, par exemple). Cependant, les partisans de shells GUI préfèrent leur intuitivité.

Deux méthodes d'accès au shell sont possible en fonction des ressources matériels disponibles, du système d'exploitation ou du paramétrage utilisé :

  1. Le mode console qui affiche un shell unique en plein écran, c'est l'interface homme-machine de base du système d'exploitation ;
  2. Le mode terminal qui émule une console et qui affiche en général le shell dans une portion de l'écran.

Sous Linux les consoles shell sont au nombre de six par défaut. Sur un serveur X ces consoles sont accessibles depuis l'interface graphique avec les raccourcis Ctrl + Alt + Fx[4]. Il ne s'agit plus de véritable console shell puisque elle sont appelées à partir d'un environnement différent mais l'expression demeure pour désigner l'affichage et le mode de fonctionnement.

Unix a été l'un des premiers systèmes d'exploitation dont l'interpréteur de commandes est un programme plutôt simple (donc remplaçable par un autre). Dans d'autres systèmes, les commandes sont interprétées en partie par le noyau.

Une propriété particulière d'un Shell est la réentrance; à partir d'un shell on peut lancer une application qui à un moment peut lancer un autre shell à qui l'utilisateur peut lancer une commande, ce qui permet de faire une petite parenthèse de recherche puis de retourner à l'application initiale, au point où elle en était.

Sous Unix[modifier | modifier le code]

Article détaillé : Shell Unix.

Sous Mac OS X[modifier | modifier le code]

Depuis la sortie de Mac OS X, un système d'exploitation de la famille des Unix (et en particulier de BSD), les Mac disposent d'un shell qui est accessible par l'intermédiaire de l'utilitaire Terminal.

À l'origine, l'interpréteur de commandes par défaut était tcsh, mais depuis Mac OS X 10.3 Panther, c'est bash qui est utilisé.

Terminal est particulièrement apprécié des utilisateurs avancés de Mac OS X pour personnaliser des fonctions système, créer des shell scripts et résoudre des problèmes de fonctionnement de Mac OS X.

Sous Microsoft Windows[modifier | modifier le code]

Sous Windows, l'appellation « shell » regroupe deux concepts :

  1. Comme pour Unix, l'interpréteur en ligne de commande ;
  2. L'interface graphique, en général l'explorateur Windows. Dans des versions plus anciennes de Windows (Windows 3.x), le Program Manager était utilisé.

La ligne de commande[modifier | modifier le code]

C'est en général Command.com pour les versions de Windows basées sur MS-DOS, et cmd pour celles qui reposent sur Windows NT.

Il existe des shells alternatifs, comme 4DOS et 4NT. Il existe également des portages des shell Unix, comme dans le système Cygwin ou UWIN (en) [5] qui offrent la sémantique exacte et complète de type Unix.

Avec Windows Vista est apparu un nouvel interpréteur de commande, le Windows PowerShell (utilisable aussi sous Windows XP), orienté objet.

L'interface graphique[modifier | modifier le code]

Dans l'API Windows, les fonctions du shell se rapportent à l'utilisation des widgets de l'explorateur dans les programmes. Par exemple, les fonctions de copie/déplacement/effacement de fichiers peuvent être accomplies par l'appel à la fonction API SHFileOperation() qui s'occupe de tout (opération en elle-même, confirmation des écrasements, barre de progression etc.).

Des programmeurs non satisfaits par l'interface de Windows Explorer ont développé des composants qui permettent de changer de shell : LiteStep, GeoShell, Aston ou encore BB4Win.

Annexes[modifier | modifier le code]

Notes et références[modifier | modifier le code]

  1. « Shell », sur Dico Info (consulté le 18 septembre 2013)
  2. « Shell », sur Lexique-informatique.com (consulté le 18 septembre 2013)
  3. Virginie ZAMPA, « Système d’exploitation », sur Université Stendhal - Grenoble 3,‎ 2008 (consulté le 18 septembre 2013), p. 1
  4. « La console », sur ubuntu-fr (consulté le 3 avril 2014)
  5. Le Korn shell ou ksh est un shell Unix inclus dans UWIN (en) et qui fonctionne sur une plate-forme Microsoft Windows

Articles connexes[modifier | modifier le code]

Liens externes[modifier | modifier le code]