gerenziliaozy.zipzip code是什么意思文件

文件头_百度百科
关闭特色百科用户权威合作手机百科
收藏 查看&文件头本词条缺少名片图,补充相关内容使词条更完整,还能快速升级,赶紧来吧!
头是位于文件开头的一段承担一定任务的,一般都在开头的部分。作为一种包含功能函数、接口声明的载体文件,用于保存程序的声明(declaration),而用于保存程序的实现 (implementation)。位&&&&置位于开头类&&&&别电脑软件
头是位于开头的一段承担一定任务的。一般都在开头的部分。别看这个头和C语言中的读起来很像,但这两个东西其实根本没有一点关系:头文件是一种包含功能函数,接口声明的载体文件[1];而文件头则是直接位于文件中的一段数据,是文件的一部分
大家应该知道,微机中的有很多种类型,而相同类型的文件一般还会多多少少有一些不同的地方.文件的类型有EXE,COM,BMP,GIF,WMV,APE,RMVB,FLV,SWF,TXT,CPP,ASM等等,当然有的文件根本就没有文件头,比如说TXT,不信的话可以用UltraEdit打开一个文本文件,除了这个文本文件本身的,你不会看到任何其他的.不同类型的文件,只要拓展名不同,操作系统就可以识别这个文件,并用不同的程序来打开这个文件了,比如JPEG文件,它的拓展名一般式jpg,当双击这种类型的文件时,操作系统会自动选择相应的程序来打开这个文件,比如用ACDSee打开.但值得注意的是,相同类型的文件是有不同的地方的,这回拿来举例,大家可以想象一下不同的图片之间最大的不同是什么,有人可能会说是内容,我可以告诉你,你想歪了!不知道大家有没有在看到各种不同大小的的时候想过图像浏览软件是怎样识别图像的大小的?这其实就是文件头的功劳!下面给大家演示一下:
先用Windows自带的创建一个64*64像素的16位纯白BMP图像,保存为1.
然后将图像的大小改为128*64,2.
在ACDSee的浏览界面看到如图的两个东西
再用UltraEdit同时打开这两个,看看这两个文件的前32个字节:
h: 42 4D 76 08 00 00 00 00 00 00 76 00 00 00 28 00 ; BMv.......v...(.
h: 00 00 40 00 00 00 40 00 00 00 01 00 04 00 00 00 ; ..@...@.........
h: 42 4D 76 10 00 00 00 00 00 00 76 00 00 00 28 00 ; BMv.......v...(.
h: 00 00 80 00 00 00 40 00 00 00 01 00 04 00 00 00 ; ..?..@.........
由于这是十六进制的,所以要将原来图像的宽度和高度换成十六进制,以便找到我们想要看到的数据
十进制的128等于十六进制的80,十进制的64等于十六进制的40.这样在第二行好像有我们找的
这个过程只是为了让大家了解一下头,其实这些都是有标准的,百度百科的BMP词条就有BMP文件的文件结构
LONG biW // 的宽度,以像素为单位(18-21字节)[2]
LONG biH // 位图的高度,以像素为单位(22-25字节)
18-21字节的是80 00 00 00,这是个双字,其实就是80,内存中的数据就是这么放的,这个不是问题
写这么多大家应该对头有一点了解了吧?
头就是为了描述一个文件的一些重要的属性,它告诉了打开并处理该文件的程序这些属性,比如上面说的BMP的文件头将长宽像素值告诉了ACDSee,ACDSee会根据文件头中的以及数据的正文把图像显示出来jpg: 255,216
gif: 71,73
png: 137,80
doc: 208,207
docx: 80,75
xls: 208,207
xlsx: 80,75
js: 239,187
swf: 67,87
mp3: 73,68
wma: 48,38
mid: 77,84
rar: 82,97
zip: 80,75
xml: 60,63
用头判断。直接读取的前几个字节。
常用的头如下(16进制):
JPEG (jpg),头:FFD8FF
PNG (png),头:89504E47
GIF (gif),头:
TIFF (tif),头:49492A00
Windows Bitmap (),文件头:424D
CAD (dwg),头:
Adobe Photoshop (psd),头:
Rich Text Format (rtf),头:7B5C727466
XML (xml),头:3C3F786D6C
HTML (html),头:E
Email [thorough only] (eml),头:653A
Outlook Express (dbx),头:CFAD12FEC5FD746F
Outlook (pst),头:2142444E
MS Word/Excel (xls.or.doc),头:D0CF11E0
MS Access (mdb),头:A
WordPerfect (wpd),头:FF575043
Adobe Acrobat (pdf),头:2E
Quicken (qdf),头:AC9EBD8F
Windows Password (pwl),头:E3828596
ZIP Archive (zip),头:504B0304
RAR Archive (rar),头:
Wave (wav),头:
AVI (avi),头:
Real Audio (ram),头:2E7261FD
Real Media (rm),头:2E524D46
MPEG (mpg),头:000001BA
MPEG (mpg),头:
Quicktime (mov),头:6D6F6F76
Windows Media (asf),头:CF11
MIDI (mid),头:4D546864
新手上路我有疑问投诉建议参考资料 查看ape文件是什么?ape文件格式介绍  APE是一种非常先进无损压缩音频技术,也就是说从音频CD上读取的音频数据文件压缩成APE格式后,再将APE格式的文件还原,而还原后的音频文件与压缩前的一模一样,没有任何损失(就好比1080P视频似的,比较清楚,音质比较好)。庞大的WAV音频文件可以通过Monkey’s Audio这个软件进行“瘦身”压缩为APE,同样,APE也可以通过Monkey’s Audio还原成WAV,再刻录成CD。  能打开APE文件的软件很多,比如我们所熟知的暴风影音、千千静听、Foobar2000、aimp等电脑上的音频播放器。现在大部分手机播放器都开始支持APE格式了,如果你的手机容量够大,你又想体验高品质音乐的话,也可以直接把APE文件放在手机播放。
ape文件怎么打开?ape文件相关软件推荐
软件等级:
大小:5.9M更新时间:软件类型:汉化软件免费软件简体
支持的音频格式: MP3, MP4, AAC, CD Audio, WMA, Vorbis,FLAC, WavPack, WAV, AIFF, Musepack, Speex, AU, SND, 通过第三方插件将支持更多的格
软件等级:
大小:3.6M更新时间:软件类型:国外软件免费软件英文
Foobar2000对MP3原生的播放效果比普通的音乐播放器要好很多,在Foobar2000的基础上汉化、添加音效插件、定制皮肤之后就能打造个性化的音乐播放器
软件等级:
大小:6.8M更新时间:软件类型:国产软件免费软件简体
千千静听是国内最受欢迎的音乐播放软件,拥有自主研发的全新音频引擎,支持DirectSound、KernelStreaming和ASIO音频流输出、32比特混音、AddIn插件扩展技术,具有资源占用低、运行效率高、扩展能力强等优点
软件等级:
大小:3.2M更新时间:软件类型:国产软件免费软件简体
千千静听中文版2011经典版其实就是千千静听5.7版,发布,直至才更新到5.8版,这个版本跨时长,用户广,确实经典
软件等级:
大小:8.2M更新时间:软件类型:国外软件免费软件简体
AIMP播放器号称欧洲NO1的音乐播放器,在国外被认为代替WINAMP的音乐播放器,最新版已经是AIMP3,已有中文版,官网皮肤很多
软件等级:
大小:35.5M更新时间:软件类型:国产软件免费软件简体
暴风影音2014官方最新版,万能播放服务升级,提供720P真高清视频,安装速度更快
软件等级:
大小:10M更新时间:软件类型:国产软件免费软件简体
酷我音乐盒是全球第一家集音乐的发现、获取和欣赏于一体的一站式个性化音乐服务平台。酷我音乐盒2013运用世界最新的技术,为用户提供实时更新的海量曲库、一点即播的速度
软件等级:
大小:8.5M更新时间:软件类型:国产软件免费软件简体
百度音乐电脑版出来咯,百度诚邀您参与“百度音乐pc版产品评测”活动!参与活动即有机会获得移动硬盘、百度书包、明星签名cd、百度砖等丰厚奖励!有效参与者均可免费获得百度音乐vip一个月使用权
软件等级:
大小:14M更新时间:软件类型:国产软件免费软件简体
QQ音乐是腾讯打造的音乐播放器,提供正版音乐服务,这次QQ音乐2014全新导歌界面,好音乐轻松导入移动设备(支持安卓手机,u盘)
软件等级:
大小:13.3M更新时间:软件类型:国产软件免费软件简体
酷狗音乐2014重塑了音质标准,重新编写程序代码、100%超高清MV库增量,新增焕然一新的Aero全透明界面效果,酷狗音乐盒2013无论是在线听还是下载,都非常好用
软件等级:
大小:19.4M更新时间:软件类型:国产软件免费软件简体
天天动听电脑版是一款集播放、音效、搜索、下载等众多功能于一身,完全免费的手机音乐播放器。支持歌词和歌曲图片下载,皮肤随心更换,更有炫丽震撼的可视化效果
软件等级:
大小:68.7M更新时间:软件类型:国产软件免费软件多国语言[中文]
Beoplayer是音乐发烧友们号称的当前音质最好的音乐播放器,“Beo针对有损音乐格式的支持效果非常好,与Foobar相比声音更薄更脆,声场也更宽”,这是网友的个人体验
软件等级:
大小:4.7M更新时间:软件类型:国产软件免费软件简体
多米音乐优化版下载,如今音乐播放器众多,找到自己对味的音乐就很重要,多米音乐的亮点在于它丰富多样的乐库歌曲菜单,能满足各种音乐口味的人群需求
ape文件扩展阅读文件系统_百度百科
关闭特色百科用户权威合作手机百科
收藏 查看&文件系统
文件系统是用于明确设备(常见的是磁盘,也有基于NAND Flash的固态硬盘)或分区上的文件的方法和;即在存储设备上组织文件的方法。中负责管理和存储文件信息的软件机构称为,简称文件系统。文件系统由三部分组成:文件系统的接口,对对象操纵和管理的软件集合,对象及属性。从系统角度来看,文件系统是对文件设备的空间进行组织和分配,负责文件存储并对存入的文件进行保护和的系统。具体地说,它负责为用户建立文件,存入、读出、修改、转储文件,控制文件的存取,当用户不再使用时撤销文件等。外文名file system适用范围计算机
结构图文件的系统是用于明确磁盘或分区上的文件的方法和;即在磁盘上组织文件的方法。也指用于存储文件的磁盘或分区,或文件系统种类。因此,可以说&我有2个文件系统&意思是他有2个分区,一个存文件,或他用 &扩展文件系统&,意思是文件系统的种类。
或分区和它所包括的文件系统的不同是很重要的。少数程序(包括最有理由的产生文件系统的程序)直接对或分区的原始进行操作;这可能破坏一个存在的文件系统。大部分程序基于文件系统进行操作,在不同种文件系统上不能工作。
一个分区或磁盘在作为文件系统使用前,需要初始化,并将记录写到磁盘上。这个过程就叫建立文件系统。
大部分UNIX文件系统种类具有类似的通用结构,即使细节有些变化。其中心概念是超级块superblock,i节点inode,data block,目录块directory block,和间接块indirection block。超级块包括文件系统的总体信息,比如大小(其准确信息依赖文件系统)。i节点包括除了名字外的一个文件的所有信息,名字与i节点数目一起存在目录中,目录条目包括文件名和文件的i节点数目。i节点包括几个的数目,用于存储文件的数据。i节点中只有少量数的空间,如果需要更多,会动态分配指向数据块的空间。这些动态分配的块是间接块;为了找到,这名字指出它必须先找到间接块的号码。
UNIX文件系统通常允许在文件中产生孔,意思是文件系统假装文件中有一个特殊的位置只有0字节,但没有为这文件的这个位置保留实际的磁盘空间。这对小的经常发生,Linux共享库、一些数据库和其他一些特殊情况。
孔有一定的用处。在笔者的系统中,一个简单的测量工具显示在200MB使用的磁盘空间中,由于孔,节约了大约4MB。在这个系统中,程序相对较少,没有。
文件系统的功能包括:管理和调度文件的存储空间,提供文件的逻辑结构、物理结构和存储方法;实现文件从标识到实际地址的映射,实现文件的控制操作和存取操作,实现文件信息的共享并提供可靠的文件保密和保护措施,提供文件的安全措施。
文件的逻辑结构是依照文件的内容的逻辑关系组织文件结构。文件的逻辑结构可以分为流式文件和记录式文件。
流式文件:文件中的数据是一串字符流,没有结构。
记录文件:由若干逻辑记录组成,每条记录又由相同的数据项组成,数据项的长度可以是确定的,也可以是不确定的。
主要缺陷:数据关联差,数据不一致,冗余性。下面是文件系统的代码,根据这个代码我们可以更好地了解文件系统的工作流程
#include&blockinodesuperblock.h&
//-----------------------
control.open(&control.txt&,ios::in|ios::out|ios::nocreate);
control&&i;
control.close();
if(i!=0)//不为0就初始化
initial();
control.open(&control.txt&,ios::in|ios::out|ios::nocreate);
control.seekp(0);
control&&0;//默认是上次基础上继续下去不用再初始化
control.close();
strcpy(curname,&root&);//当前目录文件名为root
road[0]=0;//当前目录路径(存放从根目录到这里的结点号)
num=1;//最后位road[num-1]为当前目录文件i结点号
cout&&&请登陆系统\n&;
while(!login())//登陆为止
cout&&&wrong!!!\n&;
cout&&&loginsuccess&&&
cout&&&******Welcome&&&auser&&&******&;
readsuper();
getcommand();//命令解析函数
writesuper();
blockinodesuperblock.h
intialloc()//申请一个i结点返回结点号否则返回-1
if(superblock.fiptr&0)
inttemp=superblock.fistack[80-superblock.fiptr];//当前可用
superblock.fistack[80-superblock.fiptr]=-1;
superblock.fiptr--;
//----------------------
voidifree(intindex)//指定一个结点号,回收一个i结点
disk.open(&disk.txt&,ios::in|ios::out|ios::nocreate);//清空结点
disk.seekp(514+64*index+2*(index/8));
disk&&setw(64)&&'';
disk.close();
for(inti=80-superblock.i&80;i++)//结点号找到合适位置插入空闲结点号栈
if(superblock.fistack&index)//小于它的前移一位
superblock.fistack[i-1]=superblock.
else//放在第一个大于它的结点号前面
superblock.fistack[i-1]=
superblock.fiptr++;
//----------------------
/*成组链接法*/
intballoc()//申请一个盘块返回盘块号否则返回-1
inttemp=superblock.fbstack[10-superblock.fbptr];
if(superblock.fbptr==1)//是栈底了==&;是记录盘块了
//是最后记录盘块最后号0(保留作栈底分配不成功)
if(temp==0)
suprblock.fbstack[10-superblock.fbptr]=-1;
superblock.fbptr=0;
//盘块内容读入栈
for(inti=0;i&10;i++)
intid,num=0;
disk.open(&disk.txt&,ios::in|ios::out|ios::nocreate);
//先计算盘块内容个数num(最多10),最后盘块可能不到10个
disk.seekg(514*temp);
for(inti=0;i&10;i++)
disk.seekg(514*temp);//盘块内容读入栈
for(intj=10-j&10;j++)
superblock.fbstack[j]=
superblock.fbptr=
disk.close();
disk.open(&disk.txt&,ios::in|ios::out|ios::nocreate);//清空回收盘块
disk.seekp(514*temp);
disk&&setw(512)&&'';
disk.close();
//盘块使用掉
else//不是记录盘块==&;盘块使用掉
superblock.fbstack[10-superblock.fbptr]=-1;
superblock.fbptr--;
//----------------------
在Win 9X下,FAT16支持的分区最大为2GB。我们知道计算机将信息保存在硬盘上称为“簇”的区域内。使用的簇越小,保存信息的效率就越高。在FAT16的情况下,分区越大簇就相应的要大,存储效率就越低,势必造成的浪费。并且随着和应用的不断提高,FAT16文件系统已不能很好地适应系统的要求。在这种情况下,推出了增强的文件系统FAT32。同FAT16相比,FAT32主要具有以下特点:
同FAT16相比FAT32最大的优点是可以支持的磁盘大小达到32GB,但是不能支持小于512MB的分区。
基于FAT32的Win 2000可以支持分区最大为32GB;而基于 FAT16的Win 2000支持的分区最大为4GB。
由于采用了更小的簇,FAT32文件系统可以更有效率地保存信息。如两个分区大小都为2GB,一个分区采用了FAT16文件系统,另一个分区采用了FAT32文件系统。采用FAT16的分区的簇大小为32KB,而FAT32分区的簇只有4KB的大小。这样FAT32就比FAT16的存储效率要高很多,通常情况下可以提高15%。
FAT32文件系统可以重新定位根目录和使用FAT的备份副本。另外FAT32分区的被包含在一个含有关键数据的结构中,减少了计算机的可能性。
是一个基于安全性的文件系统,是Windows NT所采用的独特的文件系统结构,它是建立在保护文件和目录数据基础上,同时照顾节省存储资源、减少占用量的一种先进的文件系统。使用非常广泛的Windows NT 4.0采用的就是NTFS 4.0文件系统,相信它所带来的强大的系统安全性一定给广大用户留下了深刻的印象。Win 2000采用了更新版本的NTFS文件系统NTFS 5.0,它的推出使得用户不但可以像Win 9X那样方便快捷地操作和管理计算机,同时也可享受到NTFS所带来的系统安全性。
NTFS 5.0的特点主要体现在以下几个方面:
NTFS可以支持的分区(如果采用则称为卷)大小可以达到2TB。而Win 2000中的FAT32支持分区的大小最大为32GB。
NTFS是一个可恢复的文件系统。在上用户很少需要运行磁盘修复程序。NTFS通过使用标准的事物处理日志和恢复技术来保证分区的一致性。发生系统失败事件时,NTFS使用日志文件和检查点信息文件系统的一致性。
NTFS支持对分区、文件夹和文件的压缩。任何基于Windows的应用程序对NTFS分区上的进行读写时不需要事先由其他程序进行,当对文件进行读取时,文件将自动进行解压缩;文件关闭或保存时会自动对文件进行压缩。
NTFS采用了更小的簇,可以更有效率地管理磁盘空间。在Win 2000的FAT32文件系统的情况下,分区大小在2GB~8GB时簇的大小为4KB;分区大小在8GB~16GB时簇的大小为8KB;分区大小在16GB~32GB时,簇的大小则达到了16KB。而Win 2000的NTFS文件系统,当分区的大小在2GB以下时,簇的大小都比相应的FAT32簇小;当分区的大小在2GB以上时(2GB~2TB),簇的大小都为4KB。相比之下,NTFS可以比FAT32更有效地管理磁盘空间,最大限度地避免了磁盘空间的浪费。
在NTFS分区上,可以为共享资源、文件夹以及文件设置访问许可权限。许可的设置包括两方面的内容:一是允许哪些组或用户对文件夹、文件和共享资源进行访问;二是获得访问许可的组或用户可以进行什么级别的访问。访问许可权限的设置不但适用于本地计算机的用户,同样也应用于通过网络的对文件进行访问的网络用户。与FAT32文件系统下对文件夹或文件进行访问相比,安全性要高得多。另外,在采用NTFS格式的Win 2000中,应用可以对文件夹、文件以及对象进行审核,审核结果记录在中,通过安全日志就可以查看哪些组或用户对文件夹、文件或活动目录对象进行了什么级别的操作,从而发现系统可能面临的非法访问,通过采取相应的措施,将这种安全隐患减到最低。这些在FAT32文件系统下,是不能实现的。
在Win 2000的NTFS文件系统下可以进行管理。就是可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。设置后,可以对每一个用户的磁盘使用情况进行跟踪和控制,通过监测可以标识出超过配额报警阈值和配额限制的用户,从而采取相应的措施。管理功能的提供,使得可以方便合理地为用户分配存储资源,避免由于磁盘空间使用的失控可能造成的,提高了系统的安全性。
NTFS使用一个“变更”日志来跟踪所发生的变更。
CDFS是大部分的光盘的文件系统,只有小部分光盘使用其他文件系统。这些文件系统只能在CD-R或CD-RW上读取。(全称Extended File Allocation Table File System,扩展FAT,即扩展)是扩展文件分配表主界面Microsoft在Windows Embeded 5.0以上(包括Windows CE 5.0、6.0、Windows Mobile5、6、6.1)中引入的一种适合于闪存的文件系统,为了解决FAT32等不支持4G及其更大的文件而推出。对于闪存,NTFS文件系统不适合使用,exFAT更为适用。相对FAT文件系统,exFAT有如下好处:
1·增强了台式电脑与移动设备的互操作能力
2·单文件大小最大可达16EB(就是理论值,16×TB,1TB=1024G)
3·簇大小可高达32MB
4·采用了剩余空间分配表,剩余空间分配性能改进
5·同一目录下最大文件数可达65 536个
采用该文件系统的闪存盘不支持Windows Vista ReadyBoost。Windows Vista SP1支持该文件系统。
请注意:exFAT只是一个折中的方案,只为U盘而生。
超过4GB的U盘格式化时默认是NTFS分区,但是这种格式是很伤U盘的,因为NTFS分区是采用“日志式”的文件系统,需要记录详细的读写操作,肯定会比较伤闪盘芯片,因为要不断读写。
下面请看exFAT、NTFS、FAT分区的比较
Win 95 OSR2之后
Win2000之后
Win CE 6/Vista SP1
最大单一文件
2bytes-4GB
受最大分割容量
16EB(理论值)
最大格式化容量
16EB(理论值)
至少可以大于1000
[1]1.支持非常大的文件和存储设备
对性能的改进支持
对未来的创新的可扩展性功能的支持
RAW文件系统是一种磁盘未经处理或者未经格式化产生的的文件系统,一般来说有这几种可能造成正常文件系统变成RAW文件系统:
●没有格式化。
●格式化中途取消操作。
●硬盘出现。
●硬盘出现不可预知的错误。
●病毒所致。
解决RAW文件系统的最快的方法是立即格式化,并且使用全盘杀毒。当然,如果文件很重要的话可以考虑用磁盘先救出数据,然后再格式化和杀毒,或者在网上查找一些有关于“raw文件系统恢复”的内容。Ext是 GNU/Linux 系统中标准的文件系统,其特点为存取文件的性能极好,对于中小型的文件更显示出优势,这主要得利于其簇快取层的优良设计。
其单一文件大小与文件系统本身的容量上限与文件系统本身的簇大小有关,在一般常见的 x86中,簇最大为 4KB,则单一文件大小上限为 2048GB,而文件系统的容量上限为 16384GB。
但由于目前核心 2.4 所能使用的单一分割区最大只有 2048GB,实际上能使用的文件系统最多也只有 2048GB。
至于文件系统,它属于一种日志文件系统,是对系统的扩展。它兼容,并且从转换成并不复杂。Ext3是一种,是对ext2系统的扩展,它兼容。的优越性在于:由于文件系统都有快取层参与运作,如不使用时必须将文件系统卸下,以便将快取层的资料写回磁盘中。因此每当系统要关机时,必须将其所有的文件系统全部shutdown后才能进行关机。
如果在文件系统尚未shutdown前就关机 (如停电) 时,下次重开机后会造成文件系统的资料不一致,故这时必须做文件系统的重整工作,将不一致与错误的地方修复。然而,此一重整的工作是相当耗时的,特别是容量大的文件系统,而且也不能百分之百保证所有的资料都不会流失。
为了克服此问题,使用所谓‘(Journal File System) ’。此类文件系统最大的特色是,它会将整个的写入动作完整记录在磁盘的某个区域上,以便有需要时可以回溯追踪。
由于资料的写入动作包含许多的细节,像是改变文件标头资料、搜寻磁盘可写入空间、一个个写入资料区段等等,每一个细节进行到一半若被中断,就会造成文件系统的不一致,因而需要重整。
然而,在中,由于详细纪录了每个细节,故当在某个过程中被中断时,系统可以根据这些记录直接回溯并重整被中断的部分,而不必花时间去检查其他的部分,故重整的工作速度相当快,几乎不需要花时间。Linux kernel 自 2.6.28 开始正式支持新的文件系统 Ext4。Ext4 是 Ext3 的改进版,修改了 Ext3 中部分重要的,而不仅仅像 Ext3 对 Ext2 那样,只是增加了一个日志功能而已。Ext4 可以提供更佳的性能和可靠性,还有更为丰富的功能:
与 Ext3 兼容。执行若干条命令,就能从 Ext3 在线迁移到,而无须重新格式化或重新。原有 Ext3照样保留,作用于新数据,当然,整个文件系统因此也就获得了 Ext4 所支持的更大。
更大的文件系统和更大的文件。较之 Ext3 目前所支持的最大 16TB 文件系统和最大 2TB 文件,分别支持 1EB(1,048,576TB, 1EB=1024PB, 1PB=1024TB)的文件系统,以及 16TB 的文件。
无限数量的子目录。Ext3 目前只支持 32,000 个子目录,而支持无限数量的子目录。
Extents。Ext3 采用间接块映射,当操作大文件时,效率极其低下。比如一个 100MB 大小的文件,在 Ext3 中要建立 25,600 个(每个数据块大小为 4KB)的映射表。而引入了现代文件系统中流行的 extents 概念,每个 extent 为一组连续的,上述文件则表示为“该文件数据保存在接下来的 25,600 个数据块中”,提高了不少效率。
多块分配。当写入数据到 Ext3 文件系统中时,Ext3 的分配器每次只能分配一个 4KB 的块,写一个 100MB 文件就要调用 25,600 次数据块分配器,而的多块分配器“multiblock allocator”(mballoc) 支持一次调用分配多个数据块。
延迟分配。Ext3 的分配策略是尽快分配,而和其它现代文件的策略是尽可能地延迟分配,直到文件在 cache 中写完才开始分配数据块并写入磁盘,这样就能优化整个文件的数据块分配,与前两种特性搭配起来可以显著提升性能。
快速 fsck。以前执行 fsck 第一步就会很慢,因为它要检查所有的 inode,现在给每个组的 inode 表中都添加了一份未使用 inode 的列表,今后 fsck Ext4 文件系统就可以跳过它们而只去检查那些在用的 inode 了。
日志校验。日志是最常用的部分,也极易导致磁盘硬件故障,而从损坏的日志中恢复数据会导致更多的数据损坏。的日志校验功能可以很方便地判断日志数据是否损坏,而且它将 Ext3 的两阶段日志机制合并成一个阶段,在增加安全性的同时提高了性能。
“无日志”(No Journaling)模式。日志总归有一些开销,允许关闭日志,以便某些有特殊需求的用户可以借此提升性能。
在线碎片整理。尽管延迟分配、多块分配和 extents 能有效减少文件系统碎片,但碎片还是不可避免会产生。支持在线碎片整理,并将提供 e4defrag 工具进行个别文件或整个文件系统的碎片整理。
inode 相关特性。支持更大的 inode,较之 Ext3 默认的 inode 大小 128 字节,Ext4 为了在 inode 中容纳更多的扩展属性(如纳秒或 inode 版本),默认 inode 大小为 256 字节。还支持快速扩展属性(fast extended attributes)和 inode 保留(inodes reservation)。
持久预分配(Persistent preallocation)。P2P 软件为了保证下载文件有足够的空间存放,常常会预先创建一个与所下载文件大小相同的空文件,以免未来的数小时或数天之内磁盘空间不足导致下载失败。在文件系统层面实现了持久预分配并提供相应的 API(libc 中的 posix_fallocate()),比自己实现更有效率。
默认启用 barrier。磁盘上配有内部缓存,以便重新调整批量数据的写操作顺序,优化写入性能,因此文件系统必须在日志数据写入磁盘之后才能写 commit 记录,若 commit 记录写入在先,而日志有可能损坏,那么就会影响。默认启用 barrier,只有当 barrier 之前的数据全部写入磁盘,才能写 barrier 之后的数据。(可通过 &mount -o barrier=0& 命令禁用该特性。)
Btrfs(通常念成Butter FS),是由于宣布并进行中的copy-on-write文件系统。目标是取代目前的文件系统,改善ext3的限制,特别是单个文件的大小,总文件系统大小或文件检查和加入目前ext3未支持的功能,像是 writable snapshots、snapshots of snapshots、内建(RAID)支持,以及 subvolumes。Btrfs 也宣称专注在“容错、修复及易于管理”。ZFS源自于为开发的文件系统。ZFS是一个具有高存储容量、文件系统与概念整合、崭新的磁盘的轻量级文件系统,同时也是一个便捷的管理系统。ZFS是一个使用协议条款授权的项目。1 HFS文件系统概念
分层文件系统(Hierarchical File System,HFS)是一种由苹果电脑开发,并使用在Mac OS上的文件系统。最初被设计用于和硬盘,同时也可以在在只读媒体如CD-ROM上见到。
2 HFS文件系统开发过程
HFS首次出现在日,作为Macintosh电脑上新的文件系统。它取代只用于早期Mac型号所使用的平面文件系统Macintosh File System(MFS)。因为Macintosh电脑所产生的数据,比其它通常的文件系统,如DOS使用的FAT或原始Unix文件系统所允许存储的数据更多。苹果电脑开发了一种新式更适用的文件系统,而不是采用现有的规格。例如,HFS允许文件名最多有31个字符的长度,支持metadata和双分支(每个文件的数据和资源支分开存储)文件。
尽管HFS象其它大多数文件系统一样被视为专有的格式,因为只有它为大多数最新的提供了很好的通用解决方法以存取HFS格式磁盘。
3 构成方式
分层文件系统把一个卷分为许多512字节的“逻辑块”。这些逻辑块被编组为“分配块”,这些分配块可以根据卷的尺寸包含一个或多个逻辑块。HFS对地址分配块使用16位数值,分配块的最高限制数量是65536。
组成一个HFS卷需要下面的五个结构:
卷的逻辑块0和1是启动块,它包含了系统启动信息。例如,启动时载入的系统名称和壳(通常是Finder)文件。
逻辑块2包含主目录块(Master Directory Block,简称MDB)。
逻辑块3是卷位图(Volume Bitmap)的启动块,它追踪分配块使用状态。
总目录文件(Catalog File)是一个包含所有文件的记录和储存在卷中目录的B*-tree。
扩展溢出文件(Extent Overflow File)是当最初总目录文件中三个扩展占用后,另外一个包含额外扩展记录的分配块对应信息的B*-tree。
在1998年,苹果电脑发布了HFS+,其改善了HFS对磁盘空间的地址定位效率低下,并加入了其它的改进。
HFS+文件系统相对于HFS文件系统的特点  (1)采用32bit 记录分配块数量  HFS 和HFS+文件系统对磁盘卷采用分块进行分配,将一个卷分成等大的分配块。HFS文件系统采用16bit 来记录分配块的数量,最多只能描述216个分配块。而对于HFS+文件系统,采用32bit 来记录分配块的数量,最多能描述232 个分配块。对于Mac 系统上的非空数据,都必须占用整数个分配块,也就是说,即使一个数据只有一个字节,也要占用一个分配块。而HFS+文件系统增大了每个卷分配块的数量,可以使分配块的单位空间更小,从而达到减少存储空间浪费的目的。  (2)目录树节点大小增加到4KB  HFS 文件系统的目录树节点大小为512 字节,由于HFS+文件系统目录树索引节点需要存储附加指针和节点描述符两个关键值,HFS+文件系统的目录树节点大小增加到4KB。  (3)单一文件大小得到提升  HFS 文件系统的单一文件大小上限为2^31bit,而HFS+文件系统的单一文件大小最大可达到2^63bit。  (4)支持长文件名  HFS 文件系统对文件名最长支持到31个字符,而HFS+文件系统对文件名采用Unicode编码,最长达到255个字符。ReiserFS,是一种文件系统格式,作者是Hans Reiser及其团队Namesys,日他将ReiserFS文件系统在互联网上公布。从2.4.1版本开始支持ReiserFS。
ReiserFS 的命名是源自作者Hans Reiser的姓氏,这个日志型文件系统发展比/3 晚近许多。在技术上使用的是 B*-tree 为基础的文件系统,其特色为能很有效率地处理大型文件到众多小文件都可以用很高的效率处理;实务上 ReiserFS 在处理文件小于 1k 小文件时,甚至效率可以比快约10倍。
ReiserFS原先是Novell公司的SuSE Linux Enterprise采用的缺省文件系统,直到日其宣称将在未来的版本改采为缺省。Novell公司否认这与Hans Reiser被控杀妻案有任何关系。JFS( JOURNAL FILE SYSTEM),一种字节级文件系统,借鉴了系统的技术,以日志的形式记录文件的变化。JFS通过结构而不是数据本身的变化来保证数据的完整性。这种方式可以确保在任何时刻都能维护数据的可访问性。
该文件系统主要是为满足服务器(从单处理器系统到高级多处理器和群集系统)的高吞吐量和可靠性需求而设计、开发的。JFS文件系统是为面向事务的高性能系统而开发的。在IBM的上,JFS已经过较长时间的测试,结果表明它是可靠、快速和容易使用的。2000年2月,IBM宣布在一个开放资源许可证下移植的JFS文件系统。JFS也是一个有大量用户安装使用的企业级文件系统,具有可伸缩性和健壮性。与非日志文件系统相比,它的突出优点是能力,JFS能够在几秒或几分钟内就把文件系统恢复到一致状态。虽然JFS主要是为满足服务器(从单处理器系统到高级多处理器和群集系统)的高吞吐量和可靠性需求而设计的,但还可以用于想得到高性能和可靠性的客户机配置,因为在时JFS能提供快速文件系统重启时间,所以它是因特网的关键技术。使用数据库处理技术,JFS能在几秒或几分钟之内把文件系统恢复到一致状态。而在非日志文件系统中,文件恢复可能花费几小时或几天。
JFS的缺点是,使用JFS日志文件系统性能上会有一定损失,占用的比率也偏高,因为当它保存一个日志时,系统需要写许多数据。VMware Virtual Machine File System (VMFS )是一种高性能的群集文件系统,它使的应用超出了单个系统的限制。VMFS的设计、构建和优化针对环境,可让多个共同访问一个整合的群集式,从而显著提高了资源利用率。VMFS 是跨越多个服务器实现虚拟化的基础,它可启用VMware VmotionTM 、Distributed Resource Scheduler 和 VMware High Availability 等各种服务。VMFS 还能显著减少管理开销,它提供了一种高效的虚拟化管理层,特别适合大型企业。采用 VMFS 可实现,使管理员轻松地从更高效率和存储利用率中直接获益。XFS 是 Silicon Graphics,Inc. 于 90 年代初开发的文件系统。它至今仍作为 SGI 基于 IRIX 的产品(从到)的底层文件系统来使用。现在,XFS 也可以用于 Linux。XFS 的 Linux 版的到来是激动人心的,首先因为它为 Linux 社区提供了一种健壮的、优秀的以及功能丰富的文件系统,并且这种文件系统所具有的可伸缩性能够满足最苛刻的存储需求。UFS文件系统:基于BSD高速文件系统的传统UNIX文件系统,是Solaris的默认文件系统。默认启用UFS 日志记录功能。在早期的Solaris 版本中,UFS 日志记录功能只能手动启用。Solaris 10在运行64位Solaris的系统上支持多TB UFS文件系统。以前,UFS文件系统在64位系统和32位系统上的大小仅限于约1 TB(Tbyte)。现在,所有UFS文件系统命令和已更新为支持多TB UFS文件系统。
UFS1文件系统是OpenBSD和Solaris的默认文件系统。UFS1也曾是NetBSD和FreeBSD的默认文件系统,但NetBSD2.0和FreeBSD5.0以后版本开始使用UFS2做默认的文件系统。UFS2增加了对大文件和大容量的支持和一些先进的特性。目前似乎还只有FreeBSD和NetBSD支持UFS2。Apple OS X和Linux也支持UFS1,但并不做为它们的默认文件系统。VeritasFileSystem(VxFS)是首个商业日志记录文件系统。通过日志记录功能,元数据更改首先写入到日志,然后再写入到磁盘。由于无需在多处写入更改,且元数据是异步写入的,因此吞吐量的速度较快。VxFS也是基于扩展区的意向日志记录文件系统。VxFS设计用于要求高性能和高可用性,并且可以处理大量数据的操作环境。ReFS(Resilient File System,弹性文件系统) 是在Windows 8.1和Server(R) 2012中新引入的一个文件系统。ReFS是与NTFS大部分兼容的,其主要目的 是为了保持较高的稳定性,可以自动验证数据是否损坏,并尽力恢复数据。
ReFS 的关键功能如下:
·带有校验和的元数据完整性
·提供可选用户数据完整性的完整性流。
·通过写入时分配事务模型实现可靠的磁盘更新(也称为写入时复制)
·支持超大规模的卷、文件和目录
·存储池和虚拟化使得文件系统可建立并易于管理
·通过数据条带化提高性能(带宽可管理)并通过备份提高容错性
·通过磁盘扫描防止潜在的磁盘错误
·借助“数据打捞”实现损坏还原,以便在任何情况下尽可能提高卷的可用性
·跨计算机共享存储池,以提供额外的容错性和负载平衡
新手上路我有疑问投诉建议参考资料 查看

我要回帖

更多关于 .zip是什么文件 的文章

 

随机推荐