linux
分类: 网络与安全
2013-01-31 09:50:37
磁盘是一种存储介质,分区是建立在磁盘上的一种结构,这种结构可以使一个磁盘变成看似几个磁盘,而文件系统是建立在分区上的一种系统,这种系统通过很多固化在磁盘上的数据来实现,文件系统的目的其关键目的是提供存储介质的耗损均衡,同时在使用文件系统的时候,可以按文件的方式来存储数据。
磁盘内部由类似光碟的介质组成,一种磁盘有很多张这种介质,每张介质的上下两面都可以使用,然后每张介质上面划分许多不同半径的圆,下一个圆和上一个圆之间称为一个磁道,同时在一个磁道内,由分成很多扇区,每个扇区由512bytes构成。我们知道,要写数据就要定位到某一个具体的位置上去,那么磁盘是如何来定位到每一个扇区上去的拉?首先磁盘并不是单独存在的,有了磁盘这个存储介质之后,还要一个单元来使磁盘按正确的方式工作,这个单元是磁盘驱动器,在寻址的时候,磁盘驱动器会找到,某张介质的正面还是反面,需要注意的是,所有的以张为单元的介质统一来编排,按1、2、3、4、5、......来说明的话第一张介质的正面为1面,反面为2面,第二张介质的正面为3面,反面为4面以此类推,定位某个面的介质成为磁头。定位到某个磁头之后,再找到具体的某个磁道,然后再定位到磁道上的某个扇区上去。综上所述,磁盘定位到某个位置的过程是:磁头*磁道*扇区。
当所有东西都放在一起的时候,就需要将其按不同类别的数据来分开存放,即分类处理,”分类处理“,看似简单的词语,我却无法清楚的解释是为什么,因为这是一个道理,所谓道理,究其根源,也只不过是因为某种信仰衍生出来,或者人们通过实践检验出来的,或者通过另外的方式给予证明,所以在寻求为什么要”分类处理“的时候,得到的是通过以前无数代人总结出来的经验、以及自己处理事物的到的经验而已,那么到底是为什么拉?知道分类处理的“原因之后”,就可以将所有的数据分开处理,那么如何将不同的数据存放在不同的位置拉?那就是分区,我相信99%的人都是支持一个分区内的内容是连续的,当然也许还有另外的人可以想到为什么分区的内容一定要连续存放,不能是这里一点空间,那里一点空间?这个问题答案也许只有真正在编码的时候在能回答的很清楚,所以不能妄下定论。唯一可以肯定的是,如果分区内容是连续的,那空间之间的关系编程的前后的关系,而如果不连续这种关系链就断了。
分区的作用不仅仅是如此,另外在实际情况当中,还和很多引导信息有关。分区的种类有两种,一种是MBR,另一种是GPT,前者有一定的局限,最大支持2TB磁盘,分区最多4个。GPT不同,它可以支持128个分区,支持的硬盘大小更是大的很,远远超过人们的需要。
世间万物都是变化的,这是一个道理,所以存储介质总有一天会变化的不能满足人们的需要,它的人生终结,对磁盘而言,每个扇区的使用越频繁,变化也越快,所以必须均衡每个扇区的使用频率,这就是文件系统的一大作用,有利必有弊,在解决一个问题的时候,通常会引发其他的问题,所以均衡不仅仅是要文件系统要解决的问题,比如垃圾回收等,也是文件系统要解决的问题。在使用者看来,更改的是同一个文件,看起来存放的位置是一样的,事实并非如此。更改了一个文件之后,也许之前存放文件内容的磁盘当中的某个位置也许被抛弃了,取而代之的是新存储位置来存放这个文件,这就是文件系统的作用。
本文简单的介绍了磁盘、分区、文件系统的关系,以备忘,希望有一天,我的知识能够成为一个完整的体系,某些知识点不再是空中楼阁,不稳固!同时希望能够帮助到一些有惑之人。