Read (system call)

In modern POSIX compliant operating systems, a program that needs to access data from a file stored in a file system uses the read system call. The file is identified by a file descriptor that is normally obtained from a previous call to open. This system call reads in data in bytes, the number of which is specified by the caller, from the file and stores then into a buffer supplied by the calling process.

The read system call takes three arguments:

1. The file descriptor of the file.
2. the buffer where the read data is to be stored and
3. the number of bytes to be read from the file.

## Contents

* 1 POSIX usage
* 2 See also
* 3 References
* 4 External links

## POSIX usage

The read system call interface is standardized by the POSIX specification. Data from a file is read by calling the read function:

ssize_t read(int fd, void *buf, size_t count);

The value returned is the number of bytes read (zero indicates end of file) and the file position is advanced by this number. It is not an error if this number is smaller than the number of bytes requested; this may happen for example because fewer bytes are actually available right now (maybe because we were close to end-of-file, or because we are reading from a pipe, or from a terminal), or because the system call was interrupted by a signal.

Alternatively, -1 is returned when an error occurs, in such a case errno is set appropriately and further it is left unspecified whether the file position (if any) changes.

## See also

* write (system call)

## References

* POSIX read

## External links

* v
* t
* e

Computer files

Types|

* Binary file / text file
* File format
* List of file formats
* File signatures
* Magic number
* Metafile
* Sidecar file
* Sparse file
* Swap file
* System file
* Temporary file
* Zero-byte file

Properties|

* Filename
* 8.3 filename
* Long filename
* Filename mangling
* Filename extension
* List of filename extensions
* File attribute
* Extended file attributes
* File size
* Hidden file / Hidden directory

Organisation|

* Directory/folder
* NTFS junction point
* Temporary folder
* Directory structure
* File sequence
* File system
* Filesystem Hierarchy Standard
* Path

Operations|

* Open
* Close
* Read
* Write

Linking|

* Alias
* File descriptor
* Hard link
* Shadow
* Shortcut
* Symbolic link

Management|

* File comparison
* File compression
* File manager
* Comparison of file managers
* File system permissions
* File transfer
* File sharing
* File verification

0.00

(0 votes)

Original source: https://en.wikipedia.org/wiki/Read (system call). Read more

|

Retrieved from "https://handwiki.org/wiki/index.php?title=Read_(system_call)&oldid=266984"
*[v]: View this template
*[t]: Discuss this template
*[e]: Edit this template