Appel système en cours

Supposons qu’un processus soit en cours d’exécution et qu’il appelle un appel système. Est-ce que cela signifie que ce processus sera maintenant bloqué. Est-ce que tous les appels système bloquent un processus et modifient son état d’exécution en blocage? Ou cela dépend du scénario à ce moment-là?

Non, cela ne signifie pas que le processus est bloqué. Certains appels système sont bloquants et d’autres non. Cependant, notez que pendant le temps que le kernel traite l’appel système, alors que le processus continue à s’exécuter, votre propre code utilisateur ne s’exécute pas mais le code du kernel s’exécute pour le compte du processus.

Certains systèmes d’exploitation ont même des rappels, où l’application utilisateur enregistre certaines fonctions à appeler par le kernel (de retour dans l’espace utilisateur) à certaines occasions. Le mécanisme de signalisation Unix est un exemple très simple, mais certains systèmes d’exploitation ont des appels beaucoup plus complexes.

Je pense qu’il y a des systèmes d’exploitation où un appel système déclenche un traitement du kernel qui peut déclencher un rappel dans l’espace utilisateur.

J’ai oublié les détails