Maison Opération et maintenance exploitation et maintenance Linux Quelles sont les trois parties que comprend le processus Linux ?

Quelles sont les trois parties que comprend le processus Linux ?

Mar 02, 2023 am 10:47 AM
linux

Trois parties du processus Linux : 1. Bloc de contrôle de processus, qui fait d'un programme (y compris les données) qui ne peut pas s'exécuter indépendamment dans un environnement multi-programmes une unité de base qui peut s'exécuter indépendamment et un programme qui peut être exécuté simultanément avec d'autres processus Processus ; 2. Le segment de programme est le segment de code de programme dans le processus qui peut être exécuté par le planificateur de processus sur la CPU ; 3. Le segment de données est le segment de données d'un processus, qui peut être les données originales traitées par le processeur ; programme correspondant au processus, ou il peut. Ce sont les données intermédiaires ou finales générées après l'exécution du programme.

Quelles sont les trois parties que comprend le processus Linux ?

L'environnement d'exploitation de ce tutoriel : système linux7.3, ordinateur Dell G3.

1. Définition du processus

Un processus est une activité en cours d'exécution d'un programme dans un ordinateur sur un certain ensemble de données. C'est l'unité de base de l'allocation des ressources dans le système et la base de la structure du système d'exploitation. .

En bref, c'est le processus d'exécution du programme.
Un processus est une instance d'un programme en cours d'exécution, c'est-à-dire une tâche en cours d'exécution.
Un processus a un cycle de vie. Il est créé lorsque le programme s'exécute et se termine lorsque le programme se termine.
Un processus est la plus petite unité d'allocation de ressources Tant qu'un processus est créé, [0-3G] d'espace utilisateur est alloué.
Tant que l'utilisateur exécute un programme, le noyau créera une structure task_struct (PCB), qui représente le processus en cours.
Maintient son propre ensemble de descripteurs de fichiers et de tampons au sein du processus. Dès la fin de l'exécution du processus, toutes ses ressources seront récupérées par le système d'exploitation.

Quelles sont les trois parties que comprend le processus Linux ?

L'interrogation par tranche de temps réalise la concurrence

Quelles sont les trois parties que comprend le processus Linux ?

2. Caractéristiques du processus

  • Dynamicité : L'essence d'un processus est un processus d'exécution d'un programme dans un système multi-programmation A. le processus est créé et détruit dynamiquement.

  • Concurrence : tout processus peut être exécuté simultanément avec d'autres processus

  • Indépendance : un processus est une unité de base qui peut s'exécuter de manière indépendante, et c'est également une unité indépendante pour l'allocation du système et la planification des ressources

  •  ;

    Caractéristique asynchrone : en raison des contraintes mutuelles entre les processus, le processus a une exécution intermittente, c'est-à-dire que le processus avance à une vitesse indépendante et imprévisible

Plusieurs processus différents peuvent contenir le même programme : un programme dans différents processus sont formés dans l'ensemble de données et différents résultats peuvent être obtenus, cependant, le programme ne peut pas être modifié pendant l'exécution ;

3. La composition et la fonction du processus

La composition du processus se compose de trois parties : le bloc de contrôle de processus PCB (task_struct), le segment de données et le segment de programme.

Bloc de contrôle de processus : faire d'un programme (y compris les données) qui ne peut pas s'exécuter indépendamment dans un environnement multi-programmes une unité de base qui peut s'exécuter indépendamment, un processus qui peut s'exécuter simultanément avec d'autres processus.
Segment de programme : Il s'agit du segment de code de programme du processus qui peut être exécuté sur le CPU par le planificateur de processus.
Segment de données : Le segment de données d'un processus peut être les données originales traitées par le programme correspondant au processus, ou les données intermédiaires ou finales générées après l'exécution du programme.

4. Bloc de contrôle de processus

4.1 Définition du bloc de contrôle de processus

Afin de décrire le fonctionnement du processus de contrôle, la structure de données qui stocke les informations de gestion et de contrôle du processus. dans le système est appelé bloc de contrôle de processus (PCB Process Control Block), qui fait partie de l'entité de processus et de la structure de données d'enregistrement la plus importante du système d'exploitation. Il s'agit de la structure de données la plus importante pour la gestion et le contrôle des processus. Chaque processus possède un PCB. Lorsqu'un processus est créé, le PCB est établi et accompagne l'ensemble du processus d'exécution du processus jusqu'à son annulation.
L'essence du PCB est une structure. Le nom du PCB est différent selon les systèmes d'exploitation. Sous Linux, le PCB s'appelle task_struct et le PCB est le seul moyen de contrôler le processus.
Chaque processus a un descripteur de processus. Ce "descripteur de processus" est task_struct. De nombreuses informations sur le contrôle des processus sont stockées dans task_struct.

4.2 Contenu de task_struct

Chaque processus met ses informations dans la structure de données task_struct, et task_struct contient le contenu suivant :

  • Identifiant (pid) : décrit le processus Un identifiant unique utilisé pour distinguer d'autres processus.

  • Statut : statut de la tâche, code de sortie, signal de sortie, etc.

  • Priorité : par rapport à la priorité des autres processus (plus le nombre est petit, plus la priorité est élevée).

  • Compteur de programme : L'adresse de la prochaine instruction à exécuter dans le programme.

  • Pointeurs de mémoire : y compris des pointeurs vers le code du programme et les données liées au processus, ainsi que des pointeurs vers des blocs de mémoire partagés avec d'autres processus.

  • Données contextuelles : enregistrer le contexte consiste à enregistrer la valeur dans le registre du processeur dans la mémoire ; restaurer le contexte consiste à restaurer la valeur du registre dans la mémoire du processeur 

  • Informations sur l'état des E/S : y compris ; la requête d'E/S affichée, le périphérique d'E/S affecté au processus et la liste des fichiers utilisés par le processus.

  • Informations comptables : peuvent inclure le temps total du processeur, le nombre total d'horloges utilisées, les délais, les comptes comptables, etc.

  • Autres informations

5. La différence entre processus et programme

  • Un processus est un processus d'exécution d'un programme. Il est dynamique, a un cycle de vie et est stocké en mémoire. .

  • Les programmes sont statiques et n'ont pas de cycle de vie. Stocké sur disque, un programme est un fichier exécutable.

  • Les processus peuvent décrire la concurrence de manière plus réaliste, mais les programmes ne le peuvent pas.

  • Les processus ont la capacité de créer d'autres processus, contrairement aux programmes.

  • Un même programme peut correspondre à plusieurs processus.

6. La différence entre les processus et les threads

Habituellement, un processus peut contenir plusieurs threads, qui peuvent utiliser les ressources possédées par le processus. Dans les systèmes d'exploitation qui introduisent des threads, les processus sont généralement comme les processus. Unité de base pour l'allocation des ressources, les threads sont utilisés comme unité de base pour un fonctionnement indépendant et une planification indépendante. Étant donné que les threads sont plus petits que les processus et ne possèdent fondamentalement pas de ressources système, la surcharge liée à leur planification sera beaucoup plus faible et pourra améliorer plus efficacement la fonctionnalité. degré d’exécution simultanée entre plusieurs programmes du système.

7. Types de processus

Il existe trois types de processus : processus interactif, processus par lots, processus démon

  • Processus interactif : le processus interactif est maintenu par le shell et interagit avec l'utilisateur via le coquille .
    Par exemple, un éditeur de texte est un processus interactif.

  • Processus batch : Le processus batch sera placé dans une file d'attente dans le noyau et exécuté au fur et à mesure de l'exécution de la file d'attente. Sa priorité est relativement faible.
    Par exemple, le processus de compilation d'un programme par gcc.

  • Processus démon : Un processus démon est un processus exécuté en arrière-plan. Il démarre lorsque le système démarre et se termine lorsque le système se termine.
    Par exemple, divers services sur Windows.

Recommandations associées : "Tutoriel vidéo Linux"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment démarrer Apache Comment démarrer Apache Apr 13, 2025 pm 01:06 PM

Les étapes pour démarrer Apache sont les suivantes: Installez Apache (Commande: Sudo apt-get install Apache2 ou téléchargez-le à partir du site officiel) Start Apache (Linux: Sudo SystemCTL Démarrer Apache2; Windows: Cliquez avec le bouton droit sur le service "APACHE2.4" et SELECT ") Vérifiez si elle a été lancée (Linux: SUDO SYSTEMCTL STATURE APACHE2; (Facultatif, Linux: Sudo SystemCTL

Que faire si le port Apache80 est occupé Que faire si le port Apache80 est occupé Apr 13, 2025 pm 01:24 PM

Lorsque le port Apache 80 est occupé, la solution est la suivante: découvrez le processus qui occupe le port et fermez-le. Vérifiez les paramètres du pare-feu pour vous assurer qu'Apache n'est pas bloqué. Si la méthode ci-dessus ne fonctionne pas, veuillez reconfigurer Apache pour utiliser un port différent. Redémarrez le service Apache.

Comment optimiser les performances de Debian Readdir Comment optimiser les performances de Debian Readdir Apr 13, 2025 am 08:48 AM

Dans Debian Systems, les appels du système ReadDir sont utilisés pour lire le contenu des répertoires. Si ses performances ne sont pas bonnes, essayez la stratégie d'optimisation suivante: simplifiez le nombre de fichiers d'annuaire: divisez les grands répertoires en plusieurs petits répertoires autant que possible, en réduisant le nombre d'éléments traités par appel ReadDir. Activer la mise en cache de contenu du répertoire: construire un mécanisme de cache, mettre à jour le cache régulièrement ou lorsque le contenu du répertoire change et réduire les appels fréquents à Readdir. Les caches de mémoire (telles que Memcached ou Redis) ou les caches locales (telles que les fichiers ou les bases de données) peuvent être prises en compte. Adoptez une structure de données efficace: si vous implémentez vous-même la traversée du répertoire, sélectionnez des structures de données plus efficaces (telles que les tables de hachage au lieu de la recherche linéaire) pour stocker et accéder aux informations du répertoire

Comment redémarrer le serveur Apache Comment redémarrer le serveur Apache Apr 13, 2025 pm 01:12 PM

Pour redémarrer le serveur Apache, suivez ces étapes: Linux / MacOS: Exécutez Sudo SystemCTL Restart Apache2. Windows: Exécutez net stop apache2.4 puis net start apache2.4. Exécuter netstat -a | Findstr 80 pour vérifier l'état du serveur.

Comment apprendre Debian Syslog Comment apprendre Debian Syslog Apr 13, 2025 am 11:51 AM

Ce guide vous guidera pour apprendre à utiliser Syslog dans Debian Systems. Syslog est un service clé dans les systèmes Linux pour les messages du système de journalisation et du journal d'application. Il aide les administrateurs à surveiller et à analyser l'activité du système pour identifier et résoudre rapidement les problèmes. 1. Connaissance de base de Syslog Les fonctions principales de Syslog comprennent: la collecte et la gestion des messages journaux de manière centralisée; Prise en charge de plusieurs formats de sortie de journal et des emplacements cibles (tels que les fichiers ou les réseaux); Fournir des fonctions de visualisation et de filtrage des journaux en temps réel. 2. Installer et configurer syslog (en utilisant RSYSLOG) Le système Debian utilise RSYSLOG par défaut. Vous pouvez l'installer avec la commande suivante: SudoaptupDatesud

Comment résoudre le problème qu'Apache ne peut pas être démarré Comment résoudre le problème qu'Apache ne peut pas être démarré Apr 13, 2025 pm 01:21 PM

Apache ne peut pas démarrer car les raisons suivantes peuvent être: Erreur de syntaxe du fichier de configuration. Conflit avec d'autres ports de demande. Problème d'autorisations. Hors de la mémoire. Traitement dans l'impasse. Échec du démon. Problèmes d'autorisations de Selinux. Problème de pare-feu. Conflit logiciel.

Internet fonctionne-t-il sur Linux? Internet fonctionne-t-il sur Linux? Apr 14, 2025 am 12:03 AM

Internet ne s'appuie pas sur un seul système d'exploitation, mais Linux joue un rôle important. Linux est largement utilisé dans les serveurs et les appareils réseau et est populaire pour sa stabilité, sa sécurité et son évolutivité.

Comment réparer la vulnérabilité Apache Comment réparer la vulnérabilité Apache Apr 13, 2025 pm 12:54 PM

Les étapes pour corriger la vulnérabilité Apache incluent: 1. Déterminez la version affectée; 2. Appliquer des mises à jour de sécurité; 3. Redémarrez Apache; 4. Vérifiez la correction; 5. Activer les fonctionnalités de sécurité.

See all articles