Tôi đang cố gắng để có được toàn bộ hình ảnh với mô tả tập tin. Nói rằng tôi có process1 mà ban đầu có các mô tả tệp này:
_process1_
| |
| 0 stdin |
| 1 stdout |
| 2 stderr |
|__________|
Sau đó, tôi đóng mô tả tập tin 1:
close(1);
Bộ mô tả tệp 1 dịch (điểm) sang cấu trúc FILE xuất sắc trong Bảng tệp mở của kernel .
Với mã ở trên, bộ mô tả tệp 1 sẽ bị xóa khỏi bảng của quy trình, trở thành:
_process1_
| |
| 0 stdin |
| 2 stderr |
|__________|
Nhưng những gì xảy ra trong kernel? Liệu stdout
cấu trúc FILE được deallocated? Làm thế nào là có thể nếu thiết bị xuất chuẩn là một tệp đặc biệt (màn hình) và có thể được sử dụng bởi các quy trình khác? Còn các cấu trúc FILE chỉ là các tệp bình thường (ví dụ .txt) thì sao? Điều gì nếu một tập tin như vậy đang được sử dụng bởi một quá trình khác?