Décrivez brièvement la signification et la fonction du PCB

Afin que chaque programme participant à l’exécution simultanée, y compris les données, puisse s’exécuter indépendamment, une structure de données spéciale doit être configurée pour lui dans le système d’exploitation, appelée bloc de contrôle de processus (PCB, bloc de contrôle de processus). Il existe une correspondance un à un entre le processus et le PCB, et le processus utilisateur ne peut pas être modifié.

ipcb

Le rôle du PCB du bloc de contrôle de processus :

Afin de faciliter la description du système et la gestion du fonctionnement du processus, une structure de données est spécifiquement définie pour chaque processus dans le noyau de l’OS-Process Control Block PCB (Process Control Block). En tant que partie de l’entité de processus, PCB enregistre toutes les informations nécessaires au système d’exploitation pour décrire la situation actuelle du processus et gérer le fonctionnement du processus. Il s’agit de la structure de données enregistrée la plus importante dans le système d’exploitation. Le rôle de PCB est de faire d’un programme (y compris des données) qui ne peut pas s’exécuter indépendamment dans un environnement multiprogramme une unité de base qui peut s’exécuter indépendamment, un processus qui peut être exécuté simultanément avec d’autres processus.

(2) PCB peut réaliser un mode de fonctionnement intermittent. Dans un environnement multiprogramme, le programme s’exécute en mode de fonctionnement intermittent stop-and-go. Lorsqu’un processus est suspendu en raison d’un blocage, il doit conserver les informations du site CPU lorsqu’il est en cours d’exécution. Après avoir obtenu le PCB, le système peut enregistrer les informations du site CPU dans le PCB du processus interrompu pour une utilisation lorsque le site CPU est restauré lorsque le processus est programmé pour une nouvelle exécution. Par conséquent, il peut être précisé à nouveau que dans un environnement multi-programmes, en tant que programme statique au sens traditionnel, parce qu’il n’a pas les moyens de protéger ou de sauvegarder son propre site d’exploitation, il ne peut garantir la reproductibilité de ses résultats d’exploitation. , perdant ainsi son fonctionnement. importance.

(3) Le PCB fournit les informations nécessaires à la gestion des processus. Lorsque le planificateur programme l’exécution d’un processus, il ne peut trouver le programme et les données correspondants qu’en fonction du pointeur d’adresse de début du programme et des données enregistrées dans le PCB du processus dans la mémoire ou le stockage externe ; pendant le processus d’exécution, lorsque le fichier doit être accessible Lorsque les fichiers ou les périphériques d’E/S du système, ils doivent également s’appuyer sur les informations contenues dans le PCB. De plus, selon la liste des ressources dans le PCB, toutes les ressources nécessaires au processus peuvent être apprises. On peut voir que pendant tout le cycle de vie d’un processus, le système d’exploitation contrôle et gère toujours le processus selon le PCB.

(4) PCB fournit les informations nécessaires à la planification du processus. Seuls les processus à l’état prêt peuvent être planifiés pour exécution, et le PCB fournit des informations sur l’état dans lequel se trouve le processus. Si le processus est à l’état prêt, le système l’insère dans la file d’attente des processus prêts et attend que le planificateur planifie ; en outre, il est souvent nécessaire de connaître d’autres informations sur le processus lors de la planification. Par exemple, dans l’algorithme d’ordonnancement prioritaire, vous devez connaître le processus Priorité. Dans certains algorithmes de planification plus justes, vous devez également connaître le temps d’attente du processus et les événements qui ont été exécutés.

(5) PCB réalise la synchronisation et la communication avec d’autres processus. Le mécanisme de synchronisation de processus est utilisé pour réaliser le fonctionnement coordonné de divers processus. Lorsque le mécanisme de sémaphore est adopté, il nécessite qu’un sémaphore correspondant pour la synchronisation soit défini dans chaque processus. Le PCB possède également une zone ou un pointeur de file d’attente de communication pour la communication de processus.

Informations dans le bloc de contrôle de processus :

Dans le bloc de contrôle de processus, il comprend principalement les informations suivantes :

(1) Identificateur de processus : L’identifiant de processus est utilisé pour indiquer de manière unique un processus. Un processus possède généralement deux types d’identifiants : ① des identifiants externes. Afin de faciliter l’accès du processus utilisateur au processus, un identifiant externe doit être défini pour chaque processus. Il est fourni par le créateur et se compose généralement de lettres et de chiffres. Afin de décrire la relation familiale du processus, l’ID de processus parent et l’ID de processus enfant doivent également être définis. De plus, un ID utilisateur peut être défini pour indiquer l’utilisateur qui possède le processus. Identifiant interne. Afin de faciliter l’utilisation du processus par le système, un identifiant interne est défini pour le processus dans le système d’exploitation, c’est-à-dire que chaque processus reçoit un identifiant numérique unique, qui est généralement le numéro de série d’un processus.

(2) État du processeur : les informations sur l’état du processeur sont également appelées le contexte du processeur, qui est principalement composé du contenu de divers registres du processeur. Ces registres comprennent : Les registres à usage général, également appelés registres visibles par l’utilisateur, qui sont accessibles par les programmes utilisateur et utilisés pour stocker temporairement des informations. Dans la plupart des processeurs, il existe 8 à 32 registres à usage général. Dans les ordinateurs structurés en RISC, il peut y en avoir plus de 100 ; ②Compteur d’instructions, qui stocke l’adresse de la prochaine instruction à accéder ; ③Le mot d’état du programme PSW, qui contient des informations d’état, telles que le code de condition, le mode d’exécution, l’indicateur de masque d’interruption, etc. ; Pointeur de pile utilisateur, cela signifie que chaque processus utilisateur a une ou plusieurs piles système associées, qui sont utilisées pour stocker les paramètres d’appel de processus et système et les adresses d’appel. Le pointeur de pile pointe vers le haut de la pile. Lorsque le processeur est dans l’état d’exécution, une grande partie des informations en cours de traitement est placée dans le registre. Lorsque le processus est commuté, les informations sur l’état du processeur doivent être enregistrées dans le PCB correspondant, afin que l’exécution puisse continuer à partir du point d’arrêt lorsque le processus est réexécuté.

(3) Informations sur la planification du processus : lorsque le système d’exploitation planifie, il est nécessaire de comprendre l’état du processus et les informations sur la planification du processus. Ces informations incluent : ① État du processus, indiquant l’état actuel du processus, qui est utilisé comme base pour la planification et l’échange de processus. ② La priorité du processus est un entier utilisé pour décrire le niveau de priorité du processus utilisant le processeur. Le processus avec une priorité plus élevée devrait obtenir le processeur en premier ; ③Autres informations requises pour l’ordonnancement du processus, qui sont liées à l’algorithme d’ordonnancement du processus utilisé Par exemple, la somme du temps pendant lequel le processus a attendu la CPU, la somme du temps que le processus a été exécuté, et ainsi de suite ; Event fait référence à l’événement qui attend que le processus passe de l’état d’exécution à l’état de blocage, c’est-à-dire la cause du blocage.

(4) Informations de contrôle de processus : Désigne les informations nécessaires au contrôle de processus, qui incluent : L’adresse du programme et des données, l’adresse de mémoire ou de mémoire externe du programme et des données dans l’entité de processus, afin exécuter lorsque le processus est exécuté. , Le programme et les données peuvent être trouvés à partir du PCB; ②Mécanisme de synchronisation et de communication de processus, qui est un mécanisme nécessaire pour la synchronisation et la communication de processus, tels que les pointeurs de file d’attente de messages, les sémaphores, etc., ils peuvent être placés dans le PCB en tout ou en partie ; Liste de ressources, dans laquelle sont répertoriées toutes les ressources (sauf CPU) requises par le processus lors de son fonctionnement, ainsi qu’une liste des ressources allouées au processus ; Pointeur de lien, qui donne au processus ( PCB) La première adresse du PCB du processus suivant dans la file d’attente.