티스토리 뷰

728x90

파일 디스크립터 (File Descriptor)

※ 유닉스의 모든 것은 파일로 이루어짐

• 유닉스의 모든 컨텐츠는 파일 형식으로 저장 및 관리

     - 파일은 파일, 디렉토리도 파일, 하드웨어 장치(키보드, 모니터, 하드 디스크, 프린터 등...)도 파일, 소켓 & 네트워크 통신 및 기타 리소스 파일 등도 모두 파일 형태로 저장 및 관리

     - 예를 들어, 디렉토리는 그 디렉토리에 있는 파일의 이름과 그 파일들에 대한 포인터가 내용으로 들어있는 파일

따라서 거의 모든 작업을 파일 읽기라는 방식을 통해 수행, 파일 쓰기라는 방식으로 작업 수정 및 설정

 

파일 디스크립터

• 유닉스 시스템에서 프로세스가 파일들을 접근할 때 사용하는 개념

• 유닉스는 모든 것이 파일로 관리되므로 일반 파일, 디렉토리, 소켓, 파이프, 하드웨어 장치 등 모든 개체들을 관리할 때 사용하는 개념

• 프로세스가 open된 파일의 목록을 관리하기 위해 할당하는 테이블의 인덱스

• 파일을 대표

0 이상의 정수 값

• 프로세스가 실행 중에 파일을 open하면 커널이 해당 프로세스의 파일 디스크립터 숫자 중 사용하지 않은 가장 작은 값을 할당해줌.

• 즉, A 파일을 실행하면 3 할당, 그 다음 B 파일을 실행하면 4 할당 이런 식

 

 

 

 

 

 

 

 

이 글은

유튜브 뉴렉처 리눅스(Linux) 서버 강의/강좌 for 개발자

강의를 듣고 공부한 내용을 바탕으로 작성되었습니다.


 

728x90
댓글
공지사항