파일 디스크립터
IT 위키
- File Descriptor; FD; 파일 서술자
- 운영체제가 파일을 관리하기 위해 필요한 정보를 담아 두는 제어 블록
FCB(File Control Block)라고도 한다.
- 파일마다 독립적으로 존재한다
- 시스템에 따라 구조가 다를 수 있다
- 평소에는 보조기억장치에 저장되어 있다가, 해당 파일이 열릴(Open) 때 주기억장치로 옮겨진다
- 사용자가 직접 참조할 수 없다. 운영체제가 관리하는 자료구조이며, 사용자는 시스템 호출을 통해 간접적으로만 다룬다
- 파일 이름, 파일 유형(정규 파일·디렉터리·장치 등)
- 파일 구조(순차·색인·직접)
- 파일 크기와 레코드 수
- 보조기억장치에서의 위치(디스크 블록 주소)
- 액세스 제어 정보(권한)
- 생성·수정·접근 시각
- 파일이 열린 횟수
파일 작성자(소유자 이름)는 포함되지 않는다. 소유자는 UID 같은 식별자로 관리되며, 시험에서는 "포함되지 않는 것"으로 출제된다.
유닉스·리눅스에서는 프로세스가 연 파일을 가리키는 작은 정수도 파일 디스크립터라 부른다.
| 번호 | 이름 | 장치 |
|---|---|---|
| 0 | 표준 입력(stdin) | 키보드 |
| 1 | 표준 출력(stdout) | 모니터 |
| 2 | 표준 오류(stderr) | 모니터 |
새로 파일을 열면 3번부터 차례로 배정된다. 셸의 리다이렉션(`2>&1`)이 이 번호를 쓰는 것이다.
