반응형

파일 서술자 4

Linux : dup과 dup2

/* * http://sosal.tistory.com/ * made by so_Sal */ 이 포스팅은 open, read, write 등의 시스템콜을 기본적으로 안다는 가정 하에 작성된 글입니다. 위 시스템콜에 대해서 모르신다면 :: LINK_ 1. dup 2. dup2 1.dup - 파일 식별자를 복제한다. #include // man page 참조 int dup( int fd ); (dup은 duplication의 약자겠죠?.. 아마.. ㅋㅋ) 새로운 파일 서술자를 반환하지만, 숫자만 다를 뿐 원래의 서술자, 복제된 서술자 모두 완벽히 같은 파일을 가리킨다. 실패 : -1 반환 (파라미터로 전달된 값이 fd가 아닐경우, 더이상 fd를 할당하지 못할경우) /* * fd1 파일 디스크립터에 open을 ..

Linux - fcntl File control

/* * http://sosal.tistory.com/ * made by so_Sal */ fcntl - File control #include #include int fcntl(int fd, int cmd); int fcntl(int fd, int cmd, long arg); int fcntl(int fd, int cmd, struct flock *lock); (flock 구조체에 대해서는 게시하지 않았습니다. ) 첫번째 매개변수 fd부터 보겠습니다. fd - 파일 서술자(file descriptor) ㄴ 제어하기를 원하는 파일의 서술자를 지정하는 매개변수입니다. 리눅스 시스템에서 모든 프로세스는 0, 1, 2 라는 3개의 파일 서술자는 미리 정해져있습니다. 각각 입력(0), 출력(1), 에러(2)를 ..

리눅스 FILE - open(), close() 시스템콜

/* * made by so_sal * http://sosal.tistory.com/ */ open() 1. 함수의 정의 2. 매개변수 3. 권한 close() 1. 함수의 정의 #include //file control header #include #include int open( const char *path, int oflags ); int open( const char *path, int oflags, mode_t mode ); open 함수는 path 매개변수의 경로를 통해서 열고 파일 서술자를 리턴합니다. 파일 서술자를 이용해 파일컨트롤, read, write 등 시스템콜을 이용할 수 있습니다. open 은 파일 또는 장치로의 접근 경로를 만듭니다.. open 함수의 리턴값,, 파일 서술자는 ..

리눅스 FILE - System call.

/* * made by so_sal * http://sosal.tistory.com/ */ ※ 파일 다루기 리눅스에서는 모든 것이 파일로 되어 있다.( 약간의 예외를 제외하고 ) 이는 일반적으로 프로그램이 디스크 파일들뿐만 아니라 직렬 포트, 프린터, 그리고 기타 주변장치들을 파일을 사용하는 것과 정확히 동일한 방식으로 사용할 수 있다는 뜻. 특별한 종류의 파일들 예) 디렉터리(Directory) : 디렉터리도 또한 다른 파일들의 inode 번호들과 이름들을 담은 하나의 파일 - inode : 파일은 그 내용 뿐만 아니라 이름과 “관리용 정보”로서의 몇 가지 속성들도 저장되어 있다. 예를 들어 생성/ 수정 일자, 접근 권한, 파일의 길이, 디스크상의 파일의 위치 등.. 이러한 파일의 속성들은 파일의 in..

반응형