1. 리눅스에서의 Low-Level File Access와 file descriptor를 정의하시오 ?
ANSI 표준에서 정의한 함수가 아니라는 뜻이다. 리눅스에서 제공하는 파일 입출력 함수를 사용하려면 파일 디스크립터에 대한 개념을 먼저 세워야 됩니다.
2. 표준 입출력 및 error에 대한 FD 값은 ?
< 27p. 이해하고 넘어가세요를 읽어보시오. >
파일 디스크립터란 시스템으로부터 할당 받은 파일 또는 소켓에 부여된 정수를 의미합니다.
파일 디스크립터 0 : 표준 입력 Input ,
1 출력 : Output , 2 에러 : Error
3. open 함수의 Prototype 및 전달인자를 설명하시오.
int open ( const char *path, int flag);
4. close 함수의 Prototype 및 전달인자를 설명하시오.
int close (int fd);
5. write 함수의 Prototype, 기능 및 전달인자를 설명하시오.
ssize_t write (int fd, const void * buf, size_t nbytes);
6. 교재의 low_open.c 소스를 작성하고 컴파일하여 실행하시오.
data.txt의 내용을 본인 학번 & 이름으로 소스를 수정하시오.
7. read 함수의 Prototype, 기능 및 전달인자를 설명하시오.
read 함수는 읽고 전달하는 기능을 한다.
#include <unistd.h>
ssize_t read(int fd, void *buf , size_t nbytes);
gcc low_read.c –o 1read
./1read
8. 교재의 low_read.c 소스를 작성하고 컴파일하여 실행하시오. data.txt의 내용은 문제 6과 동일.
9. 교재 33 p. fd_seri.c를 작성하고 실행하여 출력을 쓰고 예제가 의미하는 바를 서술하시오.
출력된 디스크럽터의 정수 값을 비교해보면 일련의 순서대로 넘버링이 되는 것을 알 수 있다.
참고로 파일 디스크립터가 3에서부터 시작하는 이유는 앞서 0 , 1 , 2그리고 표준 입출력에
이미 할당되었기 때문이다.