Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

linuxÄں˵ÄһЩԤ¶¨Òå

ËùÓеÄÄں˴úÂ룬»ù±¾¶¼°üº¬ÁËlinux\compile.hÕâ¸öÎļþ£¬ËùÒÔËüÊÇ»ù´¡£¬´òËãÏÈ·ÖÎöÕâ¸öÎļþÀïµÄ´úÂë¿´¿´£¬ÓпÕÔÙ·ÖÎö·ÖÎöÆäËüµÄ´úÂë¡£
Ê×ÏÈÓ¡ÈëÑÛÁ±µÄÊǶÔ__ASSEMBLY__Õâ¸öºêµÄÅжϣ¬Õâ¸ö±äÁ¿Êµ¼ÊÊÇÔÚ±àÒë»ã±à´úÂëµÄʱºò£¬ÓɱàÒëÆ÷ʹÓÃ-DÕâÑùµÄ²ÎÊý¼Ó½øÈ¥ µÄ£¬AFLAGSÕâ¸ö±äÁ¿Ò²¶¨ÒåÁËÕâ¸ö±äÁ¿£¬gcc»á°ÑÕâ¸öºê¶¨ÒåΪ1¡£ÓÃÔÚÕâÀÊÇÒòΪ»ã±à´úÂëÀ²»»áÓõ½ÀàËÆÓÚ__userÕâÑùµÄÊôÐÔ£¨¹ØÓÚ __userÕâÑùµÄÊôÐÔÊÇÔõô»Ø×ÓÊ£¬±¾ÎĺóÃæ»áÌáµ½£©£¬ÒòΪÕâÑùµÄÊôÐÔÊÇÔÚ¶¨Ò庯ÊýµÄʱºò¼ÓµÄ£¬ÕâÑù±ÜÃâ²»±ØÒªµÄÔÚ±àÒë»ã±à´úÂëʱºòµÄÒýÓá£
½ÓÏÂÀ´ÊÇÒ»¸ö¶Ô__CHECKER__Õâ¸öºêµÄÅжϣ¬ÕâÀïÐèÒª½²µÄ¶«Î÷±È½Ï¶à¡£
µ± ±àÒëÄں˴úÂëµÄʱºò£¬Ê¹ÓÃmake C=1»òC=2µÄʱºò£¬»áµ÷ÓÃÒ»¸ö½ÐSparseµÄ¹¤¾ß£¬Õâ¸ö¹¤¾ß¶ÔÄں˴úÂë½øÐмì²é£¬Ôõô¼ì²éÄØ£¬¾ÍÊÇ¿¿¶ÔÄÇЩÉùÃ÷¹ýSparseÕâ¸ö¹¤¾ßËùÄÜʶ±ðµÄÌØ ÐÔµÄÄں˺¯Êý»òÊDZäÁ¿½øÐмì²é¡£ÔÚµ÷ÓÃSparseÕâ¸ö¹¤¾ßµÄͬʱ£¬ÔÚSparse´úÂëÀ»á¼ÓÉÏ#define __CHECKER__ 1µÄ×ÖÑù¡£»»¾ä»°Ëµ£¬¾ÍÊÇ£¬Èç¹ûʹÓÃSparse¶Ô´úÂë½øÐмì²é£¬ÄÇôÄں˴úÂë¾Í»á¶¨Òå__CHECKER__ºê£¬·ñÔò¾Í²»¶¨Òå¡£
ËùÒÔÕâÀï¾ÍÄÜ¿´³öÀ´£¬ÀàËÆÓÚ__attribute__((noderef, address_space(1)))ÕâÑùµÄÊôÐÔ¾ÍÊÇSparseÕâ¸ö¹¤¾ßËùÄÜʶ±ðµÄÁË¡£
ÄÇôÕâЩ¸öÊôÐÔÊǸÉʲôÓõÄÄØ£¬ÎÒÒ»¸ö¸ö×ö½éÉÜ¡£
Õâ ÑùµÄÊôÐÔ˵Ã÷£¬ÓÐÒ»²¿·ÖÔÚgccµÄÎĵµÀﻹûÓмӽøÈ¥£¬ÖÁÉÙÎÒÔÚgcc 4.3.2µÄÌØÐÔÀïûÓп´µ½£¬ÍøÉÏÓиçÃÇÎÊÀàËÆµÄÎÊÌ⣬Greg¶ÔËû½øÐÐÁ˽â´ð£¬È»ºóËû¶ÔGreg±§Ô¹ÎĵµµÄÊ£¬Greg¶ÔËû˵£¬ËûÓÐʱ¼ä±§Ô¹µÄ»°£¬»¹²» Èç×Ô¼ºÀ´¸üÐÂÎĵµ¡£Ëû²»ÄܶÔÒ»¸öÃâ·Ñ¹¤¾ßµÄÎĵµÓÐÈç´ËÖ®¸ßµÄÒªÇ󣬳ý·ÇËû¸¶·Ñ¡£
# define __user  __attribute__((noderef, address_space(1)))
__userÕâ¸öÌØÐÔ£¬¼´__attribute__((noderef, address_space(1)))£¬ÊÇÓÃÀ´ÐÞÊÎÒ»¸ö±äÁ¿µÄ£¬Õâ¸ö±äÁ¿±ØÐëÊǷǽâ³ý²Î¿¼£¨no dereference£©µÄ£¬¼´Õâ¸ö±äÁ¿µØÖ·±ØÐëÊÇÓÐЧµÄ£¬¶øÇÒ±äÁ¿ËùÔڵĵØÖ·¿Õ¼ä±ØÐëÊÇ1£¬¼´Óû§³ÌÐò¿Õ¼äµÄ¡£
ÕâÀï°Ñ³ÌÐò¿Õ¼ä·Ö³ÉÁË3¸ö²¿·Ö£¬0±íʾnormal space£¬¼´ÆÕͨµØÖ·¿Õ¼ä£¬¶ÔÄں˴úÂëÀ´Ëµ£¬µ±È»¾ÍÊÇÄÚºË¿Õ¼äµØÖ·ÁË¡£1±íʾÓû§µØÖ·¿Õ¼ä£¬Õâ¸ö²»Óöི£¬»¹ÓÐÒ»¸ö2£¬±íʾÊÇÉ豸µØÖ·Ó³Éä¿Õ¼ä£¬ÀýÈçÓ²¼þÉ豸µÄ¼Ä´æÆ÷ÔÚÄÚºËÀïËùÓ³ÉäµÄµØÖ·¿Õ¼ä¡£
ËùÒÔÔÚÄں˺¯ÊýÀÓÐÒ»¸öcopy_to_userµÄº¯Êý£¬º¯ÊýµÄ²ÎÊý¶¨Òå¾ÍʹÓÃÁËÕâÖÖ·½Ê½¡£µ±È»£¬ÕâÖÖÌØÐÔ¼ì²é£¬Ö»Óе±»úÆ÷Éϰ²×°ÁËSparseÕâ¸ö¹¤¾ß£¬¶øÇÒ½øÐÐÁ˱àÒëµÄʱºòµ


