Saya mencoba untuk mendapatkan seluruh gambar dengan deskriptor file. Katakanlah saya memiliki process1 yang awalnya memiliki deskriptor file ini:
_process1_
| |
| 0 stdin |
| 1 stdout |
| 2 stderr |
|__________|
Lalu saya menutup file descriptor 1:
close(1);
Deskriptor file 1 menerjemahkan (menunjuk) ke struktur FILE stdout di Open Files Table kernel .
Dengan kode di atas file deskriptor 1 akan dihapus dari tabel proses yang menjadi:
_process1_
| |
| 0 stdin |
| 2 stderr |
|__________|
Tetapi apa yang terjadi di kernel? Apakah stdout
struktur FILE dapat dialokasikan kembali? Bagaimana mungkin jika stdout adalah file khusus (monitor) dan mungkin digunakan oleh proses lain? Bagaimana dengan struktur FILE yang hanya file biasa (misalnya .txt)? Bagaimana jika file seperti itu digunakan oleh proses lain?