1.4
Faux: (comme dit en dessous...) les fils sont rattachés à init. Dans le cas inverse, quand un processus fils se termine, le processus parent reçoit un signal SIGCHILD.
1.6
Faux: Le lien physique est une entrée du répertoire, qui pointe vers le même inode que le fichier lié. Le nombre de liens dans l'inode est incrémenté, et aucun espace supplémentaire n'est utilisé. Le lien symbolique est une entrée de répertoire qui pointe sur un nouvel inode, pointant l'espace contenant le chemin du fichier lié. Le lien symbolique consomme donc au moins 1 inode (en général, le chemin prend quelques octets et se loge dans une partie réservée de l'inode, plutôt que de réserver un bloc de données en plus).
2.3
sleep() et select() font tous les deux de l'attente passive.
Attente passive: le processus rend le contrôle au système, et charge le système de le réveiller sur une ou plusieurs conditions.
Attente active: le processus attend dans une boucle, et monopolise les ressources. Le système n'a pas moyen de savoir si le processus est réellement en train de travailler, et lui alloue des ressources au détriment des autres processus. Un processus en attente active fait systématiquement grimper la charge de 1.
Exemple d'attente active:
while(1); /* attente d'un signal externe */
Exemple d'attente passive:
sleep(86400); /* attente d'un signal externe, limitée à 1 jour */
3.1
ls rep:
effectue des readdir() pour donner les entrées présentes dans le répertoire. Le répertoire doit être accessible en lecture, et tous les répertoires parents doivent être traversables.
3.2
ls -l rep:
effectue des readdir() comme au dessus, et des stat() sur chaque entrée pour connaitre les permissions et propriétaires des fichiers. Le stat() nécessite que tous les répertoires parents (y compris rep) soient traversables (droit x).
3.3
On déduit que pour le propriétaire, le bit de lecture est activé, mais pas le bit d'exécution. Les autres permissions ne sont pas connues (dr?-??????).
[^] # Re: Réponse (a vérifier)
Posté par jimee . En réponse au message Questions d'exam. Évalué à 1.
Faux: (comme dit en dessous...) les fils sont rattachés à init. Dans le cas inverse, quand un processus fils se termine, le processus parent reçoit un signal SIGCHILD.
1.6
Faux: Le lien physique est une entrée du répertoire, qui pointe vers le même inode que le fichier lié. Le nombre de liens dans l'inode est incrémenté, et aucun espace supplémentaire n'est utilisé. Le lien symbolique est une entrée de répertoire qui pointe sur un nouvel inode, pointant l'espace contenant le chemin du fichier lié. Le lien symbolique consomme donc au moins 1 inode (en général, le chemin prend quelques octets et se loge dans une partie réservée de l'inode, plutôt que de réserver un bloc de données en plus).
2.3
sleep() et select() font tous les deux de l'attente passive.
Attente passive: le processus rend le contrôle au système, et charge le système de le réveiller sur une ou plusieurs conditions.
Attente active: le processus attend dans une boucle, et monopolise les ressources. Le système n'a pas moyen de savoir si le processus est réellement en train de travailler, et lui alloue des ressources au détriment des autres processus. Un processus en attente active fait systématiquement grimper la charge de 1.
Exemple d'attente active:
while(1); /* attente d'un signal externe */
Exemple d'attente passive:
sleep(86400); /* attente d'un signal externe, limitée à 1 jour */
3.1
ls rep:
effectue des readdir() pour donner les entrées présentes dans le répertoire. Le répertoire doit être accessible en lecture, et tous les répertoires parents doivent être traversables.
3.2
ls -l rep:
effectue des readdir() comme au dessus, et des stat() sur chaque entrée pour connaitre les permissions et propriétaires des fichiers. Le stat() nécessite que tous les répertoires parents (y compris rep) soient traversables (droit x).
3.3
On déduit que pour le propriétaire, le bit de lecture est activé, mais pas le bit d'exécution. Les autres permissions ne sont pas connues (dr?-??????).