Linux文件编程,操作系统的基础知识

程序实现的方法:
这里写图片描述

函数的具体实现:
这里写图片描述

Linux 文件编程
这里写图片描述

所有的操作系统都提供多种服务的入口点,程序由此向内核请求服务。这些可直接进入内核的入口点被称为系统调用。
这里写图片描述
 Linux文件可分为:普通文件,目录文件,链接文件,设备文件;
 Linux一点哲学,“一切皆为文件”;在Linux中对目录和设备的操作都等同于对文件的操作;
 “文件”什么是文件?
 系统资源(内存、硬盘、一般设备、进程间通信的通道等)的一个抽象
 对系统资源进行访问的一个通用接口。
 采用这种“文件”的方式有什么好处?
对资源提供通用的操作接口,可以极大地简化系统编程接口的设计。

所有执行I/O操作的系统调用使用文件描述符来表示打开的文件。
 文件描述符是一个非负整数。
 文件描述符可以表示各种类型的打开的文件。
 对文件的操作只要使用文件描述符即可指定所操作的文件。
文件描述符: int fd
文件描述符是一个非负的整数,它是一个索引值,并指向内核中每个进程的记录表中;
一个进程启动时,都会打开三个文件:
这里写图片描述
这里写图片描述
这里写图片描述
系统调用 –打开
int open(const char * pathname , int flags , mode)
路径名 操作位 权限
返回值为整型,回到文件描述符fd中。

mode :  每个文件有9个权限位
flags   有且仅有一个, 在 <fcntl.h> 头文件中
        O_RDONLY        只读打开
        O_WRONLY        只写打开
        O_RDWR      读,写
        O_CREAT|O_RDWR      创建,读写
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章