CÓïÑÔʵÀý½Ì³Ì(PDF¸ñʽ)-µÚ20²¿·Ö
°´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·ҳ£¬°´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ£¬°´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿£¡
¡ª¡ª¡ª¡ªÎ´ÔĶÁÍꣿ¼ÓÈëÊéÇ©ÒѱãÏ´μÌÐøÔĶÁ£¡
00410df0¡¡00410760¡¡00410890¡¡004109c0¡¡004109c0¡¡00410b00¡¡00410c40¡¡00410d80¡¡¡¡
00410d80¡¡00410760¡¡004108b0¡¡00410a00¡¡00410a00¡¡00410b60¡¡00410cc0¡¡00410e20¡¡¡¡
00410e20¡¡00410760¡¡004108d0¡¡00410a40¡¡00410a40¡¡00410bc0¡¡00410d40¡¡00410760¡¡¡¡
00410760¡¡004108f0¡¡00410a80¡¡00410c10¡¡00410c10¡¡00410db0¡¡00410760¡¡00410900¡¡¡¡
00410900¡¡00410ab0¡¡00410c60¡¡00410e10¡¡00410e10¡¡00410760¡¡00410920¡¡00410ae0¡¡¡¡
00410ae0¡¡00410cb0¡¡00410760¡¡00410930¡¡00351d98¡¡00351d98¡¡00351d98¡¡00351d98¡¡¡¡
00351d98¡¡00351d98¡¡00351d98¡¡00351d98¡¡00351d98¡¡00351d98¡¡00351d98¡¡00351d98¡¡¡¡
1¡¡2¡¡3¡¡4¡¡5¡¡6¡¡7¡¡8¡¡9¡¡10¡¡11¡¡12¡¡13¡¡14¡¡15¡¡16¡¡¡¡
17¡¡18¡¡19¡¡20¡¡21¡¡22¡¡23¡¡24¡¡25¡¡26¡¡27¡¡28¡¡29¡¡30¡¡31¡¡32¡¡¡¡
33¡¡34¡¡35¡¡36¡¡37¡¡38¡¡39¡¡40¡¡41¡¡42¡¡43¡¡44¡¡45¡¡46¡¡47¡¡48¡¡¡¡
49¡¡50¡¡51¡¡52¡¡53¡¡54¡¡55¡¡56¡¡57¡¡58¡¡59¡¡60¡¡61¡¡62¡¡63¡¡64¡¡¡¡
65¡¡66¡¡67¡¡68¡¡69¡¡70¡¡71¡¡72¡¡73¡¡74¡¡75¡¡76¡¡77¡¡78¡¡79¡¡80¡¡¡¡
81¡¡82¡¡83¡¡84¡¡85¡¡86¡¡87¡¡88¡¡89¡¡90¡¡91¡¡92¡¡93¡¡94¡¡95¡¡96¡¡¡¡
97¡¡98¡¡99¡¡100¡¡101¡¡102¡¡103¡¡104¡¡105¡¡106¡¡107¡¡108¡¡109¡¡110¡¡111¡¡112¡¡¡¡
113¡¡114¡¡115¡¡116¡¡117¡¡118¡¡119¡¡120¡¡121¡¡122¡¡123¡¡124¡¡125¡¡126¡¡127¡¡128¡¡¡¡
ÉÏÃæµÄ½á¹û˵Ã÷Á½¸öÎÊÌ⣺һÊÇÔÚʹÓÃrealloc¸Ä±äËù·ÖÅäÄÚ´æµ¥Ôª¡¡
µÄ´óСʱ£¬realloc¿ÉÄÜ»áÒƶ¯¸ÃÄÚ´æ¿éµ½ÐµÄλÖ᣶þÊÇÔÚrealloc¡¡
¸Ä±äºÍÒƶ¯ÄÚ´æ¿éʱ£¬¸ÃÄÚ´æ¿éÖеÄÊý¾ÝҲͬʱ»á±»±£Áô¡£ËùÒÔÉÏÃæ¡¡
µÄģʽ¿ÉÒÔÂú×ãһЩÌØÊⳡºÏµÄÐèÒª¡£µ«ÊÇ£¬Çë¼Çסһµã£¬Ëæ×ÅÄÚ´æ¡¡
¿éµÄÔö´ó£¬reallocµÄÔËÐÐЧÂʻἫ´óµÄϽµ£¬µ±ÉÏÃæµÄ£¬Òò´Ë£¬³ý¡¡
·Ç±ØÒª£¬ÎÒÃDz»ÒªÊ¹ÓÃÕâÖÖ·½Ê½£¬ËäÈ»ËüÁé»î·½±ã£¬µ«ÕâÍùÍùÊÇÒÔÎþ¡¡
ÉüЧÂÊΪ´ú¼ÛµÄ¡£¡¡¡¡
×îºóÖØÐÂÇ¿µ÷Ò»µã£¬¼´²»ÒªÊ¹ÓÃrealloc¸Ä±äÓÉnewÔËËã·û·ÖÅäµÄÄÚ´æ¡¡
¿éµÄ´óС¡£Ç°ÃæÒѾ˵¹ý£¬Õ⽫»áÔÚMFCµÄµ÷ÊÔ°æ±¾Öе¼ÖÂÄÚ´æ³å¡¡
Í»¡£¡¡¡¡
ÏÂÃæÎÒÃǼòµ¥µÄ½éÉÜWin32¡¡ÄÚ´æ¹ÜÀíģʽ¡£¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡153¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
ÔÚMicrosoft¡¡¡¡¡¡Win32Ó¦ÓóÌÐò±à³Ì½Ó¿ÚÖУ¬Ã¿Ò»¸ö½ø³Ì¶¼ÓÐ×Ô¼º¶à´ï¡¡
4GBµÄÐéÄâµØÖ·¿Õ¼ä¡£ÄÚ´æÖеÍλµÄ2GB¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£¨´Ó0x00µ½0x7FFFFFFF£©¿ÉÒÔ¡¡
ΪÓû§ËùÓ㬸ßλµÄ2GB¡¡¡¡¡¡¡¡¡¡¡¡£¨´Ó0x80000000µ½0xFFFFFFFFF£©ÎªÄÚºËËù±£¡¡
Áô¡£½ø³ÌËùʹÓõÄÐéÄâµØÖ·²¢²»´úÂë¶ÔÏóÔÚÄÚ´æÖÐʵ¼ÊµÄÎïÀíµØÖ·¡£¡¡
ÊÂʵÉÏ£¬ÄÚºËΪÿһ¸ö½ø³Ìά»¤ÁËÒ»¸öÒ³Ó³É䣬ҳӳÉäÊÇÒ»¸öÓÃÓÚ½«¡¡
ÐéÄâµØַת»»Îª¶ÔÓ¦µÄÎïÀíµØÖ·µÄÄÚ²¿Êý¾Ý½á¹¹¡£¡¡¡¡
ÿһ¸ö½ø³ÌµÄÐéÄâµØÖ·¿Õ¼ä¶¼Òª±ÈËùÓнø³Ì¿ÉÓõÄÎïÀíÄÚ´æRAM¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£¨Ëæ¡¡
»ú´æÈ¡´æ´¢Æ÷£©µÄ×ܺϴóµÃ¶à¡£ÎªÁËÔö¼ÓÎïÀí´æ´¢µÄ´óС£¬ÄÚºËʹÓá¡
´ÅÅÌ×÷Ϊ¶îÍâµÄ´æ´¢¿Õ¼ä¡£¶ÔÓÚËùÓÐÕýÔÚÖ´ÐеĽø³ÌÀ´Ëµ£¬×ܵĴ洢¡¡
¿Õ¼äµÄÁ¿ÊÇÎïÀíÄÚ´æRAMºÍ´ÅÅÌÉÏ¿ÉÒÔΪҳÃæÎļþËùÓõÄ×ÔÓÉ¿Õ¼äµÄ¡¡
×ܺϣ¬ÕâÀïÒ³ÃæÎļþÖ¸ÓÃÀ´Ôö¼ÓÎïÀí´æ´¢¿Õ¼äµÄ´ÅÅÌÎļþ¡£Ã¿¸ö½ø³Ì¡¡
ÎïÀí´æ´¢¿Õ¼äºÍÐéÄâµØÖ·¡¡£¨Ò²³ÆΪÂß¼µØÖ·£©¿Õ¼äÒÔÒ³µÄÐÎʽÀ´×éÖ¯£¬¡¡
Ò³ÊÇÒ»ÖÖÄÚ´æµ¥Ôª£¬Æä´óСÒÀÀµÓÚËÞÖ÷¼ÆËã»úµÄÀàÐÍ¡£¶ÔÓÚx86¼ÆËã¡¡
»úÀ´Ëµ£¬ËÞÖ÷Ò³´óСΪ4KB£¬µ«ÎÒÃDz»Äܼٶ¨¶ÔÓÐËùÓÐÔËÐÐWindows²Ù¡¡
×÷ϵͳµÄ¼ÆËã»ú£¬ÆäÒ³´óС¾ùΪ4KB¡£¡¡¡¡
ΪÁËʹÄÚ´æ¹ÜÀí¾ßÓÐ×î´óµÄÁé»îÐÔ£¬Äں˿ÉÒÔ½«ÎïÀíÄÚ´æÖеÄÒ³ÒÆÈë¡¡
»òÒƳö´ÅÅÌÉϵÄÒ³ÃæÎļþ¡£µ±Ò»¸öÒ³±»ÒÆÈëÎïÀíÄÚ´æʱ£¬Äں˸üÐÂÊÜ¡¡
µ½Ó°ÏìµÄ½ø³ÌµÄÒ³Ó³Éä¡£½«ÄÚºËÐèÒªÎïÀíÄÚ´æ¿Õ¼äʱ£¬Ëü½«ÎïÀíÄÚ´æ¡¡
ÖÐ×î½ü×îÉÙʹÓõÄÒ³ÒÆÈëÒ³ÃæÎļþ¡£¶ÔÓÚÓ¦ÓóÌÐòÀ´Ëµ£¬Äں˶ÔÎïÀí¡¡
ÄÚ´æµÄ¹ÜÀíÊÇÍêȫ͸Ã÷µÄ£¬Ó¦ÓóÌÐòÖ»¶ÔËü×Ô¼ºµÄÐéÄâµØÖ·¿Õ¼ä½øÐС¡
²Ù×÷¡£¡¡¡¡¡¡
ÔÚ½ø³ÌÐéÄâµØÖ·¿Õ¼äÖеÄÒ³¿ÉÒÔ¾ßÔÚ±íËùÁеÄ״̬֮һ£º¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡±í3¡£¡¡4¡¡ÐéÄâµØÖ·¿Õ¼äÖÐÒ³µÄ²»Í¬×´Ì¬¡¡¡¡
¡¡¡¡¡¡¡¡¡¡×´Ì¬¡¡¡¡¡¡¡¡¡¡¡¡ËµÃ÷¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¿ÕÏУ¨Free£©¡¡¡¡¿ÕÏÐÒ³Êǵ±Ç°²»¿ÉÓ㬵«¿ÉÒÔ±»Õ¼Óûò±£ÁôµÄÒ³¡£¡¡¡¡
¡¡¡¡¡¡¡¡¡¡±£Áô¡¡¡¡¡¡¡¡¡¡¡¡±£ÁôÒ³Êǽø³ÌµÄÐéÄâµØÖ·¿Õ¼äÖÐΪ½«À´Ê¹ÓÃËù±£ÁôµÄ¡¡
¡¡¡¡¡¡¡¡¡¡£¨Reserved£©¡¡¡¡Ò³¡£½ø³Ì²»¿ÉÒÔ´æÈ¡±£ÁôÒ³£¬²¢ÇÒҲûÓÐΪ±£ÁôÒ³·ÖÅä¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÎïÀí´æ´¢¡£±£ÁôÒ³±£ÁôÐéÄâµØÖ·ÖеÄÒ»¶ÎÒÔʹµÃËüÃDz»¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¿ÉÒÔ±»ËæºóµÄÆäËü·ÖÅä²Ù×÷£¨ÈçmallocºÍLocalAllocÖ®Àà¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡µÄº¯ÊýµÈ£©ËùʹÓá£Ò»¸ö½ø³Ì¿ÉÒÔʹÓÃVirtualAllocº¯Êý¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÔÚÆäµØÖ·¿Õ¼äÖб£ÁôÒ³Ã棬ȻºóÔÙÕ¼ÓÃÕâЩ±£ÁôÒ³¡£×î¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ºóʹÓÃVirtualFreeº¯ÊýÊÍ·ÅËüÃÇ¡£¡¡¡¡
¡¡¡¡¡¡¡¡¡¡Õ¼Óá¡¡¡¡¡¡¡¡¡¡¡Òѱ»Õ¼ÓõÄÒ³ÊÇÄÇЩÒÑ·ÖÅäÁËÎïÀí´æ´¢¡¡£¨ÔÚÄÚ´æÖлò´ÅÅÌ¡¡
¡¡¡¡¡¡¡¡¡¡£¨mitted£©¡¡¡¡ÉÏ£©µÄÒ³¡£Õ¼ÓÃÒ³¿ÉÒÔ±»½ûÖ¹½øÐдæÈ¡£¬»òÔÊÐíÖ»¶Á´æ¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡È¡£¬»òÔÊÐí¶Áд´æÈ¡¡£½ø³Ì¿ÉÒÔʹÓÃVirtualAllocº¯Êý¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡·ÖÅäÕ¼ÓÃÒ³¡£GlobalAllocºÍLocalAllocº¯Êý·ÖÅäÔÊÐí¶Á¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡154¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ð´´æÈ¡µÄÕ¼ÓÃÒ³¡£Õ¼ÓÃÒ³¿ÉÒÔʹÓÃVirtualFreeº¯Êý½øÐС¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÊÍ·Å£¬º¯ÊýVirtualFreeÊÍ·ÅÒ³µÄ´æ´¢¿Õ¼ä£¬²¢½«Æä״̬¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¸Ä±äΪ±£Áô¡£¡¡¡¡
½ø³Ì¿ÉÒÔʹÓú¯ÊýGlobalAllocºÍLocalAllocÀ´·ÖÅäÄÚ´æ¡£ÔÚWin32¡¡¡¡
APIµÄ32λÏßÐÔ»·¾³ÖУ¬±¾µØ¶ÑºÍÈ«¾Ö¶Ñ²¢Ã»ÓÐÇø±ð£¬Òò´Ë£¬Ê¹ÓÃÕâ¡¡
Á½¸öº¯ÊýÀ´·ÖÅäÄÚ´æ¶ÔÏóҲûÓÐÈκÎÇø±ð¡£¡¡¡¡
ÓÉGlobalAllocºÍLocalAllocº¯Êý·ÖÅäµÄÄÚ´æ¶ÔÏóλÓÚ˽ÓеÄÕ¼ÓÃÒ³¡¡
ÖУ¬ÕâЩҳÔÊÐí½øÐжÁд´æÈ¡¡£Ë½ÓÐÄÚ´æ²»¿ÉÒÔΪÆäËü½ø³ÌËù·ÃÎÊ¡£¡¡
ÓëÔÚWindows¡¡¡¡¡¡¡¡¡¡¡¡¡¡3¡£xÖв»Í¬£¬Ê¹ÓôøÓÐGMEM_DDESHARE±êÖ¾µÄ¡¡
GlobalAllocº¯Êý·ÖÅäµÄÄÚ´æÊÂʵÉϲ¢Ã»Óб»È«¾Ö¹²Ïí¡£±£Áô¸Ã±êÖ¾¡¡
λ½öÊÇΪÁËÏòÇ°¼æÈݺÍΪһЩӦÓóÌÐòÔöÇ¿¶¯Ì¬Êý¾Ý½»»»¡¡£¨DDE£¬¡¡
dynamic¡¡data¡¡exchange£©µÄÐÔÄܶøʹÓá£Ó¦ÓóÌÐòÈç¹ûÒòÆäËü¡¡Ä¿µÄÐè¡¡
Òª¹²ÏíÄڴ棬ÄÇô±ØÐëʹÓÃÎļþÓ³Éä¶ÔÏ󡣶à¸ö½ø³Ì¿ÉÒÔͨ¹ýÓ³Éäͬ¡¡
Ò»¸öÎļþÓ³Éä¶ÔÏóµÄÊÓÀ´ÌṩÃüÃû¹²ÏíÄÚ´æ¡£ÎÒÃÇÔÚÕâÀォ²»ÌÖÂÛÎÄ¡¡
¼þÓ³ÉäºÍ¹²ÏíÄÚ´æµÄÎÊÌâ¡£¡¡¡¡
ͨ¹ýʹÓú¯ÊýGlobalAllocºÍLocalAlloc£¬¿ÉÒÔ·ÖÅäÄܹ»±íʾΪ32λ¡¡
µÄÈÎÒâ´óСµÄÄÚ´æ¿é£¬ËùÊܵÄΨһÏÞÖÆÊÇ¿ÉÓõÄÎïÀíÄڴ棬°üÀ¨ÔÚ´Å¡¡
ÅÌÉϵÄÒ³ÃæÎļþÖеĴ洢¿Õ¼ä¡£ÕâЩº¯Êý£¬ºÍÆäËü²Ù×÷È«¾ÖºÍ±¾¾ÖÄÚ¡¡
´æ¶ÔÏóµÄÈ«¾ÖºÍ±¾µØº¯ÊýÒ»Æð±»°üº¬ÔÚWin32¡¡¡¡APIÖУ¬ÒÔºÍWindowsµÄ¡¡
16λ°æ±¾Ïà¼æÈÝ¡£µ«ÊÇ£¬´Ó16λ·Ö¶ÎÄÚ´æģʽµ½32λÐéÄâÄÚ´æģʽµÄ¡¡
ת±ä½«Ê¹µÃһЩº¯ÊýºÍһЩѡÏî±äµÃ²»±ØÒªÉõÖÁûÓÐÒâÒå¡£±ÈÈç˵£¬¡¡
ÏÖÔÚ²»ÔٺͽüÖ¸ÕëºÍÔ¶Ö¸ÕëµÄÇø±ð£¬ÒòΪÎÞÂÛÔÚ±¾µØ»¹ÊÇÔÚÈ«¾Ö½øÐС¡
·ÖÅ䶼½«·µ»Ø32λÐéÄâµØÖ·¡£¡¡¡¡¡¡
º¯ÊýGlobalAllocºÍLocalAlloc¶¼¿ÉÒÔ·ÖÅä¹Ì¶¨»ò¿ÉÒƶ¯µÄÄÚ´æ¶Ô¡¡
Ï󡣿ÉÒƶ¯¶ÔÏóÒ²¿ÉÒÔ±»±ê¼ÇΪ¿É¶ªÆúµÄ£¨discardable£©¡£ÔÚÔçÆڵġ¡
Windows°æ±¾ÖУ¬¿ÉÒƶ¯µÄÄÚ´æ¶ÔÏó¶ÔÓÚÄÚ´æ¹ÜÀí·Ç³£Ö®ÖØÒª£¬ËüÃÇ¡¡
ÔÊÐíϵͳÔÚ±ØҪʱѹËõ¶ÑÒÔΪÆäËüÄÚ´æ·ÖÅäÌṩ¿ÉÓÿռ䡣ͨ¹ýʹÓá¡
ÐéÄâÄڴ棬ϵͳÄܹ»Í¨¹ýÒƶ¯ÎïÀíÄÚ´æÒ³À´¹ÜÀíÄڴ棬¶ø²»Ó°ÏìʹÓá¡
ÕâЩҳµÄ½ø³ÌµÄÐéÄâµØÖ·¡£µ±ÏµÍ³Òƶ¯Ò»¸öÎïÀíÄÚ´æҳʱ£¬Ëü¼òµ¥µÄ¡¡
½«½ø³ÌµÄÐéÄâÒ³Ó³É䵽еÄÎïÀíÒ³µÄλÖ᣿ÉÒƶ¯ÄÚ´æÔÚ·ÖÅä¿É¶ªÆú¡¡
ÄÚ´æÈÔÈ»ÓÐÓᣵ±ÏµÍ³ÐèÒª¶îÍâµÄÎïÀí´æ´¢Ê±£¬ËüʹÓÃÒ»ÖÖ³Æ×÷¡¡¡°×î¡¡
½ü×îÉÙʹÓá±µÄËã·¨À´ÊÍ·Å·ÇËø¶¨µÄ¿É¶ªÆúÄÚ´æ¡£¿É¶ªÆúÄÚ´æ¿ÉÒÔÓá¡
ÓÚÄÇЩ²»ÊǾ³£ÐèÒªºÍÒ×ÓÚÖØд´½¨µÄÊý¾Ý¡£¡¡¡¡
µ±·ÖÅä¹Ì¶¨ÄÚ´æ¶ÔÏóʱ£¬GlobalAllocºÍLocalAlloc·µ»Ø32λָÕ룬¡¡
µ÷ÓÃÏ߳̿ÉÒÔÁ¢¼´Ê¹ÓøÃÖ¸ÕëÀ´½øÐÐÄÚ´æ´æÈ¡¡£¶ÔÓÚ¿ÉÒƶ¯Äڴ棬·µ¡¡
»ØֵΪһ¸ö¾ä±ú¡£ÎªÁ˵õ½Ò»¸öÖ¸Ïò¿ÉÒƶ¯ÄÚ´æµÄÖ¸Õ룬µ÷ÓÃÏ߳̿ɡ¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡155¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
ÒÔʹÓÃGlobalLockºÍLocalLockº¯Êý¡£ÕâЩº¯ÊýËø¶¨ÄÚ´æʹµÃËü²»ÄÜ¡¡
¹»±»Òƶ¯»ò¶ªÆú£¬³ý·ÇʹÓú¯ÊýGlobalReAlloc»òLocalReAlloc¶ÔÄÚ¡¡
´æ¶ÔÏó½øÐÐÖØзÖÅä¡£ÒÑËø¶¨ÄÚ´æ¶ÔÏóµÄÄÚ´æ¿é±£³ÖËø¶¨×´Ì¬£¬Ö±ÖÁ¡¡
Ëø¶¨¼ÆÊý¼õµ½0£¬Õâʱ¸ÃÄÚ´æ¿é¿ÉÒÔ±»Òƶ¯»ò¶ªÆú¡£¡¡¡¡
ÓÉGlobalAllocºÍLocalAllocËù·ÖÅäµÄÄÚ´æµÄʵ¼Ê´óС¿ÉÄÜ´óÓÚËùÒª¡¡
ÇóµÄ´óС¡£ÎªÁ˵õ½ÒÑ·ÖÅäµÄʵ¼ÊÄÚ´æÊý£¬¿ÉÒÔʹÓú¯ÊýGlobalSize¡¡
ºÍLocalSize¡£Èç¹û×Ü·ÖÅäÁ¿´óÓÚËùÒªÇóµÄÁ¿£¬½ø³ÌÔò¿ÉÒÔʹÓÃËùÓС¡
µÄÕâЩÁ¿¡££§¡¡¡¡
º¯ÊýGlobalReAllocºÍLocalReAllocÒÔ×Ö½ÚΪµ¥Î»¸Ä±äÓÉGlobalAlloc¡¡
ºÍLocalAllocº¯Êý·ÖÅäÄÚ´æ¶ÔÏóµÄ´óС»òÆäÊôÐÔ¡£ÄÚ´æ¶ÔÏóµÄ´óС¿É¡¡
ÒÔÔö´ó£¬Ò²¿ÉÒÔ¼õС¡£¡¡¡¡
º¯ÊýGlobalFreeºÍLocalFreeÓÃÓÚÊÍ·ÅÓÉGlobalAlloc¡¢LocalAlloc¡¢¡¡
GlobalReAlloc»òLocalReAlloc·ÖÅäµÄÄÚ´æ¡£¡¡¡¡
ÆäËüµÄÈ«¾ÖºÍ±¾µØº¯Êý°üÀ¨GlobalDiscard¡¢LocalDiscard¡¢¡¡
GlobalFlags¡¢LocalFlags¡¢GlobalHandleºÍLocalHandle¡£¡¡
GlobalDiscardºÍLocalDiscardÓÃÓÚ¶ªÆúÖ¸¶¨µÄ¿É¶ªÆúÄÚ´æ¶ÔÏ󣬵«¡¡
²»Ê¹Æä¾ä±úÎÞЧ¡£¸Ã¾ä±ú¿ÉÄÜͨ¹ýº¯ÊýGlobalReAlloc»ò¡¡
LocalReAllocÓëзÖÅäµÄÄÚ´æ¿éÏà¹ØÁª¡£º¯ÊýGlobalFlags»ò¡¡
LocalFlags·µ»Ø¹ØÓÚÖ¸¶¨ÄÚ´æ¶ÔÏóµÄÐÅÏ¢¡£ÕâЩס´¦°üÀ¨¶ÔÏóµÄËø¶¨¡¡
¼ÆÊýÒÔ¼°¶ÔÏóÊÇ·ñ¿É¶ªÆú»òÊÇ·ñÒѱ»¶ªÆú¡£º¯ÊýGlobalHandle»ò¡¡
LocalHandle·µ»ØÓëÖ¸¶¨Ö¸ÕëÏà¹ØÁªµÄÄÚ´æ¶ÔÏóµÄ¾ä±ú¡£¡¡¡¡
Win32½ø³Ì¿ÉÒÔÍêÈ«µÄʹÓñê×¼µÄC¿âº¯Êýmalloc¡¢freeµÈÀ´²Ù×÷ÄÚ¡¡
´æ¡£ÔÚWindowsµÄÔçÆÚ°æ±¾ÖÐʹÓÃÕâЩº¯Êý£¬½«¿ÉÄÜ´øÀ´ÎÊÌâÒþ»¼£¬¡¡
µ«ÊÇʹÓÃWin32¡¡¡¡¡¡APIµÄÓ¦ÓóÌÐòÖÐÔò²»»á¡£¾ÙÀýÀ´Ëµ£¬Ê¹ÓÃmalloc·Ö¡¡
Åä¹Ì¶¨Ö¸Õ뽫²»ÄÜʹÓÿÉÒƶ¯ÄÚ´æµÄÓŵ㡣ÓÉÓÚϵͳ¿ÉÒÔͨ¹ýÒƶ¯Îï¡¡
ÀíÄÚ´æÒ³À´×ÔÓɵĹÜÀíÄڴ棬¶ø²»Ó°ÏìÐéÄâµØÖ·£¬Òò´ËÄÚ´æ¹ÜÀí½«²»¡¡
ÔÙ³ÉΪÎÊÌâ¡£ÀàËƵģ¬Ô¶Ö¸ÕëºÍ½üÖ¸ÕëÖ®¼ä²»ÔÙÓвî±ð¡£Òò´Ë£¬³ý·Ç¡¡
ÄãÏ£ÍûʹÓÿɶªÆúÄڴ棬·ñÔòÍêÈ«¿ÉÒÔ½«±ê×¼µÄC¿âº¯ÊýÓÃÓÚÄÚ´æ¹Ü¡¡
Àí¡£¡¡¡¡
Win32¡¡¡¡¡¡APIÌṩÁËһϵÁеÄÐéÄâÄڴ溯ÊýÀ´²Ù×÷»ò¾ö¶¨ÐéÄâµØÖ·¿Õ¼ä¡¡
ÖеÄÒ³µÄ״̬¡£Ðí¶àÓ¦ÓóÌÐòʹÓñê×¼µÄ·ÖÅ亯ÊýGlobalAlloc¡¢¡¡
LocalAlloc¡¢mallocµÈ¾Í¿ÉÒÔÂú×ãÆäÐèÒª¡£È»¶ø£¬ÐéÄâÄڴ溯ÊýÌṩ¡¡
ÁËһЩÕâЩ±ê×¼·ÖÅ亯ÊýËù²»¾ßÓеŦÄÜ£¬ËüÃÇ¿ÉÒÔ½øÐÐÏÂÃæµÄÕâЩ¡¡
²Ù×÷£º¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡156¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡l¡¡±£Áô½ø³ÌÐéÄâµØÖ·¿Õ¼äÖеÄÒ»¶Î¡¡±£ÁôµØÖ·¿Õ¼ä²¢²»ÎªËüÃÇ·ÖÅäÎï¡¡
¡¡¡¡Àí´æ´¢£¬¶øÖ»ÊÇ·ÀÖ¹ÆäËü·ÖÅä²Ù×÷ʹÓÃÕâ¶Î¿Õ¼ä¡£Ëü²¢²»Ó°ÏìÆä¡¡
¡¡¡¡Ëü½ø³ÌµÄÐéÄâµØÖ·¿Õ¼ä¡£±£ÁôÒ³·ÀÖ¹Á˶ÔÎïÀí´æ´¢µÄ²»±ØÒªµÄÀË¡¡
¡¡¡¡·Ñ£¬È»¶øËüÔÊÐí½ø³ÌΪ¿ÉÄÜÔö³¤µÄ¶¯Ì¬Êý¾Ý½á¹¹±£ÁôÒ»¶ÎµØÖ·¿Õ¡¡
¡¡¡¡¼ä£¬½ø³Ì¿ÉÒÔÔÚÐèÒªµÄʱºòΪÕâЩ¿Õ¼ä·ÖÅäÎïÀí´æ´¢¡£¡¡¡¡
¡¡l¡¡Õ¼Óýø³ÌÐéÄâµØÖ·¿Õ¼äÖеı£ÁôÒ³µÄÒ»²¿·Ö£¬ÒÔʹµÃÎïÀí´æ´¢¡¡£¨ÎÞ¡¡
¡¡¡¡ÂÛÊÇRAM»¹ÊÇ´ÅÅ̿ռ䣩ֻ¶ÔÕýÔÚ½øÐзÖÅäµÄ½ø³Ì¿ÉÓᣡ¡¡¡
¡¡l¡¡Ö¸¶¨ÔÊÐí¶Áд´æÈ¡¡¢Ö»¶Á´æÈ¡»ò²»ÔÊÐí´æÈ¡µÄÕ¼ÓÃÒ³ÇøÓò¡£ÕâºÍ¡¡
¡¡¡¡±ê×¼µÄ·ÖÅ亯Êý×ÜÊÇ·ÖÅäÔÊÐí¶Áд´æÈ¡µÄÒ³²»Í¬¡£¡¡¡¡
¡¡l¡¡ÊÍ·ÅÒ»¶Î±£ÁôÒ³£¬Ê¹µÃµ÷ÓÃÏß³ÌÔÚËæºóµÄ·ÖÅä²Ù×÷ÖпÉÒÔʹÓÃÕâ¡¡
¡¡¡¡¶ÎÐéÄâµØÖ·¡£¡¡¡¡
¡¡l¡¡È¡Ïû¶ÔÒ»¶ÎÒ³µÄÕ¼Óã¬ÊÍ·ÅËüÃǵÄÎïÀí´æ´¢£¬Ê¹ËüÃÇ¿ÉÒÔÆäËü½ø¡¡
¡¡¡¡³ÌÔÚËæºóµÄ·ÖÅäÖÐʹÓᣡ¡¡¡
¡¡l¡¡ÔÚÎïÀíÄÚ´æRAMÖÐËø¶¨Ò»¸ö»ò¶à¸öÕ¼ÓÃÒ³£¬ÒÔÃâϵͳ½«ÕâЩҳ½»»»¡¡
¡¡¡¡µ½Ò³ÃæÎļþÖС£¡¡¡¡
¡¡l¡¡»ñµÃ¹ØÓÚµ÷ÓÃÏ̻߳òÖ¸¶¨Ï̵߳ÄÐéÄâµØÖ·¿Õ¼äÖеÄÒ»¶ÎÒ³µÄÐÅ¡¡
¡¡¡¡Ï¢¡£¡¡¡¡
¡¡l¡¡¸Ä±äµ÷ÓÃÏ̻߳òÖ¸¶¨Ï̵߳ÄÐéÄâµØÖ·¿Õ¼äÖÐÖ¸¶¨Õ¼ÓÃÒ³¶ÎµÄ´æÈ¡¡¡
¡¡¡¡±£»¤¡£¡¡¡¡
ÐéÄâÄڴ溯Êý¶ÔÄÚ´æÒ³½øÐвÙ×÷¡£º¯ÊýʹÓõ±Ç°¼ÆËã»úµÄÒ³´óСÀ´¶Ô¡¡
Ö¸¶¨µÄ´óСºÍµØÖ·½øÐÐÉáÈë¡£¡¡¡¡
¿ÉÒÔʹÓú¯ÊýGetSystemInfoÀ´»ñµÃµ±Ç°¼ÆËã»úµÄÒ³´óС¡£¡¡¡¡
º¯ÊýVirtualAllocÍê³ÉÒÔϲÙ×÷£º¡¡¡¡
¡¡l¡¡±£ÁôÒ»¸ö»ò¶à¸ö×ÔÓÉÒ³¡£¡¡¡¡
¡¡l¡¡Õ¼ÓÃÒ»¸ö»ò¶à¸ö±£ÁôÒ³¡£¡¡¡¡
¡¡l¡¡±£Áô²¢Õ¼ÓÃÒ»¸ö»ò¶à¸ö×ÔÓÉÒ³¡£¡¡¡¡
Äã¿ÉÒÔÖ¸ÕëËù±£Áô»òÕ¼ÓõÄÒ³µÄÆðʼµØÖ·£¬»òÕßÈÃϵͳÀ´¾ö¶¨¡£º¯Êý¡¡
½«Ö¸¶¨µÄµØÖ·ÉáÈëµ½ºÏÊʵÄÒ³±ß½ç¡£±£ÁôÒ³ÊDz»¿É·ÃÎʵģ¬µ«Õ¼ÓÃÒ³¡¡
¿ÉÒÔʹÓñê־λPAGE_READWRITE¡¢PAGE_READONLYºÍPAGE_NOACCESSÀ´¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡157¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
·ÖÅä¡£µ±Ò³±»Õ¼ÓÃʱ£¬´ÓÒ³ÃæÎļþÖзÖÅä´æ´¢¿Õ¼ä£¬Ã¿¸öÒ³½öÔÚµÚÒ»¡¡
´ÎÊÔͼ¶ÔÆä½øÐжÁд²Ù×÷ʱ±»³õʼ»¯²¢¼ÓÔص½ÎïÀíÄÚ´æÖС£¿ÉÒÔÓÃÒ»¡¡
°ãµÄÖ¸ÕëÒýÓÃÀ´·ÃÎÊÓÉVirtualAllocº¯Êý¡¡Õ¼ÓõÄÒ³¡£¡¡¡¡
º¯ÊýVirtualFreeÍê³ÉÏÂÃæµÄ²Ù×÷£º¡¡¡¡
¡¡¡¡l¡¡½â³ý¶ÔÒ»¸ö»ò¶à¸öÒ³µÄÕ¼Ó㬸ıäÆä״̬Ϊ±£Áô¡£½â³ý¶ÔÒ³µÄÕ½¡¡
¡¡¡¡¡¡Ê¤ÊÍ·ÅÓëÖ®Ïà¹ØµÄÎïÀí´æ´¢£¬Ê¹ÆäΪÆäËü½ø³Ì¿ÉÓá£ÈκÎÕ¼ÓÃÒ³¡¡
¡¡¡¡¡¡¿é¶¼¿ÉÒÔ±»½â³ýÕ¼Óᣡ¡¡¡
¡¡¡¡l¡¡ÊÍ·ÅÒ»¸ö»ò¶à¸ö±£ÁôÒ³¿é£¬¸Ä±äÆä״̬Ϊ¡¡×ÔÓÉ¡£ÊÍ·ÅÒ³¿éʹÕâ¶Î¡¡
¡¡¡¡¡¡±£Áô¿Õ¼ä¿ÉÒÔΪ½ø³Ì·ÖÅä¿Õ¼äʹÓᣱ£Á