unix/linux操作系统文件管理

本文探讨了Unix/Linux操作系统中的文件管理,包括文件缓冲区如何提高数据写入效率,但可能导致数据不同步的问题;文件锁的使用;获取文件信息的方法;文件访问控制;以及文件屏蔽码的作用。
摘要由CSDN通过智能技术生成

文件管理

一.文件缓冲区

  • 1 硬盘上一般都有一些缓冲区以此来提高数据的写入效率,操作系统写入数据其实只是写入缓冲区,知道缓冲区满才排队写入到磁盘中。
  • 2 这种操作降低了写入的次数,但是提高了数据写入的延时,导致缓冲区的数据与磁盘的内容不同步
void sync(void);
//功能:把所有缓冲区中的数据全部同步到磁盘
//注意:只是发布将数据同步到磁盘的命令,并不等待执行完毕才返回,而是命令发布后立即返回
int fsync(int fd);
//功能:指定fd文件的缓冲区数据同步到磁盘
//注意:只针对一个文件,数据同步到磁盘后才返回
int fdatasync(int fd);
//功能:指定fd文件的缓冲区数据同步到磁盘,但仅是文件的数据并不同步文件属性

二.文件锁

int fcntl(int fd, int cmd,.../*arg*/);
fd:文件描述符
cmd:操作命令,不同的操作指令决定,后序参数的个数和类型
注意:这是一个变长参数的函数
int fcntl(int fd ,int cmd,int newfd);
cmd:F_DUPFD
功能:复制文件描述符,与fd操作同一个文件
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值