!guide_close_btn!

什么是文件系统

Yoga 2014-6-4 10:34:57 最新回复:2017-05-09 18:06:23
7012 8 2 1
    文件系统定义了把文件存储磁盘时所必须的数据结 构及磁盘数据的管理方式。我们知道,磁盘是由很多个扇区(Sector)组成的,如果扇区之间不建立任何的关系,写入其中的文件就无法访问,因为无法知道 文件从哪个扇区开始,文件占多少个扇区,文件有什么属性。为了访问磁盘中的数据,就必需在扇区之间建立联系,也就是需要一种逻辑上的数据存储结构。建立这 种逻辑结构就是文件系统要做的事情,在磁盘上建立文件系统的过程通常称为“格式化”。


   以Windows平台下最常见的FAT文件系统为例。FAT文件系统有两个重要的组成部分:FAT表(File Allocation Table)和数据存储区。FAT表是FAT文件系统的 名称来源,它定义了存储数据的簇(Cluster,由2的n次方个Sector组成,n值根据分区大小而定,需综合考虑数据存取效率和存储空间的利用率) 之间的链接关系,这种链接关系是一个单向链表,指向0xFF表示结束。依据一个簇编号所用bit数的不同,可分为FAT12、FAT16和FAT32文件系统。数据区存储的数据包含文件目录项(Directory Entries)和文件数据。文件目录项存储的是一个文件或目录的属性信息, 包括文件名称(把目录也看成是文件)、读写属性、文件大小、创建时间、起始簇编号等,一个目录下的每个子目录和文件都对应一个表项记录。文件目录项以固定 32字节的长度存储,以树型结构管理,其中根目录的位置是确定的。也就是说,根据分区根目录可以找到下级子目录和文件的起始簇编号,根据下级子目录又可以 找到更下级目录或文件的起始簇编号。可见,FAT表和文件目录项是为了文件的访问和管理而建立的。应用程序要 访问一个文件时,根据文件路径(逻辑分区号+目录,如F:\software)和文件名称(如setup.exe)可从文件目录项中获得存储文件数据的起 始簇号,之后从FAT表查询这个簇号对应的链表,就可以获得该文件对应的全部簇编号。从这些簇中读出全部数据,就得到一个完整的文件。


  一般来说,文件系统是和操作系统紧密结合在一起的,不同的操作系统使用不同的文件系统,但有时为了兼容,不同操作系统也使用相同的文件系统


    

存储系统与文件系统的关系

提到NAS,通常会想到传统的NAS设备,它具有自己的文件系统,具有较大的存储容量,具有一定的文件管理和服务功能。NAS设备和客户端之间通过IP网络连接,基于NFS/CIFS协议在不同平台之间共享文件,数据的传输以文件为组织单位。

      虽然NAS设备常被认为是一种存储架构,但NAS设备最核心的东西实际上在存储之外,那就是文件管理服务。从功能上来看,传统NAS设备就是一个带有DAS存储的文件服务器。从数据的IO路径来看,它的数据IO发生在NAS设备内部,这种架构与DAS毫无分别。而事实上,很多NAS设备内部的文件服务模块与磁盘之间是通过SCSI总线连接的。至于通过NFS/CIFS共享文件,完全属于高层协议通信,根本就不在数据IO路径上,所以数据的传输不可能以块来组织。正是由于这种功能上的重叠,在SAN出现以后,NAS头设备(或NAS网关)逐渐发展起来,NAS over SAN的方案越来越多,NAS回归了其文件服务的本质。

      由此可知,NAS与一般的应用主机在网络层次上的位置是相同的,为了在磁盘中存储数据,就必须要建立文件系统。有的NAS设备采用专有文件系统,而有的NAS设备则直接借用其操作系统支持的文件系统。由于不同的OS平台之间文件系统不兼容,所以NAS设备和客户端之间就采用通用的NFS/CIFS来共享文件。

  至于SAN,它提供给应用主机的就是一块未建立文件系统的“虚拟磁盘”。在上面建立什么样的文件系统,完全由主机操作系统确定。

点评 回复

全部回复

piece
piece 2014-6-4 10:51:30

很清晰,感谢LZ

点评 回复

传说中BN
传说中BN 2014-6-4 11:11:05

点赞!!!!

点评 回复

拖拉机小白
拖拉机小白   2015-5-21 18:25:30

   很不错

点评 回复

人生丶如戏
人生丶如戏   2015-5-21 19:27:09

很清晰,感谢分享

点评 回复

chaozai03
chaozai03   2015-7-16 11:43:28

很清晰,感谢楼主。

点评 回复

这个改了认得出么
这个改了认得出么   2015-6-5 10:50:40

感谢分享!

点评 回复

ymyg_lulu
ymyg_lulu   2017-5-9 11:44:04

不错

点评 回复

偶来看看
偶来看看   2017-5-9 18:06:23

宽泛的讲,还有一种SAN文件系统,只不过貌似这个概念没有流行起来。以下来自网络搜索。:)
"SAN文件系统" san file system; san - file system;
  基于网络存储的集群文件系统又可称为SAN文件系统
  SAN文件系统(SAN file system)是一种编程,它允许不同操作系统的多个服务器共享存储在公共存储介质上的相同文件。如果没有SAN文件系统,尽管不同服务器可共享公共存储介质(使用虚拟化方法),它们不能共享相同文件。SAN文件系统简化了SAN管理,减小了 存储和恢复时间,优化了存储资源的使用,并允许单独缩小网络元件,同时避免了 冗余存储。 SAN编程包括各个服务器上的客户程序,它专门用于服务器使用的操作平台。如果要创建或写文件,客户程序向控制SAN通信的公共元数据服务器发出请求,一旦允许访问,服务器可不经过元数据服务器而访问文件,并保证大多数输入输出(I/O)的性能不下降。
  SAN 系统使用专用的网络,其扩展能力很强。
  目前存在的比较知名的SAN文件系统
  BWFS——中科院计算所研发并推广的国内唯一的自主研发的SAN文件系统,目前国内已有很多地方在使用。
  GPFS——IT全能老大IBM自行研发,一般随其产品共同销售。
  Panasas——存储界重量级厂商作品,2004年进入中国,影响力不错。主体是刀片式存储设备,核心软件为PanFS
   StorNext——又一存储界大户 ADIC作品,价格比较昂贵。苹果曾经OEM该产品,名为Xsan,专门应用于广电行业。
  Lustre——目前已归开源王SUN所有,因为开源,所以很多人感兴趣,但是一般用户没有相当技术实力去驾驭,而且SUN服务费用奇高。
  CXFS——高性能巨头SGI作品,SGI在中国曾一度濒临倒闭,目前死而复生。SGI产品质量很好,相当的是其产品价格也十分夸张,CXFS一般都是随产品一起出售的。

点评 回复

回复

您需要登录后才可以回帖 登录 | 注册
发表回复

内容安全提示:尊敬的用户您好,为了保障您、社区及第三方的合法权益,请勿发布可能给各方带来法律风险的内容,包括但不限于政治敏感内容,涉黄赌毒内容,泄露、侵犯他人商业秘密的内容,侵犯他人商标、版本、专利等知识产权的内容,侵犯个人隐私的内容等。也请勿向他人共享您的账号及密码,通过您的账号执行的所有操作,将视同您本人的行为,由您本人承担操作后果。详情请参看“用户协议

My Followers

登录参与交流分享

登录

屏蔽
!block_confirm_cont!
温馨提示
!bind_my_phone_cont!