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

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

×÷Õߣºdio
email: hao@peng.com.cn
ÈÕÆÚ£º8/21/2001 1:00:47 PM
ÄÚÈÝ£º
±àÒë
ÔËÐÐ gdb
µ÷ÊԻỰʾÀý
ʹÓöϵã
¸ü¶à¶ÏµãºÍ¹Û²ìµã
Core Îļþ
¶ÑÕ»¸ú×Ù
Á¬½Óµ½ÆäËü½ø³Ì
ÆäËüС¼¼ÇÉ
½áÊøÓï
²Î¿¼×ÊÁÏ
¹ØÓÚ×÷Õß
GNU µ÷ÊÔÆ÷¼ò½é
×÷Õß:David Seager
Linux µÄ´ó²¿·ÖÌØÉ«Ô´×ÔÓÚ shell µÄ GNU µ÷ÊÔÆ÷£¬Ò²³Æ×÷ gdb¡£gdb ¿ÉÒÔÈÃÄú²é¿´³ÌÐòµÄÄÚ²¿½á¹¹¡¢´òÓ¡±äÁ¿Öµ¡¢ÉèÖöϵ㣬ÒÔ¼°µ¥²½µ÷ÊÔÔ´´úÂë¡£ËüÊǹ¦Äܼ«ÆäÇ¿´óµÄ¹¤¾ß£¬ÊÊÓÃÓÚÐÞ¸´³ÌÐò´úÂëÖеÄÎÊÌâ¡£ÔÚ±¾ÎÄÖУ¬ÎÒ½«³¢ÊÔ˵Ã÷ gdb Óжà°ô£¬¶àʵÓá£
±àÒë
¿ªÊ¼µ÷ÊÔ֮ǰ£¬±ØÐëÓóÌÐòÖеĵ÷ÊÔÐÅÏ¢±àÒëÒªµ÷ÊԵijÌÐò¡£ÕâÑù£¬gdb ²ÅÄܹ»µ÷ÊÔËùʹÓõıäÁ¿¡¢´úÂëÐкͺ¯Êý¡£Èç¹ûÒª½øÐбàÒ룬ÇëÔÚ gcc£¨»ò g++£©ÏÂʹÓöîÍâµÄ -g Ñ¡ÏîÀ´±àÒë³ÌÐò£º
gcc -g eg.c -o eg
ÔËÐÐ gdb
ÔÚ shell ÖУ¬¿ÉÒÔʹÓà gdb ÃüÁî²¢Ö¸¶¨³ÌÐòÃû×÷Ϊ²ÎÊýÀ´ÔËÐÐ gdb£¬ÀýÈç gdb eg£»»òÕßÔÚ gdb ÖУ¬¿ÉÒÔʹÓà file ÃüÁîÀ´×°ÈëÒªµ÷ÊԵijÌÐò£¬ÀýÈç file eg¡£ÕâÁ½ÖÖ·½Ê½¶¼¼ÙÉèÄúÊÇÔÚ°üº¬³ÌÐòµÄĿ¼ÖÐÖ´ÐÐÃüÁî¡£×°Èë³ÌÐòÖ®ºó£¬¿ÉÒÔÓà gdb ÃüÁî un À´Æô¶¯³ÌÐò¡£
µ÷ÊԻỰʾÀý
Èç¹ûÒ»ÇÐÕý³££¬³ÌÐò½«Ö´Ðе½½áÊø£¬´Ëʱ gdb ½«ÖØÐ»ñµÃ¿ØÖÆ¡£µ«Èç¹ûÓдíÎ󽫻áÔõôÑù£¿ÕâÖÖÇé¿öÏ£¬gdb »á»ñµÃ¿ØÖƲ¢ÖжϳÌÐò£¬´Ó¶ø¿ÉÒÔÈÃÄú¼ì²éËùÓÐÊÂÎïµÄ״̬£¬Èç¹ûÔËÆøºÃµÄ»°£¬¿ÉÒÔÕÒ³öÔ­Òò¡£ÎªÁËÒý·¢ÕâÖÖÇé¿ö£¬ÎÒÃǽ«Ê¹ÓÃÒ»¸öʾÀý³ÌÐò£º
´úÂëʾÀý eg1.c
#include
int wib(int no1, int no2)
{
int result, diff;
diff = no1 - no2;
result = no1 / diff;
return result;
}
int main(int argc, char *argv[])
{
int value, div, result, i, total;
value = 10;
div = 6;
total = 0;
for(i = 0; i < 10; i++)
{
result = wib(value, div);
total += result;
div++;
value--;
}
printf("%d wibed by %d equals %dn", value, div, total);
return 0;
}
Õâ¸ö³ÌÐò½«ÔËÐÐ 10 ´Î for Ñ­»·£¬Ê¹Óà wib() º¯Êý¼ÆËã³öÀÛ»ýÖµ£¬×îºó´òÓ¡³ö½á¹û¡£
ÔÚÄúϲ»¶µÄÎı¾±à¼­Æ÷ÖÐÊäÈëÕâ¸ö³ÌÐò£¨Òª±£³ÖÏàͬµÄÐоࣩ£¬±£´æÎª eg1.c£¬Ê¹Óà gcc -g eg1.c -o eg1 ½øÐбàÒ룬²¢Óà gdb eg1 Æô¶¯ gdb¡£Ê¹Óà un ÔËÐгÌÐò¿ÉÄÜ»á²úÉúÒÔÏÂÏûÏ¢£º
Program received signal SIGFPE, Arithmetic exception.
0x80483ea in wib (no1=8, no2=8) at eg1.c:7
7 result = no1 / diff;
(gdb)
g


