본문 바로가기

파일디스크립터2

[42Seoul] get_next_line 과제 - 배경지식 정리 42Seoul Subject를 수행하면서 필요했던 지식을 정리해본다. 이전까지는 과제에서 알아야할 주제 별로 나누어서 포스팅 했는데, get_next_line 과제에서 조금 애매한 것들은 한번에 모아 기록하게 됐다. get_next_line은 읽은 파일의 한 줄을 반환하는 프로그램이다. 시스템이 파일을 열고, 일정한 크기씩 읽어들여서 줄바꿈을 구분하여 파일내용을 출력하는 함수를 짜야한다. 유사한 질문이 있는 어느 게시판이 있었는데, kldp.org/node/156440을 읽어보면 대충 감이 올 것이다. 사용한 헤더 : 파일 디스크립터의 최대값인 OPEN_MAX가 정의돼 있다. 사용하는 컴퓨터 환경의 OPEN_MAX를 직접 구해서 상수로 사용한다면 이 헤더는 include 하지 않아도 된다. : 파일을 읽.. 2021. 1. 8.
파일 디스크립터(File Descriptor)란? 파일 디스크립터 (FD, File Descriptor)란, Unix OS에서 네트워크 소켓과 같은 파일이나 기타 입력/출력 리소스에 액세스하는 데 사용되는 추상표현이다. 즉, 시스템으로 부터 할당받은 파일이나 소켓을 대표하는 정수다. 파일 디스크립터는 음이 아닌 정수(Non-negative Integer)로, 일반적으로 형식 int로 C 프로그래밍 언어로 표현된다(음수 값은 "무값" 또는 오류 조건을 나타내기 위해 예약된다). (Window에서는 file handle이라고 부르고 값은 랜덤하게 할당된다.) FD의 0번에서 2번까지는 고정되어 있다. (unistd.h 헤더파일에 명시) 각 Unix 프로세스는 세 가지 standard streams에 해당하는 고정된 standard POSIX file des.. 2020. 10. 13.