Ïà¹ØÎĵµ£º

ÔÚLinuxÖÐʵÏÖ´óÈÝÁ¿ NAND FlashµÄYAFFS2Îļþϵͳ

·ÖÎöÁËǶÈëʽ»·¾³ÖÐYAFFS/YAFFS2ÎļþϵͳµÄÓŵ㣬Ìá³öYAFFS2²»½öÖ§³ÖСÈÝÁ¿µÄNAND flash£¬¶Ô´óÈÝÁ¿NAND flash¸ü¾ßÓÐÓÅÊÆ¡£²¢½éÉÜÁËYAFFS/YAFFS2Îļþϵͳ½á¹¹¡£×ÅÖØ½«YAFFS2ÎļþϵͳÔÚǶÈëʽLinuxϵͳÖеÄʵÏÖ¹ý³Ì°üÀ¨ÅäÖᢱàÒëÒÔ¼°²âÊÔÕû¸öÍêÕû¹ý³Ì×÷ÁËÏêϸµÄÂÛÊö¡£
¹Ø¼ü´Ê NAND flash£¬YAFFS/YAFFS2£¬Ç¶ÈëʽLinuxϵͳ
......

ʹÓà GDB µ÷ÊÔ Linux Èí¼þ

×÷Õߣºdio
email: hao@peng.com.cn
ÈÕÆÚ£º8/21/2001 1:00:47 PM
ÄÚÈÝ£º
±àÒë
ÔËÐÐ gdb
µ÷ÊԻỰʾÀý
ʹÓöϵã
¸ü¶à¶ÏµãºÍ¹Û²ìµã
Core Îļþ
¶ÑÕ»¸ú×Ù
Á¬½Óµ½ÆäËü½ø³Ì
ÆäËüС¼¼ÇÉ
½áÊøÓï
²Î¿¼×ÊÁÏ
¹ØÓÚ×÷Õß
GNU µ÷ÊÔÆ÷¼ò½é
×÷Õß:David Seager
Linux µÄ´ó²¿·ÖÌØÉ«Ô´×ÔÓÚ shell µÄ GNU µ÷ÊÔÆ÷ ......

