본문 바로가기
운영체제/Linux

파일 디스크립터

by eteo 2023. 9. 28.

 

 

파일 디스크립터(File Descriptor, FD)란 Linux 혹은 Unix 계열 운영체제에서 프로세스가 파일 또는 네트워크 소켓과 같은 입출력 리소스에 대해 접근할 때 사용하는 추상적인 식별자이다. 윈도우에선 HANDLE이라고 부른다.

 

파일 디스크립터는 0이 아닌 정수값을 가지며 C언어에서는 int 형식으로 표현된다.

유효하지 않거나 오류인 경우를 나타내는 음수값과 다른 목적으로 고정된 0부터 2를 제외하고, 프로세스가 파일을 열거나 소켓을 생성할 때 일반적으로 3부터 시작해 파일 디스크립터 숫자 중 사용하지 않는 가장 작은 값을 할당한다. 이렇게 할당된 파일 디스크립터를 사용하여 프로세스가 열려있는 파일에 시스템 콜을 사용하여 접근할 수 있다.

 

 

 

Reference:

https://en.wikipedia.org/wiki/File_descriptor#/media/File:File_table_and_inode_table.svg