俗话说,一幅画抵得上千言万语。首先,使用acsii代码图解释为什么会出现磁盘碎片。
ASCII图
上面的AndyLau代表磁盘文件系统。由于目前没有数据文件,我将其表示为0。
图的左上方有26个尼古拉斯·a-z的字母,用于定位每个数据字节的具体位置。例如,第一行和第一列是AA,26行和26列是ZZ。
我们创建一个新文件。当然,我们的文件系统已经改变了。现在是了
ASCII图
如图所示:“内容表”(TOC)它占据前四行,并将系统中每个文件的位置存储在TOC中。
在上图中,TOC包含一个名为helloTxtfile的名称,其具体内容是“hello,world”,其在系统中的位置是AEtole。
接下来,创建一个新文件
ASCII图
如图所示,我们创建了一个新文件。Txt旁边的第一个文件是helloTxt
事实上,这是最理想的体系结构。如上图所示,如果你把文件一个接一个地粘在一起,阅读它们将非常容易和快速。这是因为硬盘中移动最慢(相对而言)的是传输臂。如果移动更少,读取文件数据的时间会更快。
但这正是问题所在。现在我想在“你好,世界”之后加上一句话感叹号为了表达我的强烈感情,现在的问题是:在这样一个系统中,我没有地方在文件所在的行上放置这些感叹号,因为byeTxt占据了其余位置。
现在有两种选择,但没有一种是完美的- 1.我们从原始位置删除该文件,重新创建一个文件并重新编写“你好,世界!!”这会无意中增加文件系统的读写时间。
- 2.破坏一个文件就是在另一个空白处写一个感叹号,即“headdifferent”——这个想法很好、快速、方便,但也意味着它大大降低了阅读下一个新文件的时间。
如果你不知道上面的文字,请点击上图
ASCII图
这里提到的第二种方法类似于windows系统的存储模式。每个文件彼此相邻,但如果其中一个文件需要更改,则意味着下一个数据将被放置在磁盘上的其他备用位置。
如果删除此文件,将在系统中留下一个空间。随着时间的推移,我们的文件系统将变得支离破碎。碎片就是这样产生的。
尽量简单。与MM讨论硬盘读写原理的简化版本
硬盘的简化示意图
硬盘的结构没什么可说的。我们计算机的数据通常存在于轨道上,这与光盘的数据大致相似。读数由磁头执行。
硬盘的简化示意图
我们都知道,我们的数据以信息的形式存储在磁盘扇区的轨道上。硬盘读取由摇臂控制,磁头从磁盘外部到内部进行读取和写入。因此,外侧的数据读取速度将比内侧快得多。
断盘
事实上,我们的大部分文件都被破坏了。当文件没有损坏时,摇臂只需找到一次轨迹,并通过磁头读取。它只需要一次就可以成功阅读;然而,如果文件被分为11个位置,摇臂需要来回寻找11个磁道,磁头只有在11次之后才能完全读取文件。当阅读时间相对没有中断时,阅读时间就会变长。
修改自:https://www.jb51.net/hardware/yingpan/93441.html
最新评论