Linux±à³Ì:getopt_long¼°ÆäʹÓÃ

LinuxϵͳÏ£¬ÐèÒª´óÁ¿µÄÃüÁîÐÐÑ¡ÏÈç¹û×Ô¼ºÊÖ¶¯½âÎöËûÃǵĻ°ÊµÔÚÊÇÓÐÎ¥Èí¼þ¸´ÓõÄ˼Ï룬²»¹ý»¹ºÃ£¬GNU C libraryÁô¸øÎÒÃÇÒ»¸ö½âÎöÃüÁîÐеĽӿÚ(X/Open¹æ·¶)£¬ºÃºÃʹÓÃËü¿ÉÒÔʹÄãµÄ³ÌÐò¸Ä¹Û²»ÉÙ¡£
ʹÓÃgetopt_long()ÐèÒªÒýÈëÍ·Îļþ
#include <getopt.h>
     ÏÖÔÚÎÒÃÇʹÓÃÒ»¸öÀý×ÓÀ´ËµÃ÷Ëü ......

ѧϰLinux(zhuan)

Ëæ×ÅLinuxÓ¦ÓõÄÀ©Õ¹Ðí¶àÅóÓÑ¿ªÊ¼½Ó´¥Linux£¬¸ù¾ÝѧϰWindwosµÄ¾­ÑéÍùÍùÓÐһЩãȻµÄ¸Ð¾õ£º²»Öª´ÓºÎ´¦¿ªÊ¼Ñ§Æð¡£ÕâÀï½éÉÜѧϰLinuxµÄһЩ½¨Òé¡£
Ò»¡¢´Ó»ù´¡¿ªÊ¼£º ³£³£ÓÐЩÅóÓÑÔÚLinuxÂÛ̳ÎÊһЩÎÊÌ⣬²»¹ý£¬ÆäÖдó¶àÊýµÄÎÊÌâ¶¼ÊǺܻù´¡µÄ¡£ÀýÈ磺ΪʲôÎÒʹÓÃÒ»¸öÃüÁîµÄʱºò£¬ÏµÍ³¸æËßÎÒÕÒ²»µ½¸ÃĿ¼£¬ÎÒÒªÈçºÎÏÞÖÆÊ¹Ó ......

¼¸ÖÖlinuxÄÚºËÎļþµÄÇø±ð

vmlinux  ±àÒë³öÀ´µÄ×îԭʼµÄÄÚºËÎļþ£¬Î´Ñ¹Ëõ¡£
zImage   ÊÇvmlinux¾­¹ýgzipѹËõºóµÄÎļþ¡£
bzImage bz±íʾ“big zImage”£¬²»ÊÇÓÃbzip2ѹËõµÄ¡£Á½ÕߵIJ»Í¬Ö®´¦ÔÚÓÚ£¬zImage½âѹËõÄں˵½µÍ¶ËÄÚ´æ(µÚÒ»¸ö640K)£¬bzImage½âѹËõÄں˵½¸ß¶ËÄÚ´æ(1MÒÔÉÏ)¡£Èç¹ûÄں˱ȽÏС£¬ÄÇô²ÉÓÃzImage»òbzI ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