Тест: Gestion des processus et threads sous Linux — 14 въпроса

Подробни въпроси и отговори

1. Que fait pthread_join(tid, status) ?

Il suspend le thread appelant jusqu’à la fin du thread identifié par tid
Il remplace le code du processus par un autre programme
Il termine immédiatement le thread appelant sans valeur de retour
Il crée un thread secondaire à partir de la fonction fournie

Il suspend le thread appelant jusqu’à la fin du thread identifié par tid

Обяснение

pthread_join() bloque le thread appelant jusqu’à la fin du thread désigné par tid et peut récupérer son état de terminaison. Ce n’est ni une création de thread ni un remplacement de programme.

2. Quel rôle joue le bootstrap au démarrage du système ?

Il charge une partie du système d’exploitation en mémoire pour créer le processus 0
Il adopte les processus orphelins à la place d’Init
Il remplace immédiatement le shell par le noyau
Il crée directement le processus fils de l’utilisateur

Il charge une partie du système d’exploitation en mémoire pour créer le processus 0

Обяснение

Le bootstrap est chargé depuis la ROM et initialise une partie du système d’exploitation en mémoire afin de créer le processus 0. L’adoption des processus orphelins est le rôle d’Init.

3. Que renvoie fork() dans le père lors d’une création réussie ?

Zéro
Le PID du fils
-1
Le statut de terminaison du fils

Le PID du fils

Обяснение

Dans le père, fork() renvoie le PID du fils créé. Dans le fils, il renvoie zéro, et en cas d’échec il renvoie -1.

4. Quel état correspond à un processus qui attend l’accès au processeur sans s’exécuter ?

Élu
Bloqué
Prêt
Nouveau

Prêt

Обяснение

Un processus prêt attend simplement que le processeur lui soit attribué. Un processus bloqué attend une autre ressource que le processeur.

5. Quel effet a un appel exec réussi sur le processus courant ?

Il remplace le programme exécuté sans créer de nouveau processus
Il crée un processus fils avant de lancer le nouveau programme
Il termine immédiatement le processus en cours
Il bloque le processus jusqu’à la fin d’un autre processus

Il remplace le programme exécuté sans créer de nouveau processus

Обяснение

Un appel exec réussi écrase le code du processus courant par un autre programme, sans création d’un nouveau processus. Le processus conserve son identité, notamment son PID.

6. Que deviennent les processus dont le père disparaît ?

Ils sont détruits automatiquement par le noyau
Ils sont recréés avec un nouveau pid
Ils sont adoptés par Init
Ils deviennent tous des démons

Ils sont adoptés par Init

Обяснение

Quand le père d’un processus disparaît, ce processus est adopté par Init. Init joue ainsi le rôle de parent de remplacement.

7. Que se passe-t-il si l’appel exec échoue ?

Un nouveau processus est créé avec le nouveau programme
Le processus continue avec l’instruction suivante
Le code précédent est partiellement conservé et repris
Le processus devient automatiquement zombie

Le processus continue avec l’instruction suivante

Обяснение

En cas d’échec de exec, le remplacement n’a pas lieu et le processus poursuit à partir de l’instruction suivante. C’est précisément ce qui permet d’observer l’exécution qui suit l’appel.

8. Quel appel système crée un nouveau processus en dupliquant le code et les données du processus père ?

fork()
exit()
wait()
exec()

fork()

Обяснение

fork() crée un nouveau processus par duplication du père. exec() remplace le programme du processus courant sans créer de nouveau processus.

9. Quel est le rôle principal de pthread_create() ?

Terminer l’exécution du thread appelant avec une valeur de sortie
Attendre la fin d’un thread spécifique en récupérant son statut
Créer un thread en lui associant une fonction à exécuter et un argument
Remplacer le programme courant par un autre exécutable

Créer un thread en lui associant une fonction à exécuter et un argument

Обяснение

pthread_create() sert à créer un thread et à lui donner une fonction ainsi qu’un argument à exécuter. L’attente relève de pthread_join(), tandis que la terminaison relève de pthread_exit().

10. Quelle transition se produit lorsqu’un processus élu demande une ressource et quitte le processeur ?

Prêt vers Élu
Bloqué vers Prêt
Élu vers Prêt
Élu vers Bloqué

Élu vers Bloqué

Обяснение

Quand le processus en cours d’exécution demande une ressource, il se bloque et passe de l’état Élu à l’état Bloqué. La transition Bloqué vers Prêt ne se produit que lorsque la ressource devient disponible.

11. Quel est le rôle du thread principal dans un processus C ?

Il attend la terminaison de tous les autres processus du système
Il remplace automatiquement le programme courant par un autre
Il crée obligatoirement un nouveau processus fils
Il démarre l’exécution à partir de la fonction main

Il démarre l’exécution à partir de la fonction main

Обяснение

Le thread principal est le fil d’exécution qui commence par exécuter main dans un processus. Il ne remplace pas le programme et ne crée pas forcément un nouveau processus.

12. Quel élément appartient à l’environnement processeur d’un processus ?

Le compteur ordinal et les registres
Les zones de code et de pile
Les variables globales et les constantes
Les bibliothèques chargées dynamiquement

Le compteur ordinal et les registres

Обяснение

L’environnement processeur rassemble les éléments matériels et registres, comme le compteur ordinal et les registres. Les zones de code et de pile relèvent de l’environnement mémoire.

13. Quel ensemble décrit le mieux le contexte d’un processus ?

La liste des appels système déjà exécutés
Les paramètres de compilation du programme
Les seuls fichiers ouverts par le programme
Les informations mémoire et processeur nécessaires à son exécution

Les informations mémoire et processeur nécessaires à son exécution

Обяснение

Le contexte d’un processus regroupe l’environnement mémoire et l’environnement processeur nécessaires pour le reprendre et l’exécuter. Les fichiers ouverts peuvent faire partie de son état, mais ne définissent pas à eux seuls le contexte.

14. Quel énoncé décrit le mieux un thread dans un processus ?

Une unité d’exécution rattachée au processus qui peut exécuter une partie du traitement en concurrence
Un programme chargé depuis la ROM au démarrage pour initialiser le système
Un processus adopté automatiquement lorsque son père disparaît
Un espace mémoire réservé uniquement au code du processus

Une unité d’exécution rattachée au processus qui peut exécuter une partie du traitement en concurrence

Обяснение

Un thread est une unité d’exécution associée à un processus, capable d’exécuter une fonction en concurrence avec le reste. Les autres propositions décrivent plutôt le bootstrap, l’espace mémoire ou l’adoption par Init.

Прегледайте с флашкарти

Запомнете отговорите с 14 флашкарти по Gestion des processus et threads sous Linux.

Contexte du processus — définition ?

Informations nécessaires pour exécuter et gérer un processus.

Environnement mémoire — composantes ?

Code, données, pile.

Environnement processeur — éléments ?

Registres, CO, PSW.

Вижте флашкартите →

Учете с листа за преговор

Прочетете пълния лист за преговор на Gestion des processus et threads sous Linux.

Вижте листа за преговор →

Similar courses

Създайте свои собствени тестове

Импортирайте курса си и AI генерира тестове с корекции за 30 секунди.

Генератор на тестове