Ïà¹ØÎĵµ£º

Linux ÄÚºËÅäÖü°±àÒë¼ò½é

1.ΪʲôҪ±àÒëLinux ÄÚºË
¡¡¡¡ÖÚËùÖÜÖª,LinuxÊÇ¿ª·ÅÔ´ÂëµÄ²Ù×÷ϵͳ,¿ª·ÅÔ´ÂëÈí¼þ´ø¸øÎÒÃÇÕâ¼ÆËã»úˮƽÏà¶ÔÂäºóµÄÈËȺµÄ×î´óºÃ´¦,¾ÍÊÇ¿ÉÒÔ¿ìËÙѧϰÊÀ½ç¸ßˮƽµÄ³ÌÐò(Ìåϵ½á¹¹¼°±à³Ì·½·¨µÈµÈ),´Ó¶ø¿ìËÙÌá¸ß×ÔÉíˮƽ¡£È»¶øÕâ±¾Éí£¬Ò²Ê¹¶àÊý¿ª·ÅÔ´ÂëÈí¼þÔÚ±àÂëÒ×ÓÃÐÔ¡¢Õë¶ÔÐÔ·½Ãæ±È²»ÉÏMicrosoftµÈרҵÈí¼þ¹«Ë¾µÄ²úÆ·¡£Ê¹Óÿª ......

linuxÏÂÒ»¿î²»´íµÄ±³µ¥´ÊÈí¼þ£¨reciteword£©

×î½üÔÚ×¼±¸gre¿¼ÊÔ£¬ÓÚÊÇÕÒÁËÕÒlinuxϵı³µ¥´ÊÈí¼þ£¬¾ÍÊÇÕâ¸öexciteword£¬ºÃÏñÊǸúÇáÇáËÉËɱ³µ¥´Ê²î²»¶à£¬Í¦ºÃÓõġ£
°²×°·½·¨£º
ubuntuÏÂ×î¼òµ¥µÄ·½·¨¾ÍÊÇapt-get installÁË¡£
»¹¿ÉÒÔ´Ó¹ÙÍøÉÏÏÂÔØrpm°ü£¬Ê¹ÓÃalienתΪdeb°ü¡£alien¹¤¾ßûÓеϰ¿ÉÒÔʹÓÃapt-get install alienÀ´ÏÂÔØ¡£×ª»¯Îªdeb°üºó£¬Ë«»÷×Ô¶¯°²×°¾Í¿ÉÒ ......

Linux ÏÂSVNµÄʹÓÃ

Linux ÏÂSVNµÄʹÓÃ
Ò»¡¢install
sudo aptitude install subversion
¶þ¡¢checkout
sudo svn --username fpzeng co https://********/
***
It's necessary to  replace my username fpzeng with yours.
Èý¡¢update
sudo svn update
¾ßÌåÓõ½±ðµÄÔÙ˵£¬½ñÌì¸Õ×°ÉÏ ......

LinuxÐéÄâ»ú°²×°VMware Tools

LinuxÐéÄâ»úϰ²×°VMware Tools
VMware ToolsËùÔÚλÖãº
VMware °²×°Â·¾¶
\VMware\VMwareWorkstation\linux.iso
1.ÐÞ¸ÄrootÓû§ÃÜÂë
10:32:36 zhangzhen@zhangzhen-desktop:~$ sudo passwd root
[sudo] password for zhangzhen:
ÊäÈëÐ嵀 UNIX ¿ÚÁ
ÖØÐÂÊäÈëÐ嵀 UNIX ¿ÚÁ
passwd£ºÒѳɹ¦¸üÐÂÃÜÂë
10:33 ......

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

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