Sto cercando di ottenere l'intera immagine con i descrittori di file. Supponiamo di avere process1 che inizialmente ha questi descrittori di file:
_process1_
| |
| 0 stdin |
| 1 stdout |
| 2 stderr |
|__________|
Quindi chiudo il descrittore di file 1:
close(1);
Il descrittore di file 1 traduce (punti) nella struttura FILE stdout nella tabella Open Files del kernel .
Con il codice sopra il descrittore di file 1 viene eliminato dalla tabella del processo che diventa:
_process1_
| |
| 0 stdin |
| 2 stderr |
|__________|
Ma cosa succede nel kernel? La stdout
struttura FILE viene deallocata? Come è possibile se stdout è un file speciale (il monitor) e probabilmente utilizzato da altri processi? Che dire delle strutture FILE che sono solo file normali (ad esempio .txt)? Cosa succede se un tale file viene utilizzato da un altro processo?