|
 |
 |
| ¸¶À» °Ô½ÃÆÇ |
µî·ÏµÈ
¸¶À» °Ô½ÃÆÇÀÌ
¾ø½À´Ï´Ù. |
|
|
|
|
 |
|
|
|
|
|
|
HeapAlloc, LocalAlloc, GlobalAlloc °¢°¢ ¾î¶»°Ô ´Ù¸¥°¡? | VC++ ÀÏ¹Ý |
2006-06-27 ¿ÀÀü 4:33:14 |
°¢ ÇÔ¼öÀÇ Á¤ÀÇ´Â ´ÙÀ½°ú °°´Ù. LPVOID HeapAlloc(HANDLE hHeap, DWORD dwFlags, DWORD dwBytes); HLOCAL LocalAlloc(UINT uFlags, UINT uBytes); HGLOBAL GlobalAlloc(UINT uFlags, DWORD dwBytes);
¼Â ´Ù Èü¿¡¼ ¸Þ¸ð¸® ºí·ÏÀ» ÇÒ´ç¹Þ´Â µ¿ÀÏÇÑ ±â´ÉÀ» ÇÑ´Ù.
LocalAlloc°ú GalobalAllocÀº Win32¿¡¼´Â ¿ÏÀüÈ÷ µ¿ÀÏÇÏ´Ù. Win16¿¡¼´Â ¾îÇø®ÄÉÀ̼Ǹ¶´Ù °¡Áö´Â Local Èü°ú Èü ¸Å´ÏÀú°¡ °¡Áö´Â Global ÈüÀÌ µû·Î Á¸ÀçÇßÁö¸¸ Win32¿¡¼´Â µû·Î Á¸ÀçÇÏÁö ¾Ê´Â´Ù. µû¶ó¼ Win32¿¡¼ Local Èü°ú Global ÈüÀº µ¿ÀÏÇϰí ÇÔ¼ö ÀÚü´Â ÇÏÀ§ ȣȯÀ» À§ÇØ ³²¾ÆÀÖ´Ù.
LocalAlloc°ú GlobalAllocÀº µ¿ÀÏÇϹǷΠLocalAlloc¸¸À» ¾ð±ÞÇϰڴÙ.
HeapAlloc°ú LocalAllocÀÇ Â÷ÀÌÁ¡À» »ìÆìº¸ÀÚ. ù°·Î ¸Þ¸ð¸® ºí·ÏÀ» ÇÒ´çÇÏ´Â Èü ÀÚü°¡ ´Ù¸£´Ù´Â °ÍÀÌ´Ù. LocalAllocÀº Ç×»ó µðÆúÆ® Èü¿¡¼ ÇÒ´çÇÑ´Ù. µðÆúÆ® ÈüÀº ÇϳªÀÇ ¾îÇø®ÄÉÀ̼ÇÀÌ Çϳª¾¿ °¡Áö´Â ¸ÞÀÎ ÈüÀÌ´Ù. ÀÌ´Â ÇÁ·Î¼¼½º°¡ »ý¼ºµÇ°í °¡»ó ÁÖ¼Ò °ø°£ÀÌ »ý°Ü³¯ ¶§ °°ÀÌ »ý¼ºµÇ´Â ÈüÀÌ´Ù. ±× Å©±â´Â ¸µÅ©½Ã ½ÇÇàÆÄÀÏ Çì´õ¿¡ ±â·ÏÀÌ µÈ´Ù. ¸µÅ© ¿É¼ÇÀ¸·Î ±× Å©±â¸¦ º¯°æÇÒ ¼öµµ ÀÖ´Ù. ±âº» °ªÀº 1MBÀÌ´Ù. ¹Ý¸é¿¡ HeapAllocÀº ÇÔ¼öÀÇ Ã¹ ¹øÂ° ÀÎÀÚ¿¡¼ º¸µíÀÌ ÀÓÀÇÀÇ Èü¿¡¼ ÇÒ´çÇÑ´Ù. HeapCreate·Î ¸¸µç ÈüÀÏ ¼öµµ ÀÖ°í GetProcessHeapÀ¸·Î ¾ò´Â µðÆúÆ® ÈüÀÏ ¼öµµ ÀÖ´Ù.
µÑ°·Î ¸®ÅϰªÀ» »ìÆìº¸¸é HeapAllocÀº Æ÷ÀÎÅ͸¦ ¸®ÅÏÇÏÁö¸¸ LocalAllocÀº ÇÚµéÀ» ¸®ÅÏÇÑ´Ù. µû¶ó¼ LocalAllocÀ¸·Î ÇÒ´ç¹ÞÀº ¸Þ¸ð¸® ºí·ÏÀ» ½ÇÁ¦·Î »ç¿ëÇÒ ¶§´Â LocalLock ÇÔ¼ö·Î Æ÷ÀÎÅ͸¦ ¾ò¾î¿Í¾ß ÇÑ´Ù. LocalAllocÀÇ »ç¿ëÀÌ Á» ´õ ºÒÆíÇÏÁö¸¸ ÇÚµéÀ» »ç¿ëÇÏ¹Ç·Î½á µ¿±âÈ¿Í °°Àº ±â´ÉÀ» Á¦°øÇÑ´Ù. ±×¸®°í Æ÷ÀÎÅ͸¦ Á÷Á¢ »ç¿ëÇÏÁö ¾Ê°í ÇÚµéÀ» »ç¿ëÇÏ´Â ¶Ç ´Ù¸¥ (°á°úÀûÀ¸·Î) ÀÌÀ¯´Â ´ÙÀ½°ú °°´Ù. LocalAllocÀÇ Ã¹¹øÂ° ÀÎÀÚ´Â ÇÒ´ç¹ÞÀ» ¸Þ¸ð¸® ºí·ÏÀÇ Æ¯¼ºÀ» ÁöÁ¤Çϴµ¥, GMEM_MOVEABLE À̶ó´Â Ư¼ºÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ÀÌ´Â Èü ¸Þ¸ð¸® ´ÜÆíÈ Á¦°Å¸¦ À§ÇØ ¶Ç´Â Èü °ø°£ÀÌ ºÎÁ·ÇÒ ¶§ Èü °ü¸®ÀÚ°¡ ¸Þ¸ð¸® ºí·ÏÀ» À̵¿ÇÒ ¼ö ÀÖµµ·Ï ÇÏ°Ô Çϴµ¥ ÀÌ·¸°Ô µÇ¸é Æ÷ÀÎÅÍ·Î ¸®ÅÏÇßÀ» °æ¿ì À̵¿µÈ ÈÄ À߸øµÈ ÂüÁ¶¸¦ ÇÏ°Ô µÇ¹Ç·Î ÇÚµé·Î¼ °ü¸®µÇ´Â °ÍÀÌ´Ù. ½ÇÁ¦·Î GMEM_MOVEABLE ÀÌ ¾Æ´Ñ GMEM_FIXED·Î ÁöÁ¤ÇÏ°Ô µÇ¸é ¸®ÅϰªÀº ±× ÀÚü°¡ Æ÷ÀÎÅÍÀÌ´Ù.
¡Ø Âü°í·Î C run-time libraryÀÎ mallocÀº À§ÀÇ API ÇÔ¼öµé°ú °°Àº ±â´ÉÀ» ÇÏÁö¸¸ µðÆúÆ® ÈüÀÌ ¾Æ´Ñ ÀڽŸ¸ÀÇ ÈüÀ» »ç¿ëÇϰí ÀڽŸ¸ÀÇ ¹æ¹ýÀ¸·Î ÈüÀ» °ü¸®ÇÑ´Ù. |
|
|
|
|
|
|
|
- ¼³¸í °¨»çÇÕ´Ï´Ù. ^^ Â÷À̸¦ ÀÌÇØÇÒ ¼ö ÀÖ¾ú³×¿ä. ³ªÁß¿¡ »ç¿ë½Ã ¸íÈ®ÇÑ È®½ÅÀ» °¡Áö°í »ç¿ëÇÒ ¼ö ÀÖÀ» °Í°°½À´Ï´Ù.

- "±×¸®°í Æ÷ÀÎÅ͸¦ Á÷Á¢ »ç¿ëÇÏÁö ¾Ê°í ->Æ÷ÀÎÅÍ<-¸¦ »ç¿ëÇÏ´Â ¶Ç ´Ù¸¥ (°á°úÀûÀ¸·Î) ÀÌÀ¯´Â ´ÙÀ½°ú °°´Ù." °¡ Àß ÀÌÇØ°¡ ¾ÈµÇ³×¿ä.
Ȥ½Ã
"±×¸®°í Æ÷ÀÎÅ͸¦ Á÷Á¢ »ç¿ëÇÏÁö ¾Ê°í ->ÇÚµé<-À» »ç¿ëÇÏ´Â ¶Ç ´Ù¸¥ (°á°úÀûÀ¸·Î) ÀÌÀ¯´Â ´ÙÀ½°ú °°´Ù." À̰Ÿ¦ ¾²½Ã·Á´Ù ¿ÀŸ Ä¡½Å°Å ¾Æ´Ñ°¡¿ä????

- ³×~ ^^
Á¦°¡ ¿ÀŸ¸¦ ³Â³×¿ä. ±Û¿¡¼ ¼öÁ¤Çß½À´Ï´Ù. 5°³¿ù¸¸¿¡ ¿ÀŸ¸¦ ã¾Æ³»½Å ºÐÀÌ ³ª¿Ô±º¿ä °¨»çÇÕ´Ï´Ù~

|
|
|
|
µ¦½ºÆÛÆ®(dExpert)
|
|
 |
|
|
9,000¿ø |
|
|
|
10,000¿ø |
|
|
|
15,000¿ø |
|
|
|
10,000¿ø |
|
|
|
15,000¿ø |
|
|
|
15,000¿ø |
|
|
|
13,000¿ø |
|
|
 |
|
|
5,000¿ø |
|
|
|
3,000¿ø |
|
|
|
27,000¿ø |
|
|
|
9,000¿ø |
|
|
|
15,000¿ø |
|
|
|
30,000¿ø |
|
|
|
9,000¿ø |
|
|
|
|
|
|
|
|
|