Résumé
En informatique, un appel système (c'est-à-dire appel au système [d'exploitation]) (en anglais, system call, abrégé en syscall) désigne le moment où un programme s'interrompt pour demander au système d'exploitation d'accomplir pour lui une certaine tâche. L'expression désigne donc aussi la fonction primitive elle-même fournie par le noyau d'un système d'exploitation. Sont ainsi contrôlées et uniformisées les applications de l'espace utilisateur ; certains droits d'accès peuvent de plus être réservés au noyau. Le noyau lui-même utilise ces fonctions, qui deviennent la seule porte entre un programme et le « monde extérieur ». Le rôle du noyau est de gérer les ressources matérielles (il contient des pilotes de périphériques) et de fournir aux programmes une interface uniforme pour l'accès à ces ressources. Dans cette configuration, par exemple, toutes les instructions de lecture ou d'écriture sur un média externe doivent passer par le noyau, qui les passe au pilote, lequel les passe au média. L'exigence de modularité est ainsi satisfaite. Quelques appels système classiques : open, read, write et close qui permettent les manipulations sur les systèmes de fichiers ; brk, sbrk, utilisés par malloc et free pour allouer et libérer de la mémoire. Sur la majorité des systèmes d'exploitation, les appels système peuvent être utilisés comme de simples fonctions écrites en C. Sur la plupart des noyaux (notamment les noyaux monolithiques comme le noyau Linux) les appels système sont implémentés par une instruction machine (interrupt, supervisor call...) qui fait basculer le processeur dans le noyau en mode superviseur (en ayant convenablement passé les paramètres de l'appel système, par exemple dans les registres). À cet égard, l'appel système est distinct d'un appel de fonction : la fonction est contenue dans le programme lui-même, et est modifiable. Ce n'est pas le cas de l'appel au système : du point de vue du programme applicatif, un appel système est atomique.
À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.