·¢²©ÎÄ
LinuxÄÚºËѧϰ

ericxiao.blog.chinaunix.net

½ä½¾,½äÔê,¾²ÐÄ,¾²Æø......   
¸öÈË×ÊÁÏ
  • ²©¿Í·ÃÎÊ£º1490179
  • ²©ÎÄÊýÁ¿£º109
  • ²©¿Í»ý·Ö£º30119
  • ²©¿ÍµÈ¼¶£º´ó½«
  • ¹Ø×¢ÈËÆø£º 19
  • ×¢²áʱ¼ä£º2007-10-22 14:58:36
¶©ÔÄÎҵIJ©¿Í
  • ¶©ÔÄ
  • ¶©Ôĵ½Ïʹû
  • ¶©Ôĵ½×¥Ïº
  • ¶©Ôĵ½Google
×ÖÌå´óС£º´ó ÖРС²©ÎÄ
·ÖÀࣺ linuxÄÚ´æ¹ÜÀí

UclibcÊÇǶÈëʽlinuxϵͳÀïÃæÊ¹ÓÃ×î¶àµÄc lib¿â¡£×î½üÔÚѧϰlinuxÄÚºËÄÚ´æ¹ÜÀí·½ÃæµÄ¶«Î÷£¬Ñ§ÍêÖ®ºóÒ»Ö±¶ÔÓû§¿Õ¼äµÄÄÚ´æ¹ÜÀíºÜÃÔºý£¬ÌØÕÒÁËlibcÖеÄmalloc²¿·Ý´úÂëÑо¿ÁËһϣ¬Ð¡ÓÐÐĵá£ÌØ×ܽá³É´ËÎÄ¡£

±¾Îĵµ½á¹¹£º

Ò»£º×¼±¸ÖªÊ¶

¶þ£º¶Ñ¿Õ¼äµÄ¹ÜÀí½á¹¹

Èý£º¶Ñ¿Õ¼äµÄ³õʼ»¯

ËÄ£ºFA½á¹¹µÄ²Ù×÷

Î壺mallocµÄʵÏÖ

Áù£ºfreeµÄʵÏÖ

Æß£º×ܽá

Ò»£º ×¼±¸ÖªÊ¶£º

     Óû§¿Õ¼äÖУ¬¾­³£»áµ÷ÓÃmalloc Óë free½øÐÐÄÚ´æ¹ÜÀí£¬ËüÊÇÔÚ½ø³ÌµÄ¶Ñ¿Õ¼äÖзÖÅäÄÚ´æ¡£ÈçÏÂͼËùʾ£º

    

¶þ£º¶Ñ¿Õ¼äµÄ¹ÜÀí½á¹¹£º

     ¶Ñ¿Õ¼ä±íʾµÄÊý¾Ý½á¹¹

     struct heap

{

     //¶Ñ¿Õ¼ä¿ÕÏÐÇøµÄ±íʾ½á¹¹

          struct heap_free_area *free_areas;

         //ÓÃÓÚÔÚ¶àÏ̻߳·¾³ÖмÓËø±£»¤

#ifdef HEAP_USE_LOCKING

     pthread_mutex_t lock;

#endif

};

heap_free_area½á¹¹ÔÚ´úÂë±»´úÂë×÷Õß³ÆÖ®ÎªFA½á¹¹¡£ËüµÄ¶¨ÒåÈçÏ£º

struct heap_free_area

{

     //¿ÕÏÐÇøµÄ´óС

     size_t size;

     //ÓÃÓÚ¹¹ÔìÑ­»·Á´±í

     struct heap_free_area *next, *prev;

};

×¢Ò⣺ÔÚFA½á¹¹ÀﲢûÓж¨ÒåÖ¸Ïò¿ÕÏÐÇøµÄÖ¸Õ룬ÕâÊÇÒòΪFA½á¹¹ÕýºÃ·ÅÔÚ¿ÕÏÐÇøµÄºóÃæ¡£¶ÑÕ»Çø¿Õ¼ä½á¹¹ÈçÏÂËùʾ£º

²©¿ÍÍÆ¼öÎÄÕÂ
[·¢ÆÀÂÛ] ÆÀÂÛ ÖØÒªÌáʾ£º¾¯ÌèÐé¼ÙÖн±ÐÅÏ¢!
  • chinaunixÍøÓÑ 2010-12-18 20:58
    ͼûÓС£¡£¡£¡£¡£¡£
  • chinaunixÍøÓÑ 2010-12-18 20:58
    ͼûÓС£¡£¡£¡£¡£¡£
  • chinaunixÍøÓÑ 2010-12-18 20:58
    ͼûÓС£¡£¡£¡£¡£¡£
Ç×£¬Äú»¹Ã»ÓеǼ,Çë[µÇ¼]»ò[×¢²á]ºóÔÙ½øÐÐÆÀÂÛ