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