파일 디스크립터(File Descriptor) Linux/Unix에서 파일은 데이터를 읽을 수 있거나 데이터를 쓸 수 있는 모든 객체를 말한다. 일반적인 정규 파일부터 디렉토리, 소켓, 파이프, 터미널 등등 모든 디바이스도 파일로 취급한다. Linux/Unix에서 프로세스가 이 파일들을 바이트 단위의 입출력으로 다룰 수 있게 하고, 커널 내부의 자료 구조들과의 연결 통로 역할을 하게 하는 것이 파일 디스크립터이다. 프로세스가 실행 중에 파일을 open하면 커널은 해당 프로세스의 파일 디스크립터 숫자 중 사용하지 않는 가장 작은 값을 할당해준다. 그다음 프로세스가 열려있는 파일에 시스템 콜을 이용해서 접근할 때, 파일 디스크립터 값을 이용해서 파일을 지칭할 수 있는 것이다. 기본적으로 할당되는 파일디스크립..