62文件系统类系统调用
6.2 文件系统类系统调用
出错的判断 系统调用失败时会在一个外部整数erno中留下一个错误 号给应用程序判定。 include <error h> extern int error 函数 strerror用于将 errno翻译成文字 #include <string.h> char *strerror(int errnum);
出错的判断 ❖ 系统调用失败时会在一个外部整数errno中留下一个错误 号给应用程序判定。 ❖ #include <error.h> ❖ extern int errno; ❖ 函数strerror用于将errno翻译成文字 ❖ #include <string.h> ❖ char *strerror(int errnum);
62.1文件读写操作 fcnt:文件控制; Iseek:移动文件指针; flock:文件加/解锁; Iseek:在64位地址空间 creat:创建新文件; 里移动文件指针; open:打开文件; dup:复制已打开的文件描 close:关闭文件; 述符; read:读文件 dup2:按指定条件复制文 write:写文件 件描述符。 ready:从文件读入数据到pol:I/O多路转换 缓冲数组中 truncate:截断文件 writev:将缓冲数组里的数 umask:设置文件权限掩 据写入文件; 码 pread:对文件随机读; fsync:把文件在内存的部 分写回到磁盘 pwrite:对文件随机写;
6.2.1 文件读写操作 fcntl:文件控制; flock:文件加/解锁; creat:创建新文件; open:打开文件; close:关闭文件; read:读文件; write:写文件; readv:从文件读入数据到 缓冲数组中; writev:将缓冲数组里的数 据写入文件; pread:对文件随机读; pwrite:对文件随机写; lseek:移动文件指针; _llseek:在64位地址空间 里移动文件指针; dup:复制已打开的文件描 述符; dup2:按指定条件复制文 件描述符。 poll:I/O多路转换 truncate:截断文件 umask:设置文件权限掩 码 fsync:把文件在内存的部 分写回到磁盘
62.1文件读写操作二 系统调用open可用于将文件打开。 系统调用格式为: int open(const char pathname, int flags)i 该系统调用返回值为打开文件的描述符。如果打开文件成 功,则返回文件描述符,否则返回-1。 flags是对打开文件的访问模式: O RDONLY表示可读, O WRONLY表示可写, o_RDWR表示可读、可写。 另外还可以增加O_ CREAT, O EXCL O APPEND,…
❖ 系统调用open可用于将文件打开。 ❖ 系统调用格式为: int open(const char *pathname, int flags); ❖ 该系统调用返回值为打开文件的描述符。如果打开文件成 功,则返回文件描述符,否则返回-1。 ❖ flags是对打开文件的访问模式: ❖ O_RDONLY表示可读,O_WRONLY表示可写, O_RDWR表示可读、可写。 ❖ 另外还可以增加O_CREAT, O_EXCL, O_APPEND, …… 6.2.1 文件读写操作
62.1文件读写操作 当用户在文件使用完之后不再需要时用系统调用cose断 开用户程序与文件之间的通路,关闭该文件 °系统调用格式为: int close(int fd);
❖ 当用户在文件使用完之后不再需要时用系统调用close断 开用户程序与文件之间的通路,关闭该文件。 ❖ 系统调用格式为: int close(int fd); 6.2.1 文件读写操作