ºÇ½ª¹¹¿·¡§
author_nari 2010ǯ03·î14Æü(Æü) 20:47:11ÍúÎò
¡¡¤º¤Ð¤ê
¡¡¡ÖÆüËܸì¤Ë¤è¤ëGC¥¢¥ë¥´¥ê¥º¥à¤Î¾ÜºÙ²òÀâ¡×
¡¡¤Ç¤¹¡£
¡¡
¡¡¤³¤ÎWiki¤Ë¤ÏºÇ¿·¤Îµ»Ë¡¤«¤é¸Å¤¤µ»Ë¡¤Þ¤Ç¡¤¼«Ê¬¤Î¤Þ¤È¤á¤¿¤â¤Î¤ò¤Á¤Þ¤Á¤Þ½ñ¤¤¤Æ¤¤¤¯¤Ä¤â¤ê¤Ç¤¹¡£
¡¡ÊÔ½¸¤Ï¼«Í³¤Ç¤¹¤Î¤Ç¡¤¤è¤«¤Ã¤¿¤é²¿¤«½ñ¤¤¤Æ¤â¤é¤¨¤ë¤È¤¢¤ê¤¬¤¿¤¤¤Ç¤¹¡¥
¡¡id:authorNari¤¬´ÉÍý¿Í¤Ç¤¹¡¥
¡¡²¿¤«Í¤ê¤Þ¤·¤¿¤é¡¤authorNari at gmail.com ¤ÎÊý¤Ø¤É¤¦¤¾¡¥
¡¡¡ÖÆüËܸì¤Ë¤è¤ëGC¥¢¥ë¥´¥ê¥º¥à¤Î¾ÜºÙ²òÀâ¡×
¡¡¤Ç¤¹¡£
¡¡
¡¡¤³¤ÎWiki¤Ë¤ÏºÇ¿·¤Îµ»Ë¡¤«¤é¸Å¤¤µ»Ë¡¤Þ¤Ç¡¤¼«Ê¬¤Î¤Þ¤È¤á¤¿¤â¤Î¤ò¤Á¤Þ¤Á¤Þ½ñ¤¤¤Æ¤¤¤¯¤Ä¤â¤ê¤Ç¤¹¡£
¡¡ÊÔ½¸¤Ï¼«Í³¤Ç¤¹¤Î¤Ç¡¤¤è¤«¤Ã¤¿¤é²¿¤«½ñ¤¤¤Æ¤â¤é¤¨¤ë¤È¤¢¤ê¤¬¤¿¤¤¤Ç¤¹¡¥
¡¡id:authorNari¤¬´ÉÍý¿Í¤Ç¤¹¡¥
¡¡²¿¤«Í¤ê¤Þ¤·¤¿¤é¡¤authorNari at gmail.com ¤ÎÊý¤Ø¤É¤¦¤¾¡¥
¡¡¤É¤³¤«¤é¤â»²¾È¤µ¤ì¤Ê¤¯¤Ê¤Ã¤¿(¤Ä¤Þ¤êÉÔÍ×)¥á¥â¥êÎΰè¤ò¼«Æ°¤ÇÁݽü¤·¤Æ¤¯¤ì¤ëÊØÍø¤Ê¤ä¤Ä¡£
¡¡ËÜÅö¤Ïmalloc/free¤È¼êư¤Ç¥á¥â¥ê´ÉÍý¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤½ê¡ÊC¸À¸ì¤Ê¤É¡Ë¤ò
¡¡¤¢¤ë¥¿¥¤¥ß¥ó¥°(»È¤¦Â¦¤Ë¤Ï»ØÄê¤Ç¤¤Ê¤¤»ö¤¬Â¿¤¤)¤Ç¤¤¤é¤Ê¤¤Îΰè¤òfree¤·¤Æ¤¯¤ì¤ë¡£
¡¡ËÜWiki¤Ï³µÍפˤĤ¤¤Æ¤Ï¤¢¤ó¤Þ¤êÀâÌÀ¤·¤Ê¤¤¤Î¤Ç¥¬¥Ù¡¼¥¸¥³¥ì¥¯¥·¥ç¥ó(wikipedia)¤ò»²¾È
¡¡
¡¡GC¤ÏÆó¤Ä¤Îά¸ì¤ò¤µ¤·¤Þ¤¹¡£
¡¡ËÜWiki¤Ç¤Ï¡¢Åý³ç¤·¤Æ¡ÖGC¡×¤È¸Æ¤Ö»ö¤Ë¤·¤Þ¤¹¡£
¡¡ËÜÅö¤Ïmalloc/free¤È¼êư¤Ç¥á¥â¥ê´ÉÍý¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤½ê¡ÊC¸À¸ì¤Ê¤É¡Ë¤ò
¡¡¤¢¤ë¥¿¥¤¥ß¥ó¥°(»È¤¦Â¦¤Ë¤Ï»ØÄê¤Ç¤¤Ê¤¤»ö¤¬Â¿¤¤)¤Ç¤¤¤é¤Ê¤¤Îΰè¤òfree¤·¤Æ¤¯¤ì¤ë¡£
¡¡ËÜWiki¤Ï³µÍפˤĤ¤¤Æ¤Ï¤¢¤ó¤Þ¤êÀâÌÀ¤·¤Ê¤¤¤Î¤Ç¥¬¥Ù¡¼¥¸¥³¥ì¥¯¥·¥ç¥ó(wikipedia)¤ò»²¾È
¡¡
¡¡GC¤ÏÆó¤Ä¤Îά¸ì¤ò¤µ¤·¤Þ¤¹¡£
- (garbage collection) ¥¬¥Ù¡¼¥¸¥³¥ì¥¯¥·¥ç¥ó -- ¥×¥í¥°¥é¥à¾å¤ÇÉÔÍפȤʤä¿¥á¥â¥ê¤ò²ó¼ý¤¹¤ëưºî¡£
- (garbage collector) ¥¬¥Ù¡¼¥¸¥³¥ì¥¯¥¿ -- ¾åµ¤ò¼Â¸½¤¹¤ë¥á¥«¥Ë¥º¥à¡£
¡¡ËÜWiki¤Ç¤Ï¡¢Åý³ç¤·¤Æ¡ÖGC¡×¤È¸Æ¤Ö»ö¤Ë¤·¤Þ¤¹¡£
ÀìÌçÍѸì¤òÃΤé¤Ê¤¤¤ÈÃæ¡¹¿É¤¤¤Î¤Ç¡¢¤Þ¤È¤á¤Æ¤¤¤Þ¤¹¡£
ÍѸ콸
ÍѸ콸
¤³¤ì¤«¤é¤Îʪ»ö¤òÍý²ò¤¹¤ë¤¿¤á¤Ë¡¢¥×¥í¥°¥é¥à¤¬Æ°¤¤¤Æ¤¤¤ë»þ¤Î¥á¥â¥êÎΰè¤Î¹½Â¤¤ò¿Þ ¤Ë¼¨¤¹¡£
Âç¤Þ¤«¤Ë¤Ï¡¢Java, ML, C ¸À¸ì¤â´Þ¤á¤Û¤È¤ó¤É¤Î¸À¸ì¤Ï»÷¤¿¤è¤¦¤Ê¹½Â¤¤Ë¤Ê¤ë¡£
¥Ò¡¼¥×Æâ¤Î¾®¤µ¤¤»Í³Ñ¤Ï¥ª¥Ö¥¸¥§¥¯¥È¤òɽ¤¹¡£
¤Þ¤¿¡¢¤¢¤ë¥ª¥Ö¥¸¥§¥¯¥ÈA ¤ÎÃæ¤Ë´Þ¤Þ¤ì¤ë¥Ý¥¤¥ó¥¿¤¬¡¢Ê̤Υª¥Ö¥¸¥§¥¯¥ÈB ¤ò»Ø¤·¤Æ¤¤¤ë¤³¤È¤¬¤¢¤ë¡£
(record ¤ÎÃæ¤Ërecord ¤¬¤¢¤ë¾ì¹ç¤ä¡¢¥ª¥Ö¥¸¥§¥¯¥È¤Î¥Õ¥£¡¼¥ë¥É¤ËÊ̤Υª¥Ö¥¸¥§¥¯¥È¤ò´Þ¤à¾ì¹ç¤Ê¤É)
¿ÞÃæ¤Ç¤Ï»²¾È´Ø·¸¤ò¡¢A ¤«¤éB ¤Ø¤ÎÌð°õ¤Çɽ¤¹¡£
- ¥¹¥¿¥Ã¥¯¤Ë¤Ï¡¢¶É½êÊÑ¿ô¤ä´Ø¿ô¸Æ¤Ó½Ð¤·¤ÎÍúÎò¤Ê¤É¤¬³ÊǼ¤µ¤ì¤ë¡£(Ïäò¤´¤¯´Êñ¤Ë¤¹¤ë¤È) ´Ø¿ô¸Æ¤Ó½Ð¤·¤¬µ¯¤³¤ë¤È¿¤Ó¤Æ¡¢return ¤¬µ¯¤³¤ë¤È½Ì¤à¡£
- Âç°èÊÑ¿ô¤ò³ÊǼ¤¹¤ëÎΰ褬ÍѰդµ¤ì¤ë¡£Äê¿ô¤¬³ÊǼ¤µ¤ì¤ëÎΰè¤âÆÈΩ¤ËÍѰդµ¤ì¤ë¾ì¹ç¤¬Â¿¤¤¡£
- ¥ì¥¸¥¹¥¿¤Ï¡¢´Ø¿ô¤Î°ú¿ô¡¢·×»»¤ÎÅÓÃæ·ë²Ì¤Ê¤ÉÍÍ¡¹¤ÊÃͤò¤È¤ë¡£¥ª¥Ö¥¸¥§¥¯¥È¤ò»Ø¤¹¥Ý¥¤¥ó¥¿¤Î²ÄǽÀ¤â¤¢¤ë¡£
- ¥Ò¡¼¥×¤Ï¼«Í³¤Ê½çÈ֤ǥá¥â¥êÎΰè¤ò³ÎÊÝ/²òÊü¤Ç¤¤ëÎΰè¤Ç¤¢¤ë¡£
- ¿Þ¤Ë¤Ï¼¨¤·¤Æ¤¤¤Ê¤¤¤¬¡¢¥×¥í¥°¥é¥à¤Î¥³¡¼¥ÉÎΰè¤â¤É¤³¤«¤Ë¤¢¤ë¡£
À¤¤ÎÃæ¤Ë¤¢¤ëGC¥¢¥ë¥´¥ê¥º¥à¤Ï¤³¤Î3¥Ñ¥¿¡¼¥ó¤ËºÇ½ªÅª¤Ë½¸Ì󤵤ì¤ë¡¥
´ðËÜÃæ¤Î´ðËܤΥ¢¥ë¥´¥ê¥º¥à¤Ç¤¢¤ë¡¥
´ðËÜÃæ¤Î´ðËܤΥ¢¥ë¥´¥ê¥º¥à¤Ç¤¢¤ë¡¥
»²¾È¥«¥¦¥ó¥È(GC)
°õ¤Å¤±¡¢Áݽü
À¸¤¤Æ¤ë¤â¤Î¤À¤±°ã¤¦Æþ¤ìʪ¤Ë¤¤¤ì¤Æ¡¤»à¤ó¤Ç¤ë¤â¤Î¤ÏÆþ¤ìʪËè¼Î¤Æ¤ë
¤Á¤ç¤Ã¤È¤Å¤ÄGC
¼ã¤¤¤ä¤Ä¤é¤òÍ¥À褹¤ëGC
³«»Ï»þ¤Î¼Ì¿¿¤ò¸µ¤Ë¥´¥ßÁݽü
ÃÙ±äSweep
¶õ¤¤¤Æ¤ë½ê¤Ë¤Ä¤Ã¤³¤à
ÀèÆ¬¤Ë¤º¤é¤¹
ÉôʬŪ¤ÊMarkandSweep
¶ËÎÏParallel¤ÊGC¤ò¹Ô¤¦
OldÀ¤Âå¤ò¼Öξ¤Ëʬ³ä¤·¤Æ¥¤¥ó¥¯¥ê¥á¥ó¥¿¥ë¤ËGC
¤¢¤¤¤Þ¤¤¤Ê¥Ý¥¤¥ó¥¿¤ò¹Íθ¤·¡¤¶ËÎÏCopying¤ò¤¹¤ëGC
ÂçÄñ¤ÎGC¤Ç¤ÏºÇ½é¤Ë¥ë¡¼¥È¤ÎÁöºº¤ò¹Ô¤¦¡£
¶ñÂÎŪ¤Ë¤Ï»²¾ÈÀè¤Î¥¢¥É¥ì¥¹(¥Ý¥¤¥ó¥¿)¤¬¥Ò¡¼¥×ÎΰèÆâ¤Ë¤¢¤ë¤«¤É¤¦¤«¡©¤È¤¤¤¦
¥Á¥§¥Ã¥¯¤ò¥ë¡¼¥È¤¹¤Ù¤Æ¤Ë¹Ô¤¦¤Î¤À¤¬¡¢
¤³¤ÎºÝ¤Ë¡¢¤â¤·¡¢¥Ò¡¼¥×ÎΰèÆâ¤ò»Ø¤¹¿ôÃͤ¬¸«¤Ä¤«¤Ã¤¿¾ì¹ç¡¢
¤½¤ì¤¬¥×¥í¥°¥é¥àÃæ¤Ë»ÈÍѤµ¤ì¤¿¿ôÃÍ(int¤Ê¤É)¤Ê¤Î¤«¡¢¥ª¥Ö¥¸¥§¥¯¥È¤Ø¤Î»²¾È(¥Ý¥¤¥ó¥¿)¤Ê¤Î¤«
ȽÃǤ¹¤ë»ö¤¬¤Ç¤¤Ê¤¤¡£
¤³¤ÎÌäÂê¤Ë¤É¤¦Âн褹¤ë¤«¤Ë¤è¤Ã¤Æ¡¢conservativeGC¤ÈexactGC¤Î2¼ïÎà¤ËGC¤Ïʬ¤±¤é¤ì¤ë¡£
¶ñÂÎŪ¤Ë¤Ï»²¾ÈÀè¤Î¥¢¥É¥ì¥¹(¥Ý¥¤¥ó¥¿)¤¬¥Ò¡¼¥×ÎΰèÆâ¤Ë¤¢¤ë¤«¤É¤¦¤«¡©¤È¤¤¤¦
¥Á¥§¥Ã¥¯¤ò¥ë¡¼¥È¤¹¤Ù¤Æ¤Ë¹Ô¤¦¤Î¤À¤¬¡¢
¤³¤ÎºÝ¤Ë¡¢¤â¤·¡¢¥Ò¡¼¥×ÎΰèÆâ¤ò»Ø¤¹¿ôÃͤ¬¸«¤Ä¤«¤Ã¤¿¾ì¹ç¡¢
¤½¤ì¤¬¥×¥í¥°¥é¥àÃæ¤Ë»ÈÍѤµ¤ì¤¿¿ôÃÍ(int¤Ê¤É)¤Ê¤Î¤«¡¢¥ª¥Ö¥¸¥§¥¯¥È¤Ø¤Î»²¾È(¥Ý¥¤¥ó¥¿)¤Ê¤Î¤«
ȽÃǤ¹¤ë»ö¤¬¤Ç¤¤Ê¤¤¡£
¤³¤ÎÌäÂê¤Ë¤É¤¦Âн褹¤ë¤«¤Ë¤è¤Ã¤Æ¡¢conservativeGC¤ÈexactGC¤Î2¼ïÎà¤ËGC¤Ïʬ¤±¤é¤ì¤ë¡£
conservativeGC¤Ï¤³¤Î¾ì¹ç¡¢¥ª¥Ö¥¸¥§¥¯¥È¤Ø¤Î»²¾È¤Ç¤Ï̵¤¯¡¢Âþ¤Î¿ôÃͤÀ¤Ã¤¿¤È¤·¤Æ¤â
¤½¤Î¥ª¥Ö¥¸¥§¥¯¥È¤Î²òÊü¤Ï¹Ô¤ï¤Ê¤¤¡£
¤Ä¤Þ¤ê¡¢¿ôÃͤǤ¢¤Ã¤¿¾ì¹ç¤Ë¥Ý¥¤¥ó¥¿¤ÎÃͤòÊѹ¹(CopyGC¤Ê¤É)¤·¤¿»þ¤Ï¥×¥í¥°¥é¥à¤È¤·¤ÆÃ×̿Ū¤Ç¤¢¤ë°Ù¡¢
²¿¤â¿¨¤é¤Ê¤¤Êý¸þ¤ËÅݤ¹¤È¤¤¤¦»ö¤À¡£
¤Þ¤µ¤ËÊݼéŪ¤ÊGC¤À¡£
ÍøÅÀ
·çÅÀ
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¼ÂºÝ¤Ë¥Ï¥ó¥É¥ë¤Î¿ôÃͤÀ¤±¤¬ÊѤï¤ê¸µ¤Î¥Ý¥¤¥ó¥¿¤Ë±Æ¶Á¤Ï¤Ê¤¤¡£
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡(´ÖÀÜ»²¾È¤Ë¤Ê¤ë°Ù¡¢Ä̾ï¤Î½èÍý¤¬ÃÙ¤¯¤Ê¤ë·çÅÀ)
¾ÜºÙ¤Ê²òÀâ
¤½¤Î¥ª¥Ö¥¸¥§¥¯¥È¤Î²òÊü¤Ï¹Ô¤ï¤Ê¤¤¡£
¤Ä¤Þ¤ê¡¢¿ôÃͤǤ¢¤Ã¤¿¾ì¹ç¤Ë¥Ý¥¤¥ó¥¿¤ÎÃͤòÊѹ¹(CopyGC¤Ê¤É)¤·¤¿»þ¤Ï¥×¥í¥°¥é¥à¤È¤·¤ÆÃ×̿Ū¤Ç¤¢¤ë°Ù¡¢
²¿¤â¿¨¤é¤Ê¤¤Êý¸þ¤ËÅݤ¹¤È¤¤¤¦»ö¤À¡£
¤Þ¤µ¤ËÊݼéŪ¤ÊGC¤À¡£
ÍøÅÀ
- ̵Â̤ʺٹ©¤ò¤»¤º¤ËºÑ¤à¤Î¤Ç½èÍý¤¬·Ú¤¤
- ¼ÂÁõ¤¬³Ú
·çÅÀ
- ²ó¼ý¤µ¤ì¤Ê¤¤¥´¥ß¤¬»Ä¤ë²ÄǽÀ¤¬¤¢¤ë
- CopyingGC¤Ê¤É¥ª¥Ö¥¸¥§¥¯¥È¤ò°Üư¤¹¤ë»ö¤¬¤Ç¤¤Ê¤¤¡£
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¼ÂºÝ¤Ë¥Ï¥ó¥É¥ë¤Î¿ôÃͤÀ¤±¤¬ÊѤï¤ê¸µ¤Î¥Ý¥¤¥ó¥¿¤Ë±Æ¶Á¤Ï¤Ê¤¤¡£
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡(´ÖÀÜ»²¾È¤Ë¤Ê¤ë°Ù¡¢Ä̾ï¤Î½èÍý¤¬ÃÙ¤¯¤Ê¤ë·çÅÀ)
¾ÜºÙ¤Ê²òÀâ
conservativeGC¤Ç¤Ï¤Ê¤ó¤Ç¤â¥ª¥Ö¥¸¥§¥¯¥È¤È¤ß¤Ê¤·¤Æ¡¢¥´¥ß¤¬»Ä¤ë²ÄǽÀ¤¬¤¢¤Ã¤¿¤¬
exactGC¤Ç¤Ï¥Ý¥¤¥ó¥¿¤È¿ôÃͤò¤Ï¤Ã¤¤ê¶èÊ̤·¡¢¥´¥ß¤ò»Ä¤µ¤º²ó¼ý¤¹¤ë»ö¤ò¥Ý¥ê¥·¡¼¤È¤¹¤ë¡£
¥Ý¥¤¥ó¥¿¤È¿ôÃͤò¶èÊ̤¹¤ë¶ñÂÎŪ¤ÊÊýË¡¤Ï¡¢
¤Û¤È¤ó¤É¤Î½èÍý·Ï¤Ï¡¤½èÍý·Ï¼«¿È¤¬¥ë¡¼¥È¤òÄ󶡤¹¤ë»ö¤Ç¤¢¤¤¤Þ¤¤¤Ê¥Ý¥¤¥ó¥¿¤¬¤Ê¤¯¤Ê¤êexactGC¤È¤Ê¤ë¡¥
¤³¤Î¾ì¹ç¡¤GC¤Ë¤è¤ê¶¨ÎÏŪ¤Ê½èÍý·Ï¤È¸À¤¨¤ë¡¥
ÍøÅÀ
·çÅÀ
¤Á¤Ê¤ß¤Ë¡ÖÀäÂÐŪGC¡×¤È¤¤¤¦Ìõ¤Ï¥ª¥ê¥¸¥Ê¥ë¡£¤Ù¤¿¤ËÌõ¤¹¤È¡Ö³Î¼Â¤ÊGC¡×¤Ë¤Ê¤ë¡£
¤Þ¤¿exact¤ÈƱ¤¸°ÕÌ£¤Çprecise¡Ê¥×¥ê¥µ¥¤¥¹¡Ë¤È¸Æ¤Ö»ö¤â¤¢¤ë¡¥
¡Ê±Ñ¸ì¤Ç¤Ï¤³¤Ã¤Á¤ÎÊý¤¬Â¿¤¤¤«¤â¡Ë
exactGC¤Ç¤Ï¥Ý¥¤¥ó¥¿¤È¿ôÃͤò¤Ï¤Ã¤¤ê¶èÊ̤·¡¢¥´¥ß¤ò»Ä¤µ¤º²ó¼ý¤¹¤ë»ö¤ò¥Ý¥ê¥·¡¼¤È¤¹¤ë¡£
¥Ý¥¤¥ó¥¿¤È¿ôÃͤò¶èÊ̤¹¤ë¶ñÂÎŪ¤ÊÊýË¡¤Ï¡¢
- À°¿ôÃͤÎÈϰϤò1 bit¸º¤é¤·¤Æ¡¢¤½¤Î1bit¤ò¥¿¥°¥Ó¥Ã¥È¤È¤·¤ÆÍøÍѤ¹¤ë¡£
- stack mapÊý¼°
¤Û¤È¤ó¤É¤Î½èÍý·Ï¤Ï¡¤½èÍý·Ï¼«¿È¤¬¥ë¡¼¥È¤òÄ󶡤¹¤ë»ö¤Ç¤¢¤¤¤Þ¤¤¤Ê¥Ý¥¤¥ó¥¿¤¬¤Ê¤¯¤Ê¤êexactGC¤È¤Ê¤ë¡¥
¤³¤Î¾ì¹ç¡¤GC¤Ë¤è¤ê¶¨ÎÏŪ¤Ê½èÍý·Ï¤È¸À¤¨¤ë¡¥
ÍøÅÀ
- ¥´¥ß¤òÁ´¤Æ²ó¼ý¤¹¤ë¤Î¤Ç¥á¥â¥ê¸úΨ¤¬¤¤¤¤
- ¥ª¥Ö¥¸¥§¥¯¥È¤Î°Üư¤¬³Ú¤Ë¤Ç¤¤ë¡£(¥³¥ó¥Ñ¥¯¥·¥ç¥ó)
·çÅÀ
- ¿§¡¹¤ÈÀ©¸Â¤¬¤Ä¤¯
- ¼ÂÁõ¤¬ÌÌÅÝ
¤Á¤Ê¤ß¤Ë¡ÖÀäÂÐŪGC¡×¤È¤¤¤¦Ìõ¤Ï¥ª¥ê¥¸¥Ê¥ë¡£¤Ù¤¿¤ËÌõ¤¹¤È¡Ö³Î¼Â¤ÊGC¡×¤Ë¤Ê¤ë¡£
¤Þ¤¿exact¤ÈƱ¤¸°ÕÌ£¤Çprecise¡Ê¥×¥ê¥µ¥¤¥¹¡Ë¤È¸Æ¤Ö»ö¤â¤¢¤ë¡¥
¡Ê±Ñ¸ì¤Ç¤Ï¤³¤Ã¤Á¤ÎÊý¤¬Â¿¤¤¤«¤â¡Ë
Mark&Sweep¥¢¥ë¥´¥ê¥º¥à¤Ç¤Ï¡ÖRoot ¤«¤éÅþã²Äǽ¤«¤É¤¦¤«¡×¤ò¥Á¥§¥Ã¥¯¤¹¤ë¤¿¤á¤Ë¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥Þ¡¼¥¯¤ò¹Ô¤Ã¤Æ¤¤¤¿¤¬¡¢
¤³¤ì¤È¤ÏÊ̤ˡֽñ¤´¹¤¨¤é¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È¡×¤ò¥Á¥§¥Ã¥¯¤¹¤ë¤¿¤á¤ËÊ̼ïÎà¤Î°õ¤ò¤Ä¤±¤ë¡£
Î㤨¤Ð¡¢°Ê²¼¤Î¤è¤¦¤Ê Java ¥×¥í¥°¥é¥à¤ò¼Â¹Ô¤·¤Æ¤¤¤ë¥¹¥ì¥Ã¥É¤¬¡¢ object1 ¤Î¥Õ¥£¡¼¥ë¥É¤Ë¤Ê¤ó¤é¤«¤Î¥ª¥Ö¥¸¥§¥¯¥È¤Î»²¾È¤ò½ñ¤¹þ¤à¾ì¹ç¡¢
object1 ¤Ë¡Ö½ñ¤¹þ¤Þ¤ì¤¿¡×¤È¤¤¤¦°õ¤òÉÕ¤±¤ë¤Î¤Ç¤¢¤ë¡£
¤³¤Î½èÍý¤ò ¥é¥¤¥È¥Ð¥ê¥¢ (write barrier) ¤È¸Æ¤Ö¡£
object2 ¤¬ null ¤Ç¤Ê¤¤¾ì¹ç¤Ï¡¢¤É¤ó¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤â¥Á¥§¥Ã¥¯¤ò¹Ô¤¦¡£

¤³¤ì¤È¤ÏÊ̤ˡֽñ¤´¹¤¨¤é¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È¡×¤ò¥Á¥§¥Ã¥¯¤¹¤ë¤¿¤á¤ËÊ̼ïÎà¤Î°õ¤ò¤Ä¤±¤ë¡£
Î㤨¤Ð¡¢°Ê²¼¤Î¤è¤¦¤Ê Java ¥×¥í¥°¥é¥à¤ò¼Â¹Ô¤·¤Æ¤¤¤ë¥¹¥ì¥Ã¥É¤¬¡¢ object1 ¤Î¥Õ¥£¡¼¥ë¥É¤Ë¤Ê¤ó¤é¤«¤Î¥ª¥Ö¥¸¥§¥¯¥È¤Î»²¾È¤ò½ñ¤¹þ¤à¾ì¹ç¡¢
object1 ¤Ë¡Ö½ñ¤¹þ¤Þ¤ì¤¿¡×¤È¤¤¤¦°õ¤òÉÕ¤±¤ë¤Î¤Ç¤¢¤ë¡£
¤³¤Î½èÍý¤ò ¥é¥¤¥È¥Ð¥ê¥¢ (write barrier) ¤È¸Æ¤Ö¡£
object2 ¤¬ null ¤Ç¤Ê¤¤¾ì¹ç¤Ï¡¢¤É¤ó¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤â¥Á¥§¥Ã¥¯¤ò¹Ô¤¦¡£
void method( Class1 object, Class2 object2 ){ object1.field = object2; }¥é¥¤¥È¥Ð¥ê¥¢¤µ¤ì¤¿¸å¤Î¡¢¥á¥â¥êÃæ¤Î¥¤¥á¡¼¥¸¤È¤·¤Æ¤Ï²¼¤Î¿Þ¤Î¤è¤¦¤Ë¤Ê¤ë¡£

ÏÂÌõ¡§º¬¡¢º¬¸»
GC¤Ë¤ª¤¤¤Æ¡¢¡Ö³Î¼Â¤ËɬÍפʥª¥Ö¥¸¥§¥¯¥È¡×¡£
¥¹¥¿¥Ã¥¯Îΰ衢¥ì¥¸¥¹¥¿¡¢¥°¥í¡¼¥Ð¥ëÊÑ¿ô¡¢Äê¿ô¤Ê¤É¤«¤é»²¾È¤µ¤ì¤Æ¤¤¤ë¥Ò¡¼¥×Îΰè¤ò»Ø¤¹¡£
¤³¤Î¥ª¥Ö¥¸¥§¥¯¥È¤òµ¯ÅÀ¤ËɬÍפʥª¥Ö¥¸¥§¥¯¥È¤¬Ãµº÷¤µ¤ì¡¢Ãµº÷¤µ¤ì¤Ê¤«¤Ã¤¿¥ª¥Ö¥¸¥§¥¯¥È¤¬GC¤ÎÂоݤˤʤ롣
GC¤Ë¤ª¤¤¤Æ¡¢¡Ö³Î¼Â¤ËɬÍפʥª¥Ö¥¸¥§¥¯¥È¡×¡£
¥¹¥¿¥Ã¥¯Îΰ衢¥ì¥¸¥¹¥¿¡¢¥°¥í¡¼¥Ð¥ëÊÑ¿ô¡¢Äê¿ô¤Ê¤É¤«¤é»²¾È¤µ¤ì¤Æ¤¤¤ë¥Ò¡¼¥×Îΰè¤ò»Ø¤¹¡£
¤³¤Î¥ª¥Ö¥¸¥§¥¯¥È¤òµ¯ÅÀ¤ËɬÍפʥª¥Ö¥¸¥§¥¯¥È¤¬Ãµº÷¤µ¤ì¡¢Ãµº÷¤µ¤ì¤Ê¤«¤Ã¤¿¥ª¥Ö¥¸¥§¥¯¥È¤¬GC¤ÎÂоݤˤʤ롣
Mark&Sweep¤ò²¿Å٤ⷫ¤êÊÖ¤¹¤È¥á¥â¥ê¤ÎÃÇÊÒ²½¤¬µ¯¤³¤ë¤¬¡¢
¤½¤Î¾õÂÖ¤òÀ°ÆÜ¤¹¤ë¤¹¤ë»ö¤ò»Ø¤¹¡£
Windows¤Ç¸À¤¦½ê¤Î¥Ç¥Õ¥é¥°¤ÎÍͤʤâ¤Î¡£
¤½¤Î¾õÂÖ¤òÀ°ÆÜ¤¹¤ë¤¹¤ë»ö¤ò»Ø¤¹¡£
Windows¤Ç¸À¤¦½ê¤Î¥Ç¥Õ¥é¥°¤ÎÍͤʤâ¤Î¡£
ÏÂÌõ¡§³ä¤êÅö¤Æ¤ë
¥á¥â¥ê³ä¤êÅö¤Æ¤ë¹Ô°Ù¡£GC´ØÏ¢¤Î»ñÎÁ¤Ç¤Ï´ÉÍýÂоݤΥª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤¹¤ë»ö¤ò»Ø¤¹¤³¤È¤¬Â¿¤¤¡£
¥á¥â¥ê³ä¤êÅö¤Æ¤ë¹Ô°Ù¡£GC´ØÏ¢¤Î»ñÎÁ¤Ç¤Ï´ÉÍýÂоݤΥª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤¹¤ë»ö¤ò»Ø¤¹¤³¤È¤¬Â¿¤¤¡£
- BoehmGCHackers
- °ìÈ̶µÍܤȤ·¤Æ¤ÎGarbageCollection(pdf)
- Èù¿ìȾ²õ Copying Garbage Collector
- Gaku's Space Wiki (Garbage Collection)
- RHG ¥¬¥Ù¡¼¥¸¥³¥ì¥¯¥·¥ç¥ó
- VisualWorks ¤Î GC ¤ÎÀïάȯɽ OHP
- GC on GC
- Mostly-Concurrent Mark & Sweep GC ¤Î¥¢¥ë¥´¥ê¥º¥à
- Garbage Collection Jones&LinesÃø¡ÊGC¤Î¶µ²Ê½ñ¡£¡£¡£±Ñ¸ì¤À¤±¤É¤Í¡Ë
- ¥¬¥Ù¡¼¥¸¥³¥ì¥¯¥·¥ç¥ó¤Î¥¢¥ë¥´¥ê¥º¥à¤È¼ÂÁõ¡ÊÀÛÃø¤Ç¤¹¡Ë
- ¥«¥Æ¥´¥ê¡§
- ¥Ñ¥½¥³¥ó
- ¥¬¥Ù¡¼¥¸¥³¥ì¥¯¥·¥ç¥ó(GC)
¤³¤Î¥Ú¡¼¥¸¤Ø¤Î¥³¥á¥ó¥È
´ÉÍý¿ÍÍÍ ¡¢¤Ï¤¸¤á¤Þ¤·¤Æ¡£ÎëÌÚ¹¬»Ò¤È¿½¤·¤Þ¤¹¡£
¶²¤ì¤Ê¤¬¤éµ®¥µ¥¤¥Èseesaawiki.jp/w/author_nari/ ¤Ë¥Ð¥Ê¡¼¤ätextlink¤äµ»ö·ÇºÜ¤ò¤ª´ê¤¤¤·¤¿¤¯ ¤´Ï¢Íí¤ò¤µ¤»¤Æ¤¤¤¿¤À¤¤Þ¤·¤¿¡£
¤â¤·¶½Ì£¤¬¤´¤¶¤¤¤Þ¤·¤¿¤é¤ªÊÖ»ö失¤ì¤Ð¤È»×¤¤¤Þ¤¹¡£
¤´ÊÖ¿®¤ò¤¤¤¿¤À¤±¤ì¤Ð¡¢¤É¤Á¤é¤Î¥µ¥¤¥È(URL)¤Î´ÉÍý¿ÍÍͤò¶µ¤¨¤Æ¤¤¤¿¤À¤¤Þ¤¹¡£
¤è¤í¤·¤¯¤ª´ê¤¤¤¤¤¿¤·¤Þ¤¹¡£
http://worldcup2018-japan.com/
GC���르�ꥺ��ܺٲ��� - Seesaa Wiki�ʥ������� for ���ޡ��ȥե��� モンクレール新作ダウン http://www.pslcbi.com/moncler2014.html
GC���르�ꥺ��ܺٲ��� - Seesaa Wiki�ʥ������� for ���ޡ��ȥե��� モンクレール 2014 http://www.pslcbi.com/moncler2014.html
¥¢¥¤¥Õ¥©¥ó4s ¥±¡¼¥¹
¥¢¥¤¥Õ¥©¥ó¥±¡¼¥¹ http://www.cnbwe.com/
¥á¥ó¥º ¥À¥Ã¥Õ¥ë¥³¡¼¥È
¥Ð¡¼¥Ð¥ê¡¼¥Á¥§¥Ã¥¯ http://www.bet365kaihu.org/¥«¥¸¥å¥¢¥ë¥·¥ã¥Ä-mxz5zj-4.html