Penguin

Differences between current version and predecessor to the previous major change of pread(2).

Other diffs: Previous Revision, Previous Author, or view the Annotated Edit History

Newer page: version 4 Last edited on Tuesday, May 6, 2003 6:28:27 am by RajinikanthSambasivan
Older page: version 1 Last edited on Tuesday, June 4, 2002 12:23:44 am by perry Revert
@@ -1,83 +1,37 @@
-PREAD  
-!!!PREAD  
-NAME  
-SYNOPSIS  
-DESCRIPTION  
-RETURN VALUE  
-ERRORS  
-CONFORMING TO  
-HISTORY  
-SEE ALSO  
-----  
 !!NAME 
+pread, pwrite - read from or write to a file descriptor at a given offset  
  
-  
-pread, pwrite - read from or write to a file descriptor at a given offset  
 !!SYNOPSIS 
+ __#define _XOPEN_SOURCE 500__  
+ __#include <unistd.h>__  
  
+ __ssize_t pread(int__ ''fd''__, void *__''buf''__, size_t__ ''count''__, off_t__ ''offset''__);__  
  
-__#define _XOPEN _SOURCE 500 __ 
+ __ssize _t pwrite(int __ ''fd''__, const void *__''buf''__, size_t__ ''count''__, off_t__ ''offset''__); __ 
  
-  
-__#include __  
-  
-  
-__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''__);__  
 !!DESCRIPTION 
+__pread()__ reads up to ''count'' bytes from file descriptor ''fd'' at offset ''offset'' (from the start of the file) into the buffer starting at ''buf''. The file offset is not changed.  
  
+__pwrite()__ writes up to ''count'' bytes from the buffer starting at ''buf'' to the file descriptor ''fd'' at offset ''offset''. The file offset is not changed.  
  
-__pread()__ reads up to ''count'' bytes from file  
-descriptor ''fd'' at offset ''offset'' (from the start  
- of the file) into the buffer starting at ''buf''. The  
-file offset is not changed
+The file referenced by ''fd'' must be capable of seeking
  
-  
-__pwrite()__ writes up to ''count'' bytes from the  
-buffer starting at ''buf'' to the file descriptor  
-''fd'' at offset ''offset''. The file offset is not  
-changed.  
-  
-  
-The file referenced by ''fd'' must be capable of  
-seeking.  
 !!RETURN VALUE 
+On success, the number of bytes read or written is returned (zero indicates that nothing was written, in the case of __pwrite__, or end of file, in the case of __pread__),  
+or -1 on error, in which case ''errno'' is set to indicate the error.  
  
-  
-On success, the number of bytes read or written is returned  
-(zero indicates that nothing was written, in the case of  
-__pwrite__, or end of file, in the case of __pread__),  
-or -1 on error, in which case ''errno'' is set to  
-indicate the error.  
 !!ERRORS 
+__pread__ can fail and set ''errno'' to any error specified for read(2) or lseek(2). __pwrite__ can fail and set ''errno'' to any error specified for write(2) or lseek(2).  
  
-  
-__pread__ can fail and set ''errno'' to any error  
-specified for read(2) or lseek(2).  
-__pwrite__ can fail and set ''errno'' to any error  
-specified for write(2) or  
-lseek(2).  
 !!CONFORMING TO 
+Unix98  
  
-  
-Unix98  
 !!HISTORY 
+The __pread__ and __pwrite__ system calls were added to Linux in version 2.1.60; the entries in the i386 system call table were added in 2.1.69. The libc support (including  
+emulation on older kernels without the system calls) was added in glibc 2.1.  
  
-  
-The __pread__ and __pwrite__ system calls were added  
-to Linux in version 2.1.60; the entries in the i386 system  
-call table were added in 2.1.69. The libc support (including  
-emulation on older kernels without the system calls) was  
-added in glibc 2.1.  
 !!SEE ALSO 
+read(2), write(2), lseek(2)  
  
-  
-read (2 ), write (2 ),  
- lseek(2 )  
-----  
+__Why __Pread?  
+The use of the pread ()/pwrite () functions is by faster by almost a factor of two than the use of a lseek()/read() or lseek()/write() combination, since only one system call has to be performed, thus saving unecessary user/kernel mode transitions  
This page is a man page (or other imported legacy content). We are unable to automatically determine the license status of this page.