What are the Unix system calls for I/O?

open(pathname,flag,mode) – open file

creat(pathname,mode) – create file

close(filedes) – close an open file

read(filedes,buffer,bytes) – read data from an open file

write(filedes,buffer,bytes) – write data to an open file

lseek(filedes,offset,from) – position an open file

dup(filedes) – duplicate an existing file descriptor

dup2(oldfd,newfd) – duplicate to a desired file descriptor

fcntl(filedes,cmd,arg) – change properties of an open file

ioctl(filedes,request,arg) – change the behaviour of an open file

The difference between fcntl and f ioctl is that the former is intended for any open file, while the latter is for device-specific operations.