(libc.info.gz) Low-Level I/O

Info Catalog (libc.info.gz) I/O on Streams (libc.info.gz) Top (libc.info.gz) File System Interface
 
 13 Low-Level Input/Output
 *************************
 
 This chapter describes functions for performing low-level input/output
 operations on file descriptors.  These functions include the primitives
 for the higher-level I/O functions described in  I/O on Streams,
 as well as functions for performing low-level control operations for
 which there are no equivalents on streams.
 
    Stream-level I/O is more flexible and usually more convenient;
 therefore, programmers generally use the descriptor-level functions only
 when necessary.  These are some of the usual reasons:
 
    * For reading binary files in large chunks.
 
    * For reading an entire file into core before parsing it.
 
    * To perform operations other than data transfer, which can only be
      done with a descriptor.  (You can use `fileno' to get the
      descriptor corresponding to a stream.)
 
    * To pass descriptors to a child process.  (The child can create its
      own stream to use a descriptor that it inherits, but cannot
      inherit a stream directly.)
 

Menu

 
* Opening and Closing Files           How to open and close file
                                          descriptors.
* I/O Primitives                      Reading and writing data.
* File Position Primitive             Setting a descriptor's file
                                          position.
* Descriptors and Streams             Converting descriptor to stream
                                          or vice-versa.
* Stream/Descriptor Precautions       Precautions needed if you use both
                                          descriptors and streams.
* Scatter-Gather                      Fast I/O to discontinuous buffers.
* Memory-mapped I/O                   Using files like memory.
* Waiting for I/O                     How to check for input or output
 					 on multiple file descriptors.
* Synchronizing I/O                   Making sure all I/O actions completed.
* Asynchronous I/O                    Perform I/O in parallel.
* Control Operations                  Various other operations on file
 					 descriptors.
* Duplicating Descriptors             Fcntl commands for duplicating
                                          file descriptors.
* Descriptor Flags                    Fcntl commands for manipulating
                                          flags associated with file
                                          descriptors.
* File Status Flags                   Fcntl commands for manipulating
                                          flags associated with open files.
* File Locks                          Fcntl commands for implementing
                                          file locking.
* Interrupt Input                     Getting an asynchronous signal when
                                          input arrives.
* IOCTLs                              Generic I/O Control operations.
 
Info Catalog (libc.info.gz) I/O on Streams (libc.info.gz) Top (libc.info.gz) File System Interface
automatically generated by info2html