리눅스 프로그래머를 위한 가이드
5. "스위스 군용 칼"같은 ioctl (The "swiss army knife" ioctl)
ioctl은 input/output control을 의미하며 파일디스크립터(filedescriptor)를 가지고 캐릭터
디바이스(character device)를 조종하는데 사용된다. ioctl의 형태는 ioctl(unsigned int fd,
unsigned intrequest, unsigned long argument)이다.
에러를 만나면 반환값은 -1이고
다른 시스템 호출과 같이 요청이 성공하면 0보다 크거나 같은 값을 갖는다. 커널은 특수
파일(special file)이나 일반 파일들(regular files)과 구분된다.
특수 파일(special file)은 주로 /dev나 /proc 디렉토리에서 찾을 수 있다. 이 파일들은
드라이버와의 인터페이스를 숨기고 있고 텍스트나 이진 데이타를 포함하는
실제(일반) 파일이 아니라는 점에서 일반 파일(regular file)과 다르다. 이러한 점은 유닉스의
철학이고 모든 파일에 대해 정상적으로 읽기/쓰기 동작의 사용을 허락한다. 그러나 특수 파일이나
일반 파일을 가지고 그 이상의 일을 하고자 한다면 ioctl를 가지고 할 수 있다. 일반 파일보다는
특수 파일에 대해 ioctl이 종종 더 많이 필요할테지만 일반 파일에 대해서도 ioctl의 사용이
가능하다.
이전:4.시스템 호출
다음:6.리눅스 프로세스간 통신
Copyright (c) 1996,1997 by Euibeom.Hwang & SangEun.Oh All Rights Reserved
Email To:Webmaster ,
Another address
LAST UPDATE Nov 17,1997
Created Nov 7,1997