이 름
pread, pwrite − 주 어 진 변 위 에 서 파 일 기 술 자 에 서 읽 거 나 파 일 기 술 자 에 쓴 다 .
사 용 법
#define _XOPEN_SOURCE 500
#include <unistd.h>
ssize_t pread(int fd, void *buf, size_t count, off_t offset);
ssize_t pwrite(int fd, const void *buf, size_t count, off_t offset);
설 명
pread() 는 파 일 기 술 자 fd 의 변 위 offset (파 일 의 시 작 에 서 ) 에 서 count 바 이 트 를 buf로 시 작 하 는 버 퍼 로 읽 는 다 .
pwrite() 는 buf 로 시 작 하 는 버 퍼 를 파 일 기 술 자 fd 의 변 위 offset에 다 가 count 바 이 트 를 쓴 다 . 파 일 변 위 는 바 뀌 지 않 는 다 .
The file referenced by fd 가 가 리 키 는 파 일 은 이 동 할 수 있 어 야 한 다 .
반 환 값
성 공 시 , 읽 거 나 쓴 바 이 트 수 가 반 환 된 다 .(pwrite 의 경 우 0은 어 떤 것 도 쓰 여 지 지 않 았 다 는 것 을 가 리 키 며 pread 의 경 우 는 파 일 의 끝 을 가 리 킨 다 .) 에 러 시 −1이 반 환 되 며 errno 는 에 러 를 가 리 키 도 록 설 정 된 다 .
에 러
pread 는 실 패 할 수 있 고 errno 를 read(2) 나 lseek(2) 가 가 리 키 는 어 떤 에 러 로 설 정 할 수 있 다 . pwrite 는 실 패 할 수 있 고 errno 를 write(2) 나 lseek(2)가 가 리 키 는 어 떤 에 러 로 설 정 할 수 있 다 .
호 환
Unix98
역 사
pread 와 pwrite 시 스 템 콜 들 은 버 전 2.1.60 에 서 추 가 되 었 다 ; i386 시 스 템 콜 테 이 블 의 엔 트 리 는 2.1.69 에 추 가 되 었 다 . libc 지 원 은 (시 스 템 콜 없 이 예 전 커 널 의 에 뮬 레 이 션 을 포 함 하 여 ) glibc2.1에 서 추 가 되 었 다 .
관 련 항 목
역 자
정 강 훈 <skyeyes [AT] soback.net>, 2000년 9월 19일