1992.12.29 SUBJECT: Filesystem (block)°ú Fragmentation CONTENTS: 0. Filesystem°ú Disk Drive 1. Filesystem block¿¡ ´ëÇÏ¿© 2. Fragmentation¿¡ ´ëÇÏ¿© 1) BSDÀÇ Fragmentation Control 2) System VÀÇ Fragmentation Control 3. Âü°í ÀÚ·á DESCRIPTION: 0. Filesystem°ú Disk Drive * UNIX ½Ã½ºÅÛ¿¡¼ Á¤±Ô ÈÀÏÀ̳ª µð·ºÅ丮´Â tape drive³ª disk drive¿Í °°Àº block device(ºí·° ÀåÄ¡)¿¡ ÀúÀåÇÑ´Ù. µÎ ÀåÄ¡°£ÀÇ Á¢±Ù ½Ã°£ Â÷ÀÌ·Î ÀÎÇÏ¿©, UNIX ½Ã½ºÅÛÀ» ¼³Ä¡ÇÑ °÷ Áß filesystemÀ» À§ÇÏ¿© tape drive¸¦ »ç¿ëÇÏ´Â °÷Àº Àü¹«ÇÏ´Ù. * ½Ã½ºÅÛÀº ¿©·¯°³ÀÇ ¹°¸®Àû disk¸¦ °¡Áö¸ç °¢ disk´Â Çϳª ÀÌ»óÀÇ filesystemÀ» °®´Â´Ù. /(root), /usr, /export, /home µîÀÇ filesystemÀ¸·Î ÇϳªÀÇ disk¸¦ ºÐ¸®ÇÒ ¼ö ÀÖ´Â °ÍÀÌ´Ù. disk¸¦ ¸î °³ÀÇ filesystemÀ¸·Î ºÐÇÒÇÏ´Â °ÍÀº °ü¸®ÀÚ·Î ÇÏ¿©±Ý ±×°÷¿¡ ÀúÀåµÈ µ¥ÀÌÅÍ °ü¸®¸¦ ¿ëÀÌÇÏ°Ô ÇØ ÁØ´Ù. * KernelÀº ³í¸®Àû ¼öÁØ¿¡¼´Â disk°¡ ¾Æ´Ï¶ó filesystemÀ» ´Ù·ç¸ç, °¢ filesystemÀ» ³í¸®ÀûÀÎ ÀåÄ¡¹øÈ£·Î ½Äº°µÇ´Â ÇϳªÀÇ ³í¸®Àû ÀåÄ¡·Î Ãë±ÞÇÑ´Ù. ³í¸®Àû ÀåÄ¡(filesystem)ÀÇ ÁÖ¼Ò¸¦ ¹°¸®Àû ÀåÄ¡(disk)ÀÇ ÁÖ¼Ò·Î º¯È¯ÇÏ´Â °ÍÀº disk driver¿¡ ÀÇÇØ ÇàÇØÁø´Ù. 1. Filesystem block¿¡ ´ëÇÏ¿© - "filesystem block"À̶õ filesystemÀÌ disk¿¡ ¾ðÁ¦´øÁö ÀÚµ¿ÀûÀ¸·Î ÇÒ´çÇÒ ¼ö ÀÖ´Â µ¥ÀÌŸÀÇ ´ÜÀ§(unit)ÀÌ´Ù. - filesystemÀº ³í¸®ÀûÀÎ blockÀÇ ¿¬¼ÓÀ¸·Î ±¸¼ºµÈ´Ù. °¢ blockÀº ½Ã½ºÅÛÀÇ ±¸Çö¿¡ µû¶ó¼ 512, 1024, 2048 ... µî 512ÀÇ ¹è¼öÀÇ byte¼ö¸¦ °¡Áø´Ù. original UNIX´Â 512 byteÀÇ "filesystem block"À» °¡Á³´Ù. System V¿¡¼´Â 512, 1024, 2048 byteÀÇ block size¸¦ Áö¿øÇÑ´Ù. BSD¿¡¼´Â 4, 8, 16, 32 KÀÇ block size¸¦ Áö¿øÇÑ´Ù. SunOSÀÇ °æ¿ì´Â 8K(8192 byte)¸¦ ÇÑ "filesystem block"À¸·Î »ç¿ëÇÑ´Ù. - ³í¸®ÀûÀÎ blockÀÇ Å©±â´Â ÇϳªÀÇ filesystem ³»¿¡¼´Â µ¿ÀÏÇÏÁö¸¸, ÇÑ ½Ã½ºÅÛ ±¸¼º ³»ÀÇ ´Ù¸¥ filesystemµé °£¿¡´Â ´Ù¸¦ ¼öµµ ÀÖ´Ù. - Å« ³í¸®Àû block »ç¿ëÀÇ "ÀåÁ¡" : disk¿Í memory »çÀÌÀÇ À¯È¿ µ¥ÀÌŸ Àü¼Û ¼Óµµ¸¦ Áõ°¡½ÃŲ´Ù. ¿Ö³Ä¸é ÇÑ ¹øÀÇ disk ÀÛµ¿¿¡ ÀÇÇÏ¿© ¸¹Àº µ¥ÀÌŸ°¡ Àü¼ÛµÉ ¼ö ÀÖ¾î¼ ½Ã°£À» ¸¹ÀÌ ¼Ò¸ðÇÏ´Â ÀÛ¾÷À» ÁÙÀÏ ¼ö Àֱ⠶§¹®ÀÌ´Ù. ÇÑ ¹øÀÇ Àб⠵¿ÀÛ¿¡ ÀÇÇÏ¿© 1K byteÀÇ µ¥ÀÌŸ¸¦ Àü¼ÛÇÑ´Ù¸é, 512 byte¸¦ Àü¼ÛÇÏ´Â °Íº¸´Ù µÎ ¹è°¡ ºü¸¥ °ÍÀÌ´Ù. - Å« ³í¸®Àû block »ç¿ëÀÇ "´ÜÁ¡" : À¯È¿ ÀúÀå ¿ë·®ÀÌ ¶³¾îÁú ¼ö ÀÖ´Ù. ÇÑ ÈÀÏÀÇ Å©±â°¡ "filesystem block"ÀÇ Å©±â¿¡ ¹ÌÄ¡Áö ¸øÇÏ´Â °æ¿ì, block ³»ÀÇ ³²Àº ºÎºÐÀº ¾µµ¥ ¾øÀÌ ³¶ºñµÇ´Â °ÍÀÌ´Ù. À̸¦ fragment¶ó ÇÑ´Ù. ½ÇÁ¦·Î UCBÀÇ ÇÑ ¿¬±¸¸¦ º¸¸é, 4096 byteÀÇ "filesystem block"¸¦ »ç¿ëÇÏ´Â °æ¿ì fileµéÀÌ blockµéÀ» full·Î ä¿ìÁö ¸øÇØ ³¶ºñµÇ´Â disk space°¡ Àüü diskÀÇ 45%¿¡ ´ÞÇÑ´Ù°í ÇÑ´Ù. 8192 byte¸¦ "filesystem block"À¸·Î »ç¿ëÇÏ´Â SunOS³ª ±× ¿Ü BSD °è¿ÀÇ °æ¿ì ÀÌ·¯ÇÑ ¹®Á¦¸¦ fragmentation ±â¹ýÀ¸·Î ÇØ°áÇÏ°í ÀÖ´Ù. 2. Fragmentation¿¡ ´ëÇÏ¿© 1) BSDÀÇ Fragmentation Control * BSDÀÇ filesystemÀº fragmentation ±â¹ýÀ» ÅëÇÏ¿© disk fragment·Î ÀÎÇÑ disk ³¶ºñ¸¦ ¸·µµ·Ï ¼³°èµÇ¾î ÀÖ´Ù. * SunOSÀÇ fragmentationÀ» »ìÆì º¸¸é, 8192 byteÀÇ blockÀ» 1024 byte sizeÀÎ 8 °³ÀÇ fragmentµé·Î ºÐÇÒÇÑ´Ù. file size°¡ ´Ã¾î³ª »õ·Î¿î space°¡ ÇÊ¿äÇÒ ¶§, Ãß°¡ÀÇ block±îÁö ÇÊ¿ä ¾øÀ¸¸é ÀûÀýÇÑ °¹ ¼öÀÇ fragment¸¸ÀÌ ÇÒ´çµÈ´Ù. ¶Ç µÎ °³ÀÇ fileÀÌ ¿¹¸¦ µé¾î °¢°¢ 4°³, 3°³ÀÇ fragmentµéÀ» Â÷ÁöÇϸç ÇÑ block¿¡ °øÁ¸ÇÏ°í ÀÖ´Ù°¡ ¾î´À ÇÑ fileÀÇ Å©±â°¡ ´Ã¾î³ª °øÁ¸ÇÒ ¼ö ¾ø°Ô µÇ¸é Å©±â°¡ Ä¿Áö´Â fileÀ» ´Ù¸¥ blockÀ¸·Î ¿Å°Ü ¹ö¸°´Ù. ±×·¯¸é µ¿ÀÏ fileÀÌ ¾î´À ÇÑ block¿¡¸¸ fragment¸¦ ¹ß»ý½ÃÅ°Áö ¿©·¯ block¿¡ fragment¸¦ ¸¸µéÁö´Â ¾Ê´Â´Ù. Fragment ¡é +---+---+---+---+---+---+---+---+ Block 1 | A | A | A | A |¡á | B | B | B | +---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+ Block 1 |¡á |¡á |¡á |¡á |¡á | B | B | B | +---+---+---+---+---+---+---+---+ ¡é ¡é ¡é ¡é ¡é +---+---+---+---+---+---+---+---+ Block 2 | A | A | A | A | A | A |¡á |¡á | +---+---+---+---+---+---+---+---+ * ¶ÇÇÑ BSD filesystemÀÇ ¾Ë°í¸®ÁòÀº filesystemÀÌ full µÇ¸é free blockÀ» ¹ß°ßÇϱâ À§ÇØ ±Ø´ÜÀûÀ¸·Î ´À·ÁÁö°Ô µÇ´Âµ¥, À̸¦ ¹æÁöÇϱâ À§ÇØ °¢ filesystem¿¡´Â free space¸¦ reserveÇÒ ¼ö ÀÖµµ·Ï ÇÏ¿´´Ù. minimum free space´Â 10 % ÀÌ´Ù. ½ÇÁ¦·Î "df" command¸¦ »ç¿ëÇØ º¸¸é ½ÇÁ¦ disk Å©±â¿¡ ºñÇØ filesystemÀÇ Å©±â°¡ ÀÛÀ½À» °è»êÇÒ ¼ö ÀÖ´Ù. * ÀÌ reserved free space´Â "newfs" ³ª "tunefs"ÀÇ "-m" optionÀ¸·Î Á¶ÀýÀÌ °¡´ÉÇÏ´Ù. # newfs -m 12 /dev/rsd0g À§ 12´Â reserveµÉ free space°¡ 12 percent¶ó´Â ÀǹÌÀÌ´Ù. 2) System VÀÇ Fragmentation Control * System V filesystemÀÇ °¡Àå Å« ¹®Á¦Á¡Àº fragmentationÀÇ Ãë¾à¼º¿¡ ÀÖ´Ù. ½Ã°£ÀÌ Áö³²¿¡ µû¶ó ÇÑ fileÀ» ¿¬¼ÓµÈ block¿¡ ÇÒ´çÇÒ ¼ö°¡ ¾ø°Ô µÈ´Ù. '»ç¿ëÇÏÁö ¾ÊÀº disk block'ÀÎ free blockÀº ¿©±â Àú±â¿¡ ÈðÆ®·¯Áö°Ô µÈ´Ù. * System VÀÇ fsck´Â "-S" optionÀ» »ç¿ëÇÏ¿© disk fragment¸¦ ÃÖ¼ÒÈÇϵµ·Ï free list¸¦ ÀçÁ¤ºñÇÒ ¼ö´Â ÀÖ´Ù. ±×·¯³ª free list¸¦ ÃÖ¼ÒÈÇÏ¿© fragmentationÀ» ÁÙÀÌ´Â ¹æ¹ýÀº µµ¿òÀº µÇÁö¸¸ ±×¸® Å« È¿°ú¸¦ º¸´Â °ÍÀº ¾Æ´Ï´Ù. ÀÌ¹Ì ¹ß»ýÇÑ fragmentationÀº ¾î¶»°Ô ÇÒ ¼ö ¾ø±â ¶§¹®ÀÌ´Ù. fragmentationÀ» ¿Ïº®ÇÏ°Ô Á¦°ÅÇÏ´Â ¹æ¹ýÀº °íÅ뽺·´Áö¸¸ filesystemÀ» backup¹Þ°í "mkfs"·Î »õ·Î¿î filesystemÀ» ¸¸µé¾î backup¹ÞÀº °ÍÀ» restoreÇÏ´Â °ÍÀÌ´Ù. ±×·¸Áö¸¸ ÀÌ ¹æ¹ýÀº ½Ã°£ÀÌ °æ°úÇϸé fragmentationÀÌ ´Ù½Ã ¹ß»ýÇÏ´Â °Í±îÁö´Â ¾î¿ ¼ö ¾ø´Ù. * SVR4¿¡¼´Â dcopy¸¦ Á¦°øÇϸç, dcopy´Â fileÀÌ °¡Áö´Â fragment »Ó ¾Æ´Ï¶ó »êÀçµÇ¾î ÀÖ´Â free list¿¡ ÀÇÇÑ fragmentµµ ÇØ°áÇÑ´Ù°í ÇÑ´Ù°í ÇÑ´Ù. 3. Âü°í ÀÚ·á * "UNIXÀÇ ³»ºÎ±¸Á¶ - The Design of the UNIX Operating System" (È«¸ª°úÇÐÃâÆÇ»ç) - 2Àå. Ä¿³Î °³°ü p25,26 * "System Performance Tuning" (O'Reilly & Associates Inc., 1990, Mike Loukides) - 5.3 Planning and Creating Filesystems * "Sun System Administration 4.x - Educational Course" (SunEducation. 1990) - Module 4. UNIX File System Created on Dec. 29 ,1992