Station MinuitPortail personnel de révision

IFT-2001 — Systèmes d’exploitationAutomne 2026

Semaine 2 — Interfaces, processus et Linux

4. Exécution, pile et privilèges

LECTURE 06 / 184 repèresSynthèse avec omissions acceptées

4. Exécution, pile et privilèges

4.1 Une instruction de haut niveau n'est pas nécessairement atomique

Pour réaliser A = A + 4, un processeur peut charger A dans un registre, additionner 4, puis réécrire le résultat. Plusieurs instructions machine correspondent donc à une seule instruction source. Une interruption ou une autre exécution peut survenir entre ces étapes. Cette observation prépare les problèmes de concurrence et explique pourquoi le contexte CPU doit être sauvegardé précisément.

Le compteur ordinal, nommé EIP dans l'exemple x86 du cours, désigne la prochaine instruction. Des registres généraux comme EAX portent les valeurs intermédiaires et les résultats.

4.2 Pile d'exécution

Chaque appel de fonction ajoute un cadre de pile pouvant contenir :

  • les paramètres;
  • les variables locales;
  • l'adresse de retour;
  • des registres sauvegardés.

Le pointeur de pile repère le sommet courant. Au retour, le cadre est retiré et l'exécution reprend à l'adresse enregistrée. Puisque données et informations de contrôle sont voisines, une écriture hors limites peut corrompre une variable, un registre sauvegardé ou une adresse de retour. La protection mémoire limite les dommages entre espaces d'adressage, mais ne rend pas automatiquement un programme sûr.

4.3 Mode utilisateur et mode noyau

Le noyau s'exécute au niveau privilégié; les applications s'exécutent normalement en mode utilisateur. Sur le modèle Intel classique, l'anneau 0 est le plus privilégié et l'anneau 3 le moins privilégié. Les anneaux intermédiaires sont peu employés par les systèmes courants.

Un appel système utilise une entrée prédéfinie : le processeur passe temporairement en mode noyau, le noyau valide la demande et ses paramètres, effectue l'opération autorisée, puis retourne en mode utilisateur. Cette transition a un coût, mais elle permet l'isolation.

Le privilège CPU et le statut de compte administrateur sont différents. Le premier est appliqué par le matériel à du code en cours d'exécution; le second est une politique d'autorisation du système. Même lancé par un administrateur, un programme ordinaire s'exécute normalement en mode utilisateur.

Retour au sommaire de l’unitéHaut de page
Récupérer manuellement les données locales

Copier séparément les données ci-dessous dans des fichiers texte avant de fermer la page ou de modifier le stockage. Une valeur illisible ou incompatible reste en place. Aucun effacement ni rétablissement écrasant n’est effectué automatiquement. L’export/import JSON est disponible sur la page Progression du cours. Cette récupération séparée reste utile pour une valeur brute ou un conflit.

Clé de ce cours : . Format v1 porté par cette clé; dates UTC et identifiants durables.

Si l’accès est refusé, la valeur persistée peut rester inaccessible. Réautoriser le stockage dans le navigateur puis rouvrir ce cours permet de la relire. Une réinitialisation exige une décision explicite après récupération; aucune commande de suppression n’est proposée ici. Les données restent sur cette origine et cet appareil, sans transfert automatique.