博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
文件的“打开”和“关闭”操作
阅读量:6273 次
发布时间:2019-06-22

本文共 532 字,大约阅读时间需要 1 分钟。

hot3.png

当前 OS 所提供的大多数对文件的操作,其过程大致都是这样两步: 第一步是通过检索文 件目录来找到指定文件的属性及其在外存上的位置;第二步是对文件实施相应的操作,如读 文件或写文件等。当用户要求对一个文件实施多次读/写或其它操作时,每次都要从检索目录 开始。为了避免多次重复地检索目录,在大多数 OS 中都引入了“打开”(open)这一文件系统 调用,当用户第一次请求对某文件进行操作时,先利用 open 系统调用将该文件打开。

所谓“打开”,是指系统将指名文件的属性(包括该文件在外存上的物理位置)从外存拷 贝到内存打开文件表的一个表目中,并将该表目的编号(或称为索引)返回给用户。以后,当 用户再要求对该文件进行相应的操作时,便可利用系统所返回的索引号向系统提出操作请 求。系统这时便可直接利用该索引号到打开文件表中去查找,从而避免了对该文件的再次 检索。这样不仅节省了大量的检索开销,也显著地提高了对文件的操作速度。如果用户已 不再需要对该文件实施相应的操作时,可利用“关闭”(close)系统调用来关闭此文件,OS 将会把该文件从打开文件表中的表目上删除掉。

转载于:https://my.oschina.net/jlongtian/blog/990809

你可能感兴趣的文章
我的友情链接
查看>>
Linux的dd命令
查看>>
从服务器下载一个离线包,格式为gz的压缩包,怎么解压呢。
查看>>
vim使用点滴
查看>>
embedded linux学习中几个需要明确的概念
查看>>
mysql常用语法
查看>>
Morris ajax
查看>>
【Docker学习笔记(四)】通过Nginx镜像快速搭建静态网站
查看>>
ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
查看>>
<转>云主机配置OpenStack使用spice的方法
查看>>
java jvm GC 各个区内存参数设置
查看>>
[使用帮助] PHPCMS V9内容模块PC标签调用说明
查看>>
关于FreeBSD的CVSROOT的配置
查看>>
基于RBAC权限管理
查看>>
基于Internet的软件工程策略
查看>>
数学公式的英语读法
查看>>
留德十年
查看>>
迷人的卡耐基说话术
查看>>
PHP导出table为xls出现乱码解决方法
查看>>
PHP问题 —— 丢失SESSION
查看>>