À´Ô´£ºhttp://hi.baidu.com/augustinezl
ÎÒ¶ÔUbuntu9.04ÖÐмÓÈëµÄEXt4Îļþϵͳһֱ·Ç³£ºÃÆæ£¬½ñÌìûʾÍÕÒÁËÕÒÏà¹ØµÄ×ÊÁϸú´ó¼Ò·ÖÏíһϣ¬EXT4ºÍEXT3Ïà±È¾ßÓÐÄÄЩ¸Ä½ø¡£
Ext4 ÊÇ Ext3 µÄ¸Ä½ø°æ£¬ÐÞ¸ÄÁË Ext3 Öв¿·ÖÖØÒªµÄÊý¾Ý½á¹¹£¬¶ø²»½ö½öÏñ Ext3 ¶Ô Ext2 ÄÇÑù£¬Ö»ÊÇÔö¼ÓÁËÒ»¸öÈÕÖ¾¹¦ÄܶøÒÑ¡£Ext4 ¿ÉÒÔÌṩ¸ü¼ÑµÄÐÔÄܺͿɿ¿ÐÔ£¬»¹ÓиüΪ·á¸»µÄ¹¦ÄÜ¡£
Linux kernel ×Ô 2.6.28 ¿ªÊ¼Õýʽ֧³ÖеÄÎļþϵͳ Ext4¡£ Ext4 ÊÇ Ext3 µÄ¸Ä½ø°æ£¬ÐÞ¸ÄÁË Ext3 Öв¿·ÖÖØÒªµÄÊý¾Ý½á¹¹£¬¶ø²»½ö½öÏñ Ext3 ¶Ô Ext2 ÄÇÑù£¬Ö»ÊÇÔö¼ÓÁËÒ»¸öÈÕÖ¾¹¦ÄܶøÒÑ¡£Ext4 ¿ÉÒÔÌṩ¸ü¼ÑµÄÐÔÄܺͿɿ¿ÐÔ£¬»¹ÓиüΪ·á¸»µÄ¹¦ÄÜ£º
1. Óë Ext3 ¼æÈÝ¡£Ö´ÐÐÈô¸ÉÌõÃüÁ¾ÍÄÜ´Ó Ext3 ÔÚÏßÇ¨ÒÆµ½ Ext4£¬¶øÎÞÐëÖØÐ¸ñʽ»¯´ÅÅÌ»òÖØÐ°²×°ÏµÍ³¡£ÔÓÐ Ext3 Êý¾Ý½á¹¹ÕÕÑù±£Áô£¬Ext4 ×÷ÓÃÓÚÐÂÊý¾Ý£¬µ±È»£¬Õû¸öÎļþϵͳÒò´ËÒ²¾Í»ñµÃÁË Ext4 ËùÖ§³ÖµÄ¸ü´óÈÝÁ¿¡£
2. ¸ü´óµÄÎļþϵͳºÍ¸ü´óµÄÎļþ¡£½ÏÖ® Ext3 ĿǰËùÖ§³ÖµÄ×î´ó 16TB ÎļþϵͳºÍ×î´ó 2TB Îļþ£¬Ext4 ·Ö±ðÖ§³Ö 1EB£¨1,048,576TB£¬ 1EB=1024PB£¬ 1PB=1024TB£©µÄÎļþϵͳ£¬ÒÔ¼° 16TB µÄÎļþ¡£
3. ÎÞÏÞÊýÁ¿µÄ×ÓĿ¼¡£Ext3 Ŀǰֻ֧³Ö 32,000 ¸ö×ÓĿ¼£¬¶ø Ext4 Ö§³ÖÎÞÏÞÊýÁ¿µÄ×ÓĿ¼¡£
4. Extents¡£Ext3 ²ÉÓüä½Ó¿éÓ³É䣬µ±²Ù×÷´óÎļþʱ£¬Ð§Âʼ«ÆäµÍÏ¡£±ÈÈçÒ»¸ö 100MB ´óСµÄÎļþ£¬ÔÚ Ext3 ÖÐÒª½¨Á¢ 25,600 ¸öÊý¾Ý¿é£¨Ã¿¸öÊý¾Ý¿é´óСΪ 4KB£©µÄÓ³Éä±í¡£¶ø Ext4 ÒýÈëÁËÏÖ´úÎļþϵͳÖÐÁ÷ÐÐµÄ extents ¸ÅÄÿ¸ö extent Ϊһ×éÁ¬ÐøµÄÊý¾Ý¿é£¬ÉÏÊöÎļþÔò±íʾΪ¡°¸ÃÎļþÊý¾Ý±£´æÔÚ½ÓÏÂÀ´µÄ 25,600 ¸öÊý¾Ý¿éÖС±£¬Ìá¸ßÁ˲»ÉÙЧÂÊ¡£
5. ¶à¿é·ÖÅä¡£µ±Ð´ÈëÊý¾Ýµ½ Ext3 ÎļþϵͳÖÐʱ£¬Ext3 µÄÊý¾Ý¿é·ÖÅäÆ÷ÿ´ÎÖ»ÄÜ·ÖÅäÒ»¸ö 4KB µÄ¿é£¬Ð´Ò»¸ö 100MB Îļþ¾ÍÒªµ÷Óà 25,600 ´ÎÊý¾Ý¿é·ÖÅäÆ÷£¬¶ø Ext4 µÄ¶à¿é·ÖÅäÆ÷¡°multiblock allocator¡±£¨mballoc£© Ö§³ÖÒ»´Îµ÷Ó÷ÖÅä¶à¸öÊý¾Ý¿é¡£
6. ÑÓ³Ù·ÖÅä¡£Ext3 µÄÊý¾Ý¿é·ÖÅä²ßÂÔÊǾ¡¿ì·ÖÅ䣬¶ø Ext4 ºÍÆäËüÏÖ´úÎļþ²Ù×÷ϵͳµÄ²ßÂÔÊǾ¡¿ÉÄܵØÑÓ³Ù·ÖÅ䣬ֱµ½ÎļþÔÚ cache ÖÐдÍê²Å¿ªÊ¼·ÖÅäÊý¾Ý¿é²¢Ð´Èë´ÅÅÌ£¬ÕâÑù¾ÍÄÜÓÅ»¯Õû¸öÎļþµÄÊý¾Ý¿é·ÖÅ䣬ÓëǰÁ½ÖÖÌØÐÔ´îÅäÆðÀ´¿ÉÒÔÏÔÖøÌáÉýÐÔÄÜ¡£
7. ¿ìËÙ fsck¡£ÒÔǰִÐÐ fsck µÚÒ»²½¾Í»áºÜÂý£¬ÒòΪËüÒª¼ì²éËùÓÐµÄ inode£¬ÏÖÔÚ Ext4 ¸øÃ¿¸ö×éµÄ inode ±íÖж¼Ìí¼ÓÁËÒ»·ÝδʹÓà inode µÄÁÐ±í£¬½ñºó fsck Ext4 Îļþϵͳ¾Í¿ÉÒÔÌø¹ýËüÃǶøÖ»È¥¼ì²éÄÇЩÔÚÓÃµÄ inode ÁË¡£
8. ÈÕ־УÑé¡£ÈÕÖ¾ÊÇ×î³£ÓõIJ¿·Ö£¬Ò²¼«Ò×µ¼Ö´ÅÅÌÓ²¼þ¹ÊÕÏ£¬¶ø´ÓË𻵵ÄÈÕÖ¾Öлָ´Êý¾Ý»áµ¼Ö¸ü¶àµÄÊý¾ÝË𻵡£Ext4 µÄÈÕ־УÑ鹦ÄÜ¿ÉÒԺܷ½±ãµØÅжÏÈÕÖ¾Êý¾ÝÊÇ·ñË𻵣¬¶øÇÒËü½« Ext3 µÄÁ½½×¶ÎÈÕÖ¾»úÖÆºÏ²¢³ÉÒ»¸ö½×¶Î£¬ÔÚÔö¼Ó°²È«ÐÔµÄͬʱÌá¸ßÁËÐÔÄÜ¡£
9. ¡°ÎÞÈÕÖ¾¡±£¨No Journaling£©Ä£Ê½¡£ÈÕÖ¾×ܹéÓÐһЩ¿ªÏú£¬Ext4 ÔÊÐí¹Ø±ÕÈÕÖ¾£¬ÒÔ±ãijЩÓÐÌØÊâÐèÇóµÄÓû§¿ÉÒÔ½è´ËÌáÉýÐÔÄÜ¡£
10. ÔÚÏßË鯬ÕûÀí¡£¾¡¹ÜÑÓ³Ù·ÖÅä¡¢¶à¿é·ÖÅäºÍ extents ÄÜÓÐЧ¼õÉÙÎļþϵͳË鯬£¬µ«Ë鯬»¹ÊDz»¿É±ÜÃâ»á²úÉú¡£Ext4 Ö§³ÖÔÚÏßË鯬ÕûÀí£¬²¢½«Ìṩ e4defrag ¹¤¾ß½øÐиö±ðÎļþ»òÕû¸öÎļþϵͳµÄË鯬ÕûÀí¡£
11. inode Ïà¹ØÌØÐÔ¡£Ext4 Ö§³Ö¸ü´óµÄ inode£¬½ÏÖ® Ext3 ĬÈ쵀 inode ´óС 128 ×Ö½Ú£¬Ext4 ΪÁËÔÚ inode ÖÐÈÝÄɸü¶àµÄÀ©Õ¹ÊôÐÔ£¨ÈçÄÉÃëʱ¼ä´Á»ò inode °æ±¾£©£¬Ä¬ÈÏ inode ´óСΪ 256 ×Ö½Ú¡£Ext4 »¹Ö§³Ö¿ìËÙÀ©Õ¹ÊôÐÔ£¨fast extended attributes£©ºÍ inode ±£Áô£¨inodes reservation£©¡£
12. ³Ö¾ÃÔ¤·ÖÅ䣨Persistent preallocation£©¡£P2P Èí¼þΪÁ˱£Ö¤ÏÂÔØÎļþÓÐ×ã¹»µÄ¿Õ¼ä´æ·Å£¬³£³£»áÔ¤ÏÈ´´½¨Ò»¸öÓëËùÏÂÔØÎļþ´óСÏàͬµÄ¿ÕÎļþ£¬ÒÔÃâδÀ´µÄÊýСʱ»òÊýÌìÖ®ÄÚ´ÅÅ̿ռ䲻×ãµ¼ÖÂÏÂÔØÊ§°Ü¡£Ext4 ÔÚÎļþϵͳ²ãÃæÊµÏÖÁ˳־ÃÔ¤·ÖÅä²¢ÌṩÏàÓ¦µÄ API£¨libc ÖÐµÄ posix_fallocate()£©£¬±ÈÓ¦ÓÃÈí¼þ×Ô¼ºÊµÏÖ¸üÓÐЧÂÊ¡£
13. ĬÈÏÆôÓà barrier¡£´ÅÅÌÉÏÅäÓÐÄÚ²¿»º´æ£¬ÒÔ±ãÖØÐµ÷ÕûÅúÁ¿Êý¾ÝµÄд²Ù×÷˳Ðò£¬ÓÅ»¯Ð´ÈëÐÔÄÜ£¬Òò´ËÎļþϵͳ±ØÐëÔÚÈÕÖ¾Êý¾ÝдÈë´ÅÅÌÖ®ºó²ÅÄÜд commit ¼Ç¼£¬Èô commit ¼Ç¼дÈëÔÚÏÈ£¬¶øÈÕÖ¾ÓпÉÄÜË𻵣¬ÄÇô¾Í»áÓ°ÏìÊý¾ÝÍêÕûÐÔ¡£Ext4 ĬÈÏÆôÓà barrier£¬Ö»Óе± barrier ֮ǰµÄÊý¾ÝÈ«²¿Ð´Èë´ÅÅÌ£¬²ÅÄÜд barrier Ö®ºóµÄÊý¾Ý¡££¨¿Éͨ¹ý "mount -o barrier=0" ÃüÁî½ûÓøÃÌØÐÔ¡££©
Ext4 Ëæ Linux kernel 2.6.28 Õýʽ·¢²¼ÒÑÓÐÊýÖÜ£¬Ò»Ö±¿àÓÚÕÒ²»µ½²âÊÔÓõĴÅÅÌ£¬ÕýÇÉÄêǰ Intel ËÍÀ´¼¸¿é SSD ²âÊÔÑùÆ·£¬ÕâÁ½Ìì¾Í˳´ø°Ñ SSD Ò²²âÁË¡£²âÊÔËùʹÓÃµÄ Linux Äں˰汾Ϊ 2.6.28.2£¬²âÊÔ¹¤¾ßΪ IOzone 3.318¡£
IOzone ²âÊÔÃüÁîΪ£º
time /opt/iozone/bin/iozone -a -s 4G -q 256 -y 4 >|/root/ext4-iozone-stdout.txt
ÉÏÊöÃüÁîµÄ˵Ã÷ÈçÏ£º
Auto Mode
File size set to 4194304 KB
Using Maximum Record Size 256 KB
Using Minimum Record Size 4 KB
Command line used: /opt/iozone/bin/iozone -a -s 4G -q 256 -y 4
Output is in Kbytes/sec
Time Resolution = 0.000001 seconds.
Processor cache size set to 1024 Kbytes.
Processor cache line size set to 32 bytes.
File stride size set to 17 * record size.
²âÊÔ½á¹û³ýÁ˱íÃ÷ Intel SSD µÄ¶ÁдËÙ¶È¿ìµÃÁîÈËÕ¦ÉàÖ®Í⣬»¹¿ÉÒÔ˵Ã÷ Ext4 µÄ¸÷·½ÃæÐÔÄܶ¼³¬¹ýÁËÉÏÒ»´ú Ext3£¬ÉõÖÁÔÚ´ó¶àÊýÇé¿öÏ£¬±ÈûÓÐÈÕÖ¾¹¦ÄÜµÄ Ext2 »¹Òª¿ì³ö²»ÉÙ¡£
´ó±¦ ÓÚ 2009-02-19 22:05:05·¢±í:
»¹Ð´Â©ÁËÒ»Ï¸ú×ÙдÈë¼¼Êõ(ºÇºÇ£¬ÎÒÊÇÕâô·ÒëµÄ)£¬¾ÍÊǾ¡Á¿½«Í¬Ò»Îļþ(¾ÍËãÖ®ºó½øÐÐÁËÐÞ¸Ä)Á¬ÐøµØÐ´Èëͬһ¿ÕÏдæÖü¿Õ¼äÖÐ
smqt ÓÚ 2009-02-19 17:19:49·¢±í:
ext4ÊÇÒ»¸ö¹ý¶ÈÐÔµÄÎļþϵͳ£¬ÒÔºóÃæÏòÆÕͨÓû§µÄÎļþϵͳÊÇbtrfs(ʵÏÖzfsµÄ´ó²¿·Ö¹¦ÄÜ£¬¶ÔÆÕͨÓû§×ã¹»ÁË£©£¬·þÎñÆ÷µÄÓÐtux3ºÍhummerfs(¾ùÔÚ¿ª·¢ÖУ¬ºÅ³Æ¿ÉÒÔÈ«Ãæ³¬Ô½zfs)
LinuxSpace ÓÚ 2009-02-17 09:25:43·¢±í:
µÈа汾³öÀ´ºóÎÒÂíÉÏ»»³ÉEXT4
cwqing1973 ÓÚ 2009-02-16 14:51:24·¢±í:
дµÃ²»´í°¡¡£ÓÐÉî¶È£¡Ò²ºÜ͸ÇÐ
tlze ÓÚ 2009-02-12 21:04:23·¢±í:
ºÜºÃµÄ¼¼ÊõÎÄÕ£¬Êղء£