File Descriptor, File Handle   파일 기술자, 파일 지정번호, 파일 핸들, 파일 식별자, 파일 디스크립터

(2018-06-28)

화일 기술자, 화일 지정번호, 화일 핸들, 화일 식별자

1. 파일 입출력 다루기파일 입출력 구분
     - 저수준 파일처리(Low Level File Handling)  : 파일 기술자(File Descriptor)
     - 고수준 파일처리(High Level File Handling) : 파일 포인터(File Pointer)

  ㅇ 파일 기술자(File Descriptor) 또는 파일 핸들(File Handle)
     - 화일 입출력(I/O) 동작을 위한 저수준의(Low-level) 인터페이스를 제공하는
       화일 참조용 번호(숫자)를 말함

  ㅇ (명칭유의) 
     - 유닉스에서는 `파일 기술자`, 윈도우즈에서는 `파일 핸들` 이라고도 함


2. 파일 기술자 특징

  ㅇ 모든 열린 파일들은 파일기술자 번호에 의해 참조됨

  ㅇ UNIX에서는,
     - 모든 I/O 시스템 호출파일기술자를 통해서, 열려있는 파일을 참조함
        . 즉, 파이프,FIFO,소켓,터미널,장치 파일,일반 파일 등의 모든 열려있는 파일을 참조할 때
              파일기술자를 씀


3. 표준 파일 기술자표준 파일 기술자로써 사용되는 주요 정수 (자동으로 항상 열려짐)
     -  0 (표준 입력, stdin,  STDIN_FILENO)
     -  1 (표준 출력, stdout, STDOUT_FILENO)
     -  2 (표준 에러, stderr, STDERR_FILENO) 등 
     * unistd.h 헤더 파일에 정의되어짐

     * 위 3개 이외에는 별도의 (파일,소켓 등) 생성 과정을 거쳐야, 파일기술자 번호가 할당됨

  ㅇ 한편, 모든 유닉스 들은,
     - 위 3개의 파일기술자를 항상 열어놓고,
        . 프로그램이 시작될 때 해당 프로그램에 연결시켜줌
     - 예를들면, 
        . 프로그램이 시작될 때 이 위 3개를 대신 열어주며, 
        . 프로그램화일기술자의 복사본을 물려받음
     - 은 항상 위 3개를 언제나 열어놓은 상태로 동작함


[파일] 1. 파일 2. 파일 I/O 3. 저수준 파일 I/O 4. 화일 기술자 5. 화일 포인터 6. 화일 끝(EOF)

 
        최근수정     요약목록(시험중)     참고문헌