READ(II)                     8/5/73                      READ(II)


     read - read from file


     (read = 3.)

     (file descriptor in r0)

     sys read; buffer; nbytes

     read(fildes, buffer, nbytes)

     char *buffer;


     A file descriptor is a word returned from a successful open,

     or  pipe  call.  Buffer is the location of nbytes contiguous

     bytes into which the  input  will  be  placed.   It  is  not

     guaranteed  that  all nbytes bytes will be read; for example

     if the file refers to a typewriter at most one line will  be

     returned.   In  any  event  the number of characters read is

     returned (in r0).

     If the returned  value  is  0,  then  end-of-file  has  been



     open (II), pipe (II)


     As mentioned, 0 is returned when the end  of  the  file  has

     been  reached.   If  the read was otherwise unsuccessful the

     error bit (c-bit) is set.  Many conditions can  generate  an

     error: physical I/O errors, bad buffer address, preposterous

     nbytes, file descriptor not that of an input file.  From  C,

     a -1 return indicates the error.