所有的操作系统都会产生磁盘碎片,这正是某些朋友产生疑虑的原因。这个碎片在官方资料中称为内部碎片。它是这样产生的,假设一个磁盘的空间有20k,它的基本存储单位为簇,设有两个文件,一个7k,一个1k。当簇的大小为4k时,磁盘分为了5个簇,两个文件共占用3个簇,即使用了12k,其中浪费地空间就是4k,也就是产生了内部碎片4k。因此我们就了解了:内部碎片主要是造成磁盘空间的浪费。请注意:windows的磁盘碎片整理功能所整理的碎片不是这个碎片,也无法对这个碎片进行操作,它所对应的碎片概念是外部碎片。

那么,可以对内部碎片进行优化处理吗?答案是肯定的。以上面的例子来说,如果把每一簇分成2k,那么20k的磁盘就分为了10个簇,7k和1k两个文件共占用了5个簇,10k的空间,浪费的空间,即内部碎片为2k。

由此可见,簇分的越小,所浪费的空间越少。这也是NTFS比FAT32优秀的一个地方。在Win

2000的FAT32文件系统的情况下,分区大小在2GB~8GB时簇的大小为4KB;分区大小在8GB~16GB时簇的大小为8KB;分区大小在

16GB~32GB时,簇的大小则达到了16KB。而Win

2000的NTFS文件系统,当分区的大小在2GB以下时,簇的大小都比相应的FAT32簇小;当分区的大小在2GB以上时(2GB~2TB),簇的大小都为4KB。相比之下,NTFS可以比FAT32更有效地管理磁盘空间,最大限度地避免了磁盘空间的浪费。

有的朋友会进一步的思考,那么为什么文件系统不是把簇分的非常的小呢?这里就引出了另一个问题,文件访问查找的问题。还是以上面的例子说明,当我们要查找使用一个文件时,就需要通过页表来进行访问。打个比方,你住的地方就好比是文件所占用的簇,但是要找到你,就得通过你的住址来进行访问,而访问文件则是通过文件分配表。如果住的人多,地址也就很多,那么要查到你住的地址所花的时间也就很多。同样的道理,当簇分的越小,记录簇的地址也就越大,查找文件所在的簇所花的时间也就越多。当簇为4k时,簇的地址是5个,而簇为2k时,簇的地址是10个。因而簇的大小是在空间和时间上取得平衡的一个结果。

这里也对另一个问题作一些提示,有些第三方分区软件可以自定义簇的大小,建议采用默认值,否则会在某些情况下产生一些问题。

有的朋友会进一步提问:那么为什么在普通情况下NTFS分的簇会比FAT32的要小,而访问速度会差不多呢?这又牵涉到文件访问机制等等问题。这里我就不再介绍了,其实这个问题我也不能完全说清,有兴趣的朋友可以找一些操作系统方面的资料进行阅读,可以在一定程度上解决这个问题。

Linux会产生磁盘碎片吗,Linux不需要磁盘整理:碎片的来源相关推荐

  1. 为什么早期的 Windows 需要整理碎片

    为什么这么设计(Why's THE Design)是一系列关于计算机领域中程序设计决策的文章,我们在这个系列的每一篇文章中都会提出一个具体的问题并从不同的角度讨论这种设计的优缺点.对具体实现造成的影响 ...

  2. linux整理碎片命令,如何在 Linux 中整理磁盘碎片

    如何在 Linux 中整理磁盘碎片 有一个神话是 linux 的磁盘从来不需要整理碎片.在大多数情况下这是真的,大多数因为是使用的是优秀的日志文件系统(ext3.4等等)来处理文件系统.然而,在一些特 ...

  3. Linux清mysql磁盘,mysql与linux ~ 磁盘分析与调优

    一 简介 谈谈磁盘IO的问题二 目的:如何进行IO性能问题的排查 二  linux角度 一 机械硬盘基本定义 寻道时间,表示磁头在不同磁道之间移动的时间(最耗时). 旋转延迟,表示在磁道找到时,中轴带 ...

  4. Linux操作系统使用基础05:Linux磁盘与文件系统管理

    目录 1. 文件系统特性 1.1 概述 1.1.1 操作系统相关性 1.1.2 磁盘与文件系统的关系 1.2 文件数据的存放 1.2.1 索引式 1.2.2 链表式 2. Linux的Ext2文件系统 ...

  5. linux文件系统碎片,为什么 Linux 不需要碎片整理

    如果你是一个Linux用户,你可能听说过,不需要对你的Linux文件系统进行碎片整理.你可能还会注意到,Linux发行版并没有附带磁盘碎片整理工具.这是为什么呢? 想要知道为什么在正常使用中,Linu ...

  6. linux 分析磁盘性能,03.分析性能瓶颈 - 3.4.磁盘瓶颈 - 《Linux性能调优指南》 - 书栈网 · BookStack...

    磁盘瓶颈磁盘瓶颈性能调优选项 磁盘子系统通常是服务器性能的最重要方面,是瓶颈问题的高发部件.但是,磁盘问题表现的有时候并不是那么直接,比如说可能是内存不足.如果CPU周期浪费在等待I/O任务完成,应用 ...

  7. linux 存储映射lun 给_在Linux中针对物理磁盘和LUN映射Oracle ASM磁盘

    本文可帮助你查找哪个ASM磁盘映射到哪个Linux分区或DM设备. 前言 如果你作为Linux管理员长时间退出工作,你可能已经了解了ASM,Device Mapper Multipathing(DM- ...

  8. Linux 入门记录:六、Linux 硬件相关概念(硬盘、磁盘、磁道、柱面、磁头、扇区、分区、MBR、GPT)...

    一.硬盘 硬盘的功能相当简单但很重要,它负责记录系统所需要的各种数据.硬盘记录数据有两个方面,一个是硬件方面的存储原理和结构,另外一方面则是软件方面的数据和文件系统.硬盘的主要行为就是数据的存放和取出 ...

  9. linux 重新分区挂载,Linux:挂载磁盘分区,linux已挂载磁盘重新分区

    Linux:挂载磁盘分区,linux已挂载磁盘重新分区 查看挂载的分区 df 命令主要用来了解系统中已经挂载的各个文件系统的磁盘使用情况. 常用选项: "-h" ,显示更易读的容量 ...

  10. linux下磁盘高级工具,Linux命令行工具-di

    今天小编要跟大家分享的文章是关于Linux命令行工具-di.如果你是个Linux命令行用户,你肯定会使用df命令检查文件系统的磁盘使用情况.尽管df是一个受欢迎的命令,但仍然不能提供一些高级的功能,如 ...

最新文章

  1. “去了太空就别回来了!”贝索斯还没“上天”,就遭美国 5 万多人请愿:不准重返地球...
  2. virtual box卸载后无法正常安装
  3. 微信内置浏览器的JsAPI(WeixinJSBridge续)[转载]
  4. [007]C++---写一个函数,返回它自己
  5. Linux软件安装小结
  6. 物联网Wi-Fi配网方式,你知道几种?
  7. ActiveMQ性能测试
  8. 操作系统上机作业--使用系统调用实现mycp
  9. css 滚动条样式_那些你总是记不住但又总是要用的css
  10. u盘 连接服务器系统软件,u盘服务器系统
  11. java swing 帮助文档,在Java Swing应用程序中创建在线帮助-使用pdf用户文档
  12. Win10技巧:如何确定电脑是否适用Hyper-V虚拟机?
  13. ajax无法访问,Ajax不能跨域访问的解决方案
  14. 16广义逆的计算及应用
  15. pon移动家庭网关有虚拟服务器吗,电信、移动、联通家庭网关对比分析
  16. 高德地图怎么测量面积_高德地图如何测量海拔
  17. Hadoop 1.x 和 Hadoop 2.x 有什么区别?
  18. android 桌面快捷方式静态shortcuts异常
  19. 微信支付申请及简单使用
  20. 记一次程序包XXX不存在解决过程

热门文章

  1. 阅读《首先,打破一切常规》有感
  2. java实现附件打包并下载
  3. Google中文名定“谷歌” CEO施密特来华揭名
  4. 顶尖条码标签秤android开发,顶尖电子秤使用教程之条码标操作方法
  5. 计算机辅助技术论文,计算机辅助设计技术论文(2)
  6. 微信小程序-豆瓣电影
  7. 可口可乐公司旗下产品已检出核辐射物质 写一份新闻稿
  8. The located assembly’s manifest definition does not match the assembly reference
  9. MSSQL 2000 循环语句
  10. [翻译角]Headline English: A Captain Should Be Pitch Perfect at a Multitude of Skills (ESLPOD Blog)...