Vous êtes sur la page 1sur 2

Questions du cours SE2

1. On crée le programme « boucle » en C, qui fait une boucle infinie : int main () {while(1) ;}
Comment peut-on le compiler et l’exécuter ?
compiler par  gcc: smi@smi-desktop:/~$ gcc -o boucle boucle.c l’exécuter  smi@smi-desktop:/~/tpc$ ./boucle
2. Donner les différents outils de développement en C sous Unix.
 L’éditeur de texte, qui nous permet de créer et de modifier les fichiers source.
 Le compilateur, qui permet de passer d’un fichier source à un fichier objet.
 L’éditeur de liens, qui assure le regroupement des fichiers objet provenant des différents modules et les
associe avec les bibliothèques utilisées pour l’application. Nous obtenons un fichier exécutable.
 Le débogueur, qui peut permettre l’exécution pas à pas du code, l’examen des variables internes, etc. Pour
cela, il a besoin du fichier exécutable et du code source.
 Utilitaires annexes travaillant à partir du code source, comme le vérificateur Lint, les outils de
documentation automatique, etc.
3. Qu’est-ce qu’un programme d’éditeur de liens ?
L’éditeur de liens, qui assure le regroupement des fichiers objet provenant des différents modules et les associe avec
les bibliothèques utilisées pour l’application. Nous obtenons un fichier exécutable.
4. Qu’est-ce qu’un appel système ?
Permette de => Servir d’interface entre l’utilisateur et le matériel. • Un gestionnaire de ressources
5. Qu’est-ce qu’un processus zombie ?
Zombie (Z pour … zombie) : le processus s'est terminé, mais son père n'a pas encore lu son code de retour.
6. Qu’est ce que le PID et le PPID d’un processus?
 PID , indique l’identifiant de chacun des processus.
 PPID, indique l’identifiant de chacun Parent des processus.
7. Quel a été le premier processus lancé après le démarrage du système ?
Le programme initial se nomme init, et il a le PID 1.
8. Rappeler la définition du temps d’attente d’un processus et du temps moyen d’attente d’un ensemble de
processus.
 Le temps d’attente d’un processus : est calculé soustrayant le temps d’exécution du temps de séjour.
 Le temps moyen d’attente d’un ensenble processus : c’est le temps d’attente divisee par le Nbre de
processus
9. Pour lancer en parallèle plusieurs traitements d’une même application, vous avez le choix entre les primitives
fork( ) et pthread_create( ). Laquelle des deux possibilités choisir ? pourquoi ?
pthread_create ( ) car le fork( ) consomme beaucoup d’espace (duplication de processus). Mais il faut faire attention
au conflit d’accès aux objets partagés.
10. Rappeler la définition du temps de séjour d’un processus et du temps moyen de séjour d’un ensemble de
processus.
 Le temps de séjour d’un processus : pour chaque processus est obtenu soustrayant le temps d’entrée du
processus du temps de terminaison.
 Le temps moyen de séjour d’un ensenble processus : c’est le temps de séjour divisee par le Nbre de
processus
11. Expliquez la différence fondamentale entre un algorithme d’ordonnancement à réquisition et sans réquisition.
 Non préemptif : le choix d'un nouveau processus ne se fait que sur blocage ou terminaison du processus
courant.
 Préemptif : à intervalle régulier, l'ordonnanceur reprend la main et élit un nouveau processus actif.
12. Quels sont les différents algorithmes d’ordonnancement des entités d’exécution ? Donnez-en les définitions et
citez parmi eux ceux qui supportent des versions préemptives ?
 Premier arrivé, premier servi (FIFO: First in first out)
 Algorithme non préemptif
 File d’attente FIFO pour les processus prêts
 Cet algorithme est facile à implanter, mais il est loin d'optimiser le temps de traitement moyen.
 Plus court temps d’exécution (SJF : Shortest First job)
 Algorithme non préemptif
 Le prochain cycle le plus court est sélectionné
 En cas d’égalité, on revient au FIFO
 Temps de réponse plus rapide que le précédent
 Plus petit temps de séjour (SRT : Shortest Remaining Time)
 Version préemptive de l’algorithme SJF
 Un processus arrive dans la file de processus, l’ordonnanceur compare la valeur espérée pour ce
processus contre la valeur du processus actuellement en exécution.
 Si le temps du nouveau processus est plus petit, il rentre en exécution immédiatement.
13. Comment juger de l’efficacité d’un algorithme d’ordonnancement ?
Efficacité : le processeur doit travailler à 100 % du temps.
14. Qu’est ce qu’un système de fichiers ?
Le système de fichiers (en anglais "file system") : Stocker les informations et les organiser dans des fichiers sur des
mémoires secondaires (disque dur, CD-ROM, clé USB, disquette…).
15. Quelle est la différence entre le stockage en mémoire centrale et le stockage sur le disque dur?

16. Que signifient les deux types de périphériques « mode bloc » et « mode caractère »?
 Les fichiers spéciaux caractère sont liés aux Entrées/Sorties et permettent de modéliser les périphériques
d'E/S série tels que les terminaux, les imprimantes et les réseaux.
 Les fichiers spéciaux bloc modélisent les disques.
17. Qu’est ce qu’une partition?
Une partition Ext2 : est composée tout d’abord d’un bloc boot utilisé lors du démarrage du système puis d’un
ensemble de groupe de blocs. Chaque groupe contenant des blocs de données et des inodes enregistrés dans des
pistes adjacentes.
18. Définir la pagination.
L’espace de la mémoire physique est lui-même découpé en morceaux linéaires de même taille appelés cases ou
cadres de pages.
19. Quel est le rôle du circuit nommé « MMU » dans un processeur ?
la MMU (Memory Management Unit) : qui est chargée de convertir l'adresse paginée générée au niveau du
processeur en une adresse physique équivalente.
20. Qu’est ce qu’une inode ?
L’inode du fichier : est une structure stockée sur le disque, allouée à la création du fichier et repérée par un
numéro. Contient les attributs du fichier : ( Nom - Type - Droits d’accès - Taille)
21. Définir la notion de PCB.
bloc de contrôle du processus (Process Control Block) : c’est une table des processus qui comprend une entrée par
processus .
22. Citer quatre attributs parmi ceux qui constituent le PCB.
 Le PID, le PPID, l'UID et le GID du processus.
 L'état du processus.
 Les fichiers ouverts par le processus.
 Le répertoire courant du processus.
23. Qu’est-ce qu’un signal pendant ?
Un signal : traduit l'apparition d'un événement asynchrone à l'exécution d'un processus.
24. Décrire les différents types de tubes.
 tube anonyme . | tube nommé .

Exercice N01 : Pour chacune des questions suivantes, choisissez la ou les réponses qui vous semblent exactes.
1. Un appel à fork() retourne 0 a) affiche “vert” b) affiche “marronvert”
c) affiche “marron” d) n'affiche rien
a) dans le père b) dans le fils c) dans les deux
d) en cas d'erreur 4. Un processus peut attendre l'arrivée d'un signal en
utilisant la fonction
2. Un processus zombi
a) pause b) wait c) sigsuspend d)sigprocmask
a) peut tuer son père b) peut seulement recevoir
SIGCHLD c) disparaît quand son père fait waitpid 5. Un signal pendant est :

3. L'exécution de execlp(“echo”,”-n”,”marron”,NULL); a) un signal délivré au processus | b) un signal délivré


printf(“vert”) au processus et bloqué | c) un signal délivré au
processus en attente de prise en compte

Vous aimerez peut-être aussi