文件空洞的作用:文件系统帮你做到磁盘预留

隔壁老赵的博客 2019-05-15 23:07:00 阅读数:25 评论数:0 收藏数:0

今天看《TLPI》,看到了文件空洞这个名词,工作了三四年第一次听到这个词。

那文件空洞到底是什么?在哪些场景会用到呢?

 

文件空洞的是什么?:

          linux下读文件的时候,如果lseek指定的读偏移量超过了文件结尾,此时read调用返回的是0,标识文件结尾。但是对于write调用,却可以继续写入数据。

          从文件结尾后到新写入的数据间这段空间称为文件空洞。

 

文件空洞有什么特点?

         1.文件空洞并不占据磁盘空间,直到后续真正写入了数据才会落到磁盘。在此之前,空洞区对应链表指向的是空指针,文件系统将其解释为0的子串。(所以在建立文件空洞的时候,速度会非常快。没磁盘IO)

         2.文件系统会扣减程序可用磁盘空间数值大小,做到预留

 

文件空洞在哪个场景可能用到?(下面是我的理解,不一定正确,欢迎指正)

         想象一个下载数据的场景,你需要下载10G的电影,那你的磁盘现在有11G剩余,你的网速没那么快,可能需要下载1个小时,在这1个小时内磁盘可能会被其他程序占用。

         所以呢,你可以利用文件空洞做好预留。建立一个10G的文件空洞,虽然文件系统没有真正落盘,但是可用磁盘空间会被真正扣减,也就是可以做到预留。

         所以即使你后续下载再慢,文件空洞机制也帮你保证了,你这个电影不会因为磁盘不够而中断。

         如果没有文件空洞,想象,你的电影下到5G,磁盘被另一个进程占用了剩余的6G,下载被迫中断。

 

 

上面的内容出自上篇提到的《UNIX系统编程》,英文简称《TLPI》

我把《UNIX系统编程》电子版书籍放到了我的公众号,如果需要可以扫码关注我的公众号&回复   "TLPI",即可下载 《UNIX系统编程》《The Linux Programming Interface》的pdf版本

 


版权声明:本文为[隔壁老赵的博客]原创文章
转载请带上:http://copyfuture.com/blogs-details/30122901acc636f0fbd67508ab1faf44
或:https://www.cnblogs.com/zhaoyixing/p/10872820.html


  1. 函数和数组(妈妈再也不用担心我的函数)
  2. 深圳暴雨引发洪水多人被冲走,已致2人死亡9人失联
  3. 中国核潜艇有多强?当年曾被西方嘲笑噪音大如雷,实战中却追击美国航母立下大功
  4. Web前端入门学习教程之JS基础知识梳理汇总
  5. 万茜连过三关,心态比喻恩泰好很多,凯叔被巧妙利用,神来之笔
  6. 从“驸马爷”到统一食品王国掌门人,罗智先靠啥十年市值翻3倍?
  7. 新视野号终于传回一张照片,然而科学家见了之后,直呼前所未闻
  8. CSS Grid 布局完全指南(图解 Grid 详细教程)
  9. 迈腾的大空间,天籁的舒适度,交钱定车丰田凯美瑞!
  10. 刘强东夫妇又有新动作,投资新公司章泽天成董事,创始人不简单
  11. 百度转身to B:能否拨开云雾
  12. WiFi探针盒子窃取用户隐私,华为宣布EMUI系统可免疫
  13. 指标正常,却突发血栓?当心幕后致命“推手”!
  14. 新疆独库公路上的三种虐,升华一颗旅行心!
  15. 波音737真得有设计缺陷吗?汽车有设计缺陷为啥还有很多人买?
  16. python 10行代码发短信打电话(twilio)
  17. 百度地图电子围栏功能的实现
  18. 经典团队策略游戏——《战斗之心2》
  19. 美媒:为化解美朝僵局 美国前总统卡特或赴朝斡旋
  20. 三个水杯——java,广度优先搜索
  21. 王兴和马云的战争:一场标题党引发的惨案?
  22. 3月我们可以玩到什么新游戏?
  23. .NET应用框架架构设计实践 - 概述
  24. 戏说辛弃疾:要有多热爱,才甘愿为理想做到这种地步!
  25. 恩里克:当年在巴萨我放弃克罗斯,选择买拉基蒂奇
  26. 直击|华为建OpenLab北京分中心 做数字生态城市建设
  27. 海南微软创新中心:依托微软技术优势 为企业创新发展赋能
  28. 绝地求生冲锋枪表现数据:UMP9为最致命冲锋枪
  29. 滴滴顺风车能重启吗?
  30. 今年为什么我要去新疆?
  31. 金山软件2018年全年营收达59.06亿元
  32. C#的自定义语法糖
  33. 《都挺好》吴非和苏明哲离婚,苏明成竟为了明玉打架,原因很感人
  34. 人的情绪是一个定数,腾不出空间来快乐,就会腾出空间来忧伤
  35. 刘德华能这么成功,离不开这两个人的提拔
  36. 比特大陆危机:吴忌寒或离开核心 裁员比例将达50%
  37. “好的”胆固醇不高咋办?医生:试试这7种生活方式
  38. 阿里云SLB出现502 Bad Gateway 错误排查解决方法
  39. 音效模块
  40. 李诞人设危机,《吐槽大会》口碑下滑,脱口秀这门生意要凉?
  41. 一个深深喜欢老车的90后,和一台雷克萨斯GS300的故事!
  42. 奇瑞最强SUV终于等来了!星途陆续到店,11.98万起会是黑马吗?
  43. HTML重构:战略篇
  44. Splay 记录
  45. 字符串与指针
  46. 欧阳娜娜被官媒从“四小花旦”中除名了,网友:可能要“凉凉”
  47. 向佐带郭碧婷出席家宴,扒扒娱乐大佬们的儿子都娶了谁
  48. “女王节”汽车特别篇:推荐三款气质与品质俱佳的“女神座驾”!
  49. 步枪之王再次易主!M4凉凉,AKM不行了,而它却成为步枪之王
  50. 政府工作报告中的这些概念,你一定要知道!
  51. mybatis之旅第三篇-SqlMapConfig.xml全局配置文件解析
  52. Vuex入门
  53. h5文字超出,两行显示,超出显示省略号
  54. 慈禧上朝必做两件事,第一件人之常情,第二件令人感到十分耻辱
  55. 陈果:换一种活法活吧
  56. 你觉得 .NET 性能低,可能只是因为你的能力低
  57. 【原创】大数据基础之ElasticSearch(1)简介、安装、使用
  58. 变沙漠为绿洲!以色列的农业科技到底有多牛?
  59. 快消品企业新营销体系转型规划
  60. 孩子入园好似两面派:在我跟前哭断气,进了幼儿园又很开心
  61. 一场20年的同学聚会,告诉你什么叫失败的人生!
  62. 沪江大裁员之后 上市之路依然充满坎坷
  63. “爸爸”质疑“老爸”?纸尿裤该怎么测?小红花测评说句公道话!
  64. 明明是欧洲的城市,却被中国人“占领”,当地警察被迫也要学汉语
  65. windows凭据管理
  66. 长寿能通过这10件事改变!想活多久,你说了算!
  67. 魔兽世界为什么一般画质?却拥有如此宏伟的画面!
  68. 苹果收购Texture细节曝光:至少要支付4.85亿美元
  69. shell学习总结-3
  70. Oracle函数sys connect by path用法
  71. 预测:现役有望破贾巴尔38387得分纪录的球员分析
  72. 春节过年见闻录
  73. 中科院院士沈自尹逝世,今年至少已有9位两院院士离世
  74. 张志俊:一人击败日本空手道代表团的中国拳王
  75. 李斯是一个什么样的人? 且听我细细道来(上)
  76. 当年苏联恨不得除之而后快,尘埃落定后,他却成了“爱国将领”
  77. 周末品读:让心,静一静!
  78. 用存储过程向数据库添加大量数据【mysql】
  79. Nginx(四) nginx+consul+upasync 在ubnutu18带桌面系统 实现动态负载均衡
  80. 熊熊出外景泳衣裤全是洞放大绝! 转背面网全看傻
  81. 如何才能不孤独?孤独的人应该怎么做?
  82. 中国联通日净赚110万,每名用户用66G流量,5G厮杀已展开
  83. iQOO今日再度开售 8GB+128GB货量增加
  84. 肿瘤和癌症是一回事吗?|漫画
  85. 阿里和中东加密货币“阿里巴巴币”达成商标纠纷和解
  86. 宝宝消化不良,身体差?掌握3点轻松应对
  87. 狂欢夜!武磊入首球,解说再现黄健翔式怒吼,球迷疯狂送他上热搜
  88. C++解析头文件-Qt自动生成信号声明
  89. 夜 盘 策 略 20190315
  90. 华夏银行技术处长给系统植入病毒 以测试BUG的名义上千次盗取资金
  91. 中外电影节的海报设计之间,到底差了几个黄海?
  92. 生完宝宝脸上斑怎么淡
  93. 麒麟子Cocos Creator实用技巧一:如何正确地显示微信头像
  94. 从JVM的角度解析String
  95. 意大利华人太招摇!若为太平故,座驾要低调
  96. 佛说!成为夫妻,也需要缘分的
  97. 比亚迪F3终将被取代,新车型内外更漂亮,1.5L自吸5万将开卖!
  98. 这个国家是美国盟友,不理会美国威胁,坚持和中国人做生意
  99. 邮轮撤走母港看中国海上旅游的前景
  100. 苹果今晚大战开打!要求高通赔偿270亿美元

  1. Python开发:部分第三方库无法在线安装解决方法(949)
  2. [Swift]LeetCode325. 最大子数组之和为k $ Maximum Size Subarray Sum Equals k(779)
  3. Matlab 2019a 安装包下载以及安装和激活(720)
  4. 仅限Edge和Chrome访问 全新网页端Skype应用上线(686)
  5. 前端笔记之NodeJS(一)初识NodeJS&内置模块&特点(684)
  6. C#读取excel文件提示未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序(663)
  7. 【预警通告】Weblogic反序列化远程代码执行漏洞(640)
  8. Visual Studio 2019 正式发布,重磅更新,支持live share(600)
  9. 【预警通告】Apache Tomcat远程代码执行漏洞CVE-2019-0232(573)
  10. 网上赌博平台维护审核提不了款怎么办?(535)
  11. React 与 React-Native 使用同一个 meteor 后台(529)
  12. Sublime Text3 最新版3207 安装及破解(458)
  13. Visual Studio 2019 正式发布(389)
  14. [翻译] Visual Studio 2019: 极速编码. 智能工作. 创造未来.(389)
  15. 刘强东身边的CXO还有谁“幸存”(373)
  16. 舍命生子产妇吴梦丈夫怒斥:没抢肺源不是精神分裂,网友断章取义(371)
  17. Confluence SSRF及远程代码执行漏洞处置手册(370)
  18. 阿里巴巴2018年纳税516亿元 同比增40%(370)
  19. 机器学习 ML.NET 发布 1.0 RC(369)
  20. K8s集群安装--最新版 Kubernetes 1.14.1(338)
  21. 雷军清华演讲实录:小米9年的创新、变革与未来(334)
  22. 小米手机卖不动了?(327)
  23. F#周报2019年第14期(317)
  24. 积分一样却选手下败将出战国际赛,《最强大脑》云队选手被坑了?(300)
  25. 《最强大脑》要垮?桑洁魏坤琳出轨细节被扒,戚薇才是神助攻(257)
  26. 华电教授孙玉兵被指与昔日同学共同学术造假,多所高校调查(251)
  27. F#周报2019年第15期(249)
  28. 日本明仁天皇退位,日本“平成”年代结束(246)
  29. linux系统安装cdcfordb2udb(241)
  30. Oracle甲骨文大规模裁员,你背离时代就会被淘汰(240)
  31. 他联系叙恐怖分子“卖军火”,称能搞到2000枚导弹,关键时刻中国警察出手(237)
  32. 针对django2.2报错:UnicodeDecodeError: 'gbk' codec can't decode byte 0xa6 in position 9737: ill....(236)
  33. 魔兽世界:8.15搏击俱乐部坐骑获取流程 鳄鱼布鲁斯坐骑(236)
  34. 女友被曝插足许志安郑秀文婚姻 知情人透露马国明已下定决心分手(232)
  35. SQL简介及MySQL的安装目录详解(229)
  36. 视觉中国深夜道歉:全面配合监管部门彻底积极整改(229)
  37. 为什么国内汽车用沥青阻尼片,而欧洲主机厂却用树脂?(229)
  38. 谁是苏小明饭局爆粗偷拍者?知情人称另有其人(225)
  39. NodeJs之邮件(email)发送(223)
  40. 迪玛希好惨!昨晚《歌手》为声入人心男团帮帮唱,却再被指控侵权(223)
  41. 市值暴跌90%,世界零售巨头申请破产战胜了所有对手却输时代(221)
  42. 函数防抖,与函数节流(221)
  43. 机器学习基石笔记:01 The Learning Problem(218)
  44. 深度学习python的配置(Windows)(215)
  45. [深度应用]·实战掌握Dlib人脸识别开发教程(213)
  46. 许志安出轨视频系蓄谋偷拍?司机被曝收40万装红外摄像头(210)
  47. Google AI 系统 DeepMind 高中数学考试不及格(210)
  48. 干货!21部漫威电影观影顺序指南,在《复联4》之前赶紧补齐!(209)
  49. 赌命生子九个月后,吴梦离世:前半辈子任性了,我用生命买单(206)
  50. 威廉王子出轨凯特王妃闺蜜? 外媒称婚外情致兄弟反目(203)
  51. spring-cloud-sleuth+zipkin源码探究(203)
  52. WebGL three.js学习笔记 纹理贴图模拟太阳系运转(201)
  53. 新更新kb4493472导致无法正常开机(195)
  54. 杜敬谦死因疑曝光!或因他这一特殊的训练方式,泳迷高呼孙杨退役(191)
  55. AntDesign Form表单字段校验的三种方式(189)
  56. 韦杰落网,金诚集团终局(188)
  57. 华为推出方舟编译器 称可提升安卓系统效率(186)
  58. 山东庆云民企3000亩土地被贱卖 国企接盘拟转性(185)
  59. 《权力的游戏》龙妈有那么多爱她的人,为什么最终会选择琼恩雪诺(183)
  60. 张无忌为什么爱上她?陈钰琪版赵敏终于给答案了(181)
  61. “国防”靠美国? 韩国瑜=马英九2.0? 走着瞧(180)
  62. 直认与老公感情淡了!27岁TVB上位女星:我们不是好熟(180)
  63. Python破解Wifi密码思路(180)
  64. CUBA Studio 8.0 发布,企业级应用开发平台(179)
  65. Github 上 Star 最多的个人 Spring Boot 开源学习项目(178)
  66. 张丹峰出轨最新锤来了!毕滢的朋友圈简直刷新下限啊!(177)
  67. 拿着普通员工超300倍的工资裁员800人,这家游戏公司CEO引发员工不满|一周新闻(177)
  68. 币安称 4000 万美元比特币被盗(175)
  69. 使用 C 语言实现一个 HTTP GET 连接(175)
  70. 不要996!程序员创建955.WLB不加班公司名单,GitHub周榜第二(175)
  71. AntD框架的upload组件上传图片时遇到的一些坑(175)
  72. 《跃迁-成为高手的技术》之联机学习(174)
  73. Codejam Qualification Round 2019(174)
  74. Weblogic CVE-2019-2647等相关XXE漏洞分析(173)
  75. python爬虫重定向次数过多问题(172)
  76. simulink创建简单模型(172)
  77. 强大的jQGrid的傻瓜式使用方法。以及一些注意事项,备有相应的引入文件。(170)
  78. [NewLife.XCode]高级查询(168)
  79. Algolia使用教程 , 超详细傻子看都会(166)
  80. Delphi 开发微信公众平台 (二) 用户管理(165)
  81. 核心算法缺位,人工智能发展面临“卡脖子”窘境(165)
  82. 告诉你去越南芽庄必带回的好东西(163)
  83. 只需知道电话号码 即可监控任意一部手机,获取位置,太可怕(163)
  84. 范斯晶对祖母的称呼很意外,范志毅很心疼,缺少母爱的孩子不容易(162)
  85. 如何定位前端线上问题(如何排查前端生产问题)(162)
  86. 百度网盘下载神器 PanDownload v2.0.9(破解版、不限速)(160)
  87. 双双出轨!许志安劈腿马国明港姐女友,二人被拍16分钟激吻超20次(160)
  88. 数学家发现完美的乘法(160)
  89. 定义工作,解读自我——IT帮2019年2月线下活动回顾(160)
  90. 高管被警方带走背后:巧达科技操盘2亿人简历生意(159)
  91. 吹爆惠英红,《铁探》这位霸道总警司超带感!真乃港剧罕见大女主(157)
  92. vue生成图片验证码(156)
  93. 三国正史第一猛将:一人单挑数千人,不是吕布也不是关羽(155)
  94. 从0到1上线一个微信小程序(154)
  95. FreeSql 如何现实 Sqlite 跨库查询(154)
  96. 向佐的弟弟叫向佑,网友:那郭碧婷生的孩子叫什么?(153)
  97. [Node.js] 3、搭建hexo博客(153)
  98. spring-boot-2.0.3不一样系列之源码篇 - pageHelper分页,绝对有值得你看的地方(153)
  99. TensorFlow从1到2(十)带注意力机制的神经网络机器翻译(152)
  100. java基础(十五)----- Java 最全异常详解 ——Java高级开发必须懂的(152)

  1. 函数优化实战
  2. numpy数组之存取文件
  3. 曾之乔眼眶泛红爆哭! 5万粉虐心看10秒 最后一刻笑了
  4. 自杀式选角
  5. 登陆Linux服务器时触发邮件提醒
  6. 风暴中的华为员工信首次公布:女朋友停止吵架,家人劝不要做逃兵
  7. 莫迪大胜,对中国意味着什么?
  8. 搞假材料欺骗中央,书记区长双双被免
  9. 小白入门AI教程:教你快速搭建大数据平台『Hadoop+Spark』
  10. MySQL 事务
  11. [Inside HotSpot] Serial垃圾回收器 (二) Minor GC
  12. 老婆举报医生老公“收药品回扣”:他出轨并要求离婚 官方已介入调查
  13. 实验吧简单的sql注入3
  14. 死磕 java同步系列之自己动手写一个锁Lock
  15. [NOI2006] 网络收费
  16. 线性基的小证明...
  17. 从语言设计的角度探究Java中hashCode()和equals()的关系
  18. C# 多线程小试牛刀
  19. Python基础:输入与输出(I/O)
  20. link-1-STL 标准模板库
  21. mysql--浅谈多表查询1
  22. 进击JavaScript核心 --- (1)基本数据类型
  23. 大数据技术之_24_电影推荐系统项目_07_工具环境搭建(具体实操)
  24. 前端限制显示的文本字数的几种方法——不换行与换行
  25. 【实验吧】该题不简单——writeup
  26. 反向传播算法
  27. =、==、===、equals()的区别
  28. GitHub 推出开发者赞助项目
  29. 剑指Offer的学习笔记(C#篇)-- 从上往下打印二叉树
  30. argparse 在深度学习中的应用
  31. 张云雷复出?西城区文旅局:德云社在辖区内演出未发现违法违规问题
  32. Maven安装与配置
  33. acWing 825. 排队购物
  34. ajax&&jquery
  35. 苏联攻击机的悲壮行动,明知德军战机拦截,仍在无护航状态下出击
  36. 华为的5G技术,源于这种数学方法
  37. 一站式自动化测试平台 http://www.Autotestplat.com
  38. RabbitMQ总结
  39. 第九组 通信3班 063 自反ACL
  40. 短线还有最后一跌?大V们表示:反弹近了!(5月23日)
  41. 第九组 通信3班 063 OSPFv2与OSPFv3综合实验
  42. C# IE选项 - 重置IE
  43. Spring_数据校验和自定义检验规则
  44. 谈谈Java的string为什么是不可变的
  45. OFFICE 365 A1 Plus账号注册
  46. 初学python—做一个数组的增删改查操作
  47. oc工程中oc、swift混编代码打包成静态framework踩坑笔记
  48. 阿里云推“智能秒停系统”:50秒内短信通知 再不怕吃罚单
  49. 今天购买了一个云服务器
  50. 神奇!乌鸦竟然会传达悲观和怀疑情绪 还会对同伴“冷嘲热讽”
  51. 数字IC设计入门必备——VIM自定义模板调用与VCS基本仿真操作示例
  52. 点击事件的坐标计算(client || offset) +(X || Width || Left) 各种排列组合别绕晕
  53. windows下dubbo-admin2.6.x之后版本的安装
  54. linux 之基本命令学习总结
  55. 传祺难续“传奇”?销量暴跌超4成 加价卖车被“断裂门”尽毁
  56. 香港豪门后宫持续曝光:他用选美比赛“选妃”,与几万女星交往
  57. 小窥React360——用React创建360全景VR体验
  58. Spring Boot 2 快速教程:WebFlux 集成 Mongodb(四)
  59. .Net Core下使用RabbitMQ比较完备的两种方案(虽然代码有点惨淡,不过我会完善)
  60. “80后”女博士已任团中央书记处书记
  61. 杨元庆:现在是联想的最好时刻 我们四大战役全部打了胜仗
  62. Java开发环境的搭建(JDK和Eclipse的安装)
  63. oracle学习笔记(十四) 数据库对象 索引 视图 序列 同义词
  64. 机构风向标:外资出逃超500亿 美的集团等白马股表现欠佳
  65. 跟踪记录ABAP对外部系统的RFC通信
  66. c++11多线程详解(一)
  67. 小蓝杯,跌破发行价了
  68. [NewLife.XCode]百亿级性能
  69. 33岁何洁商场走穴被曝光,路人镜头下的她与精修图差别好大
  70. 途牛第一季度净亏损2240万美元 同比亏损幅度扩大
  71. 00 | Two Sum
  72. 智能威胁分析之图数据构建
  73. 快速掌握RabbitMQ(二)——四种Exchange介绍及代码演示
  74. Neo4j 第六篇:Cypher语法
  75. Java微信公众平台开发(三)--接收消息的分类及实体的创建
  76. Java8 中的 Optional
  77. 如何显示超大图像(3)
  78. 贵州检察机关依法对袁仁国决定逮捕
  79. 有关xerospolit运行报错问题的有效解决方案
  80. ADO学途 one day
  81. Linux 中 ip netns 命令
  82. Python爬虫之设置selenium webdriver等待
  83. BSOJ1040 -- 【练习题目】美元DOLLARS
  84. 外媒:稀土是中国手中的一张王牌
  85. sql server添加sa用户和密码
  86. 深入理解JVM的类加载
  87. querySelector和getElementById之间的区别
  88. 简说设计模式——观察者模式
  89. 扰动函数和拉链法模拟HashMap的存储结构
  90. 东芝中国:“上海东芝公司”不存在 未停止与华为的合作
  91. 彭于晏马思纯主演张爱玲这部小说,却被说更适合演《骆驼祥子》?
  92. 停止向华为供货?东芝辟谣回应
  93. 云米第一季度净利润5310万元 同比增长68%
  94. 贪吃的古蛙,古生物学家发现亿年前两栖动物之间战争
  95. APICloud发布低代码开发平台 效率提升30%至60%
  96. Golang 读写锁RWMutex 互斥锁Mutex 源码详解
  97. shell初级-----数据呈现方式
  98. 白玉兰入围名单公布!《知否》《都挺好》上榜,还有这部豆瓣3分剧
  99. 深网 | 京东618接入快手、抖音 实现“即看即买”
  100. 解决 APP启动白屏黑屏问题