★什么是文件系统
文件系统是文件存放在磁盘等存储设备上的组织形式。Linux文件系统的实现采用了分层的体系结构,包括文件用户接口层、文件系统、设备驱动程序等
★文件系统编程包含哪些知识
◇文件的基本操作。包括文件的创建与打开、文件的读写、文件的关闭
◇文件的属性。包括文件属性的获取与设置
◇目录文件的操作。包括创建、删除、打开、关闭、读取、获取或更改当前工作目录等
★什么是文件描述符
所有打开 的文件都通过文件描述符引用。它是一个非负整数,当打开一个现有文件或创建一个新文件时,内核向进程返回一个文件描述符。当读或写一个文件时,使用open或creat返回的文件描述符标识该文件,将其作为参数传递给read或write.
UNIX系统shell使用文件描述符0与进程的标准输入相关联,文件描述符1与标准输出相关联,文件描述符2与标准出错输出相关联。在<unistd.h>头文件中将0,1,2替换成符号常量STDIN_FILENO、STDOUT_FILENO、STDERR_FILENO。文件描述符的变化范围是0~OPEN_MAX。
★文件的基本操作
◇文件的打开与创建
1、文件的打开与创建可以使用一个open函数,它有两种形式:
#include<fcntl.h>
#include<sys/stat.h>
#include<sys/types.h>
int open(const char *filename, int flags);
int open(const char *filename, int flags, mode_t mode);