>> Technologie Électronique >  >> Maison intelligente >> Vie connectée

Les cinq activités majeures d'un système d'exploitation pour la gestion des processus

Un système d'exploitation doit assurer cinq activités essentielles pour gérer les processus en cours d'exécution. Sans elles, il ne pourrait pas rester stable très longtemps.

Création de processus

Au démarrage de l'ordinateur, le système d'exploitation lance des processus pour exécuter des services tels que le spouleur d'impression ou la sécurité. Lorsque vous ouvrez une session et démarrez des programmes, ceux-ci créent des processus dépendants. Un processus n'est pas le programme lui-même, mais l'ensemble d'instructions que le processeur utilise pour l'exécuter. Un processus appartient soit au système d'exploitation, soit à un programme installé par l'utilisateur.

État du processus

L'état d'un processus peut être « créé », « en cours d'exécution », « en attente » ou « bloqué ». On dit qu'un processus est « en attente » juste après le lancement de son programme parent, avant qu'il ne soit traité par le processeur. Il est « en cours d'exécution » lorsque le processeur le traite. Un processus est « bloqué » si la mémoire est insuffisante ou si les fichiers associés sont introuvables. Tous les systèmes d'exploitation disposent d'un mécanisme de gestion des processus, bien que les noms des états puissent varier.

Synchronisation des processus

Une fois les processus en cours d'exécution, le système d'exploitation doit garantir qu'aucun deux processus n'accèdent simultanément aux mêmes ressources. Plus précisément, deux processus ne peuvent pas tenter d'exécuter la même zone de code en même temps. Si cela se produit, un plantage peut survenir lors de l'appel aux mêmes fichiers et de l'envoi d'instructions simultanées au processeur. Si deux processus doivent exécuter le même code, l'un doit attendre que l'autre termine.

Communication inter-processus

Le système doit permettre aux processus de communiquer entre eux et avec le processeur. Par exemple, un programme peut comporter plusieurs processus avec des niveaux de permission différents. La communication inter-processus permet au système de déterminer les permissions de chaque processus, ce qui est crucial pour empêcher les logiciels malveillants de supprimer des fichiers système ou d'injecter des instructions dans le système d'exploitation.

Prévention des interblocages

Enfin, le système doit éviter les interblocages (deadlocks). Un interblocage se produit lorsque deux processus ont chacun besoin d'une ressource que l'autre utilise, empêchant l'un et l'autre de progresser. Les ressources ne peuvent être libérées, et les programmes se figent. On parle aussi d'« attente circulaire ». Les systèmes d'exploitation préviennent les interblocages de différentes manières, la plus courante consistant à forcer un processus à déclarer les ressources dont il aura besoin avant de démarrer. Une autre méthode impose de demander les ressources par blocs et de les libérer au fur et à mesure.

Vie connectée