ʹÓÃGnu gprof½øÐÐLinuxƽ̨ϵijÌÐò·ÖÎö
O.S ʹÓÃGnu gprof½øÐÐLinuxƽ̨ϵijÌÐò·ÖÎö
¹Ø ¼ü ´Ê£ºgprof callgraph º¯ÊýÏûºÄµÄʱ¼ä LinuxÓ¦Ó÷ÖÎö
ÔĶÁÌáʾ£º±¾ÎĽéÉÜÁËÈçºÎʹÓÃGnu gprof ¶ÔLinuxƽ̨ϵÄÏÖÓгÌÐò½øÐÐÓÅ»¯·ÖÎöºÍÉú³É³ÌÐòµ÷ÓÃͼ¡£Ö÷ҪƫÖØÓÚ¶ÔÉú³ÉºÍʹÓÃÁ÷³Ìͼ×÷½éÉÜ¡£
Gprof ¼ò½é:
Gprof¹¦ÄÜ£º´òÓ¡³ö³ÌÐòÔËÐÐÖи÷¸öº¯ÊýÏûºÄµÄʱ¼ä£¬¿ÉÒÔ°ïÖú³ÌÐòÔ±ÕÒ³öÖڶຯÊýÖкÄʱ×î¶àµÄº¯Êý¡£²úÉú³ÌÐòÔËÐÐʱºòµÄº¯Êýµ÷ÓùØϵ£¬°üÀ¨µ÷ÓôÎÊý£¬¿ÉÒÔ°ïÖú³ÌÐòÔ±·ÖÎö³ÌÐòµÄÔËÐÐÁ÷³Ì¡£
ÓÐÁ˺¯ÊýµÄµ÷ÓùØϵ£¬Õâ»áÈÿª·¢ÈËÔ±´ó´óÌá¸ß¹¤×÷ЧÂÊ£¬²»Ó÷ÑÐĵØÈ¥Ò»µãµãÕÒ³ö³ÌÐòµÄÔËÐÐÁ÷³Ì£¬Õâ¶ÔС³ÌÐòÀ´Ëµ¿ÉÄÜЧ¹û²»ÊǺÜÃ÷ÏÔ£¬µ«¶ÔÓÚÓм¸Íò£¬¼¸Ê®Íò´ú ÂëÁ¿µÄ¹¤³ÌÀ´Ëµ£¬Ð§ÂÊÊÇÎãÓ¹ÖÃÒɵģ¡¶øÇÒÕâ¸ö¹¦ÄܶÔÓÚά»¤¾É´úÂë»òÕßÊÇ·ÖÎöOpen SourceÀ´ËµÄÇÊÇÏ൱ÓÕÈ˵ģ¬ÓÐÁ˵÷ÓÃͼ£¬¶Ô³ÌÐòµÄÔËÐпò¼ÜÒ²¾ÍÓÐÁËÒ»¸ö´óÌåÁ˽⣬֪µÀÁ˳ÌÐòµÄ“¹Ç¼Ü“£¬·ÖÎöËüÒ²¾Í²»»áÔÙÄÇôãȻ£¬ÓÈÆäÊǶÔ×Ô¼º²» ÊìϤµÄ´úÂëºÍOpen Source¡£·Ñ»°²»¶à˵ÁË£¬ÈÃÎÒÃÇ¿ªÊ¼ÎÒÃǵķÖÎöÖ®Âðɣ¡
Gprof ʵÏÖÔÀí£º
ͨ¹ýÔÚ±àÒëºÍ Á´½ÓÄãµÄ³ÌÐòµÄʱºò£¨Ê¹Óà -pg ±àÒëºÍÁ´½ÓÑ¡Ï£¬gcc ÔÚÄãÓ¦ÓóÌÐòµÄÿ¸öº¯ÊýÖж¼¼ÓÈëÁËÒ»¸öÃûΪmcount ( or “_mcount” , or “__mcount” , ÒÀÀµÓÚ±àÒëÆ÷»ò²Ù×÷ϵͳ)µÄº¯Êý£¬Ò²¾ÍÊÇ˵ÄãµÄÓ¦ÓóÌÐòÀïµÄÿһ¸öº¯Êý¶¼»áµ÷ÓÃmcount, ¶ømcount »áÔÚÄÚ´æÖб£´æÒ»Õź¯Êýµ÷ÓÃͼ£¬²¢Í¨¹ýº¯Êýµ÷ÓöÑÕ»µÄÐÎʽ²éÕÒ×Óº¯ÊýºÍ¸¸º¯ÊýµÄµØÖ·¡£ÕâÕŵ÷ÓÃͼҲ±£´æÁËËùÓÐÓ뺯ÊýÏà¹ØµÄµ÷ÓÃʱ¼ä£¬µ÷ÓôÎÊýµÈµÈµÄËùÓÐЊϢ¡£
Gprof»ù±¾Ó÷¨£º
1£® ʹÓà -pg ±àÒëºÍÁ´½ÓÄãµÄÓ¦ÓóÌÐò¡£
2£® Ö´ÐÐÄãµÄÓ¦ÓóÌÐòʹ֮Éú³É¹©gprof ·ÖÎöµÄÊý¾Ý¡£
3£® ʹÓÃgprof ³ÌÐò·ÖÎöÄãµÄÓ¦ÓóÌÐòÉú³ÉµÄÊý¾Ý¡£
4. gprof²úÉúµÄÐÅÏ¢½âÊÍÈçÏÂ:
5.³£ÓõÄGprof ÃüÁîÑ¡Ïî½âÊÍ
-b²»ÔÙÊä³öͳ¼Æͼ±íÖÐÿ¸ö×ֶεÄÏêϸÃèÊö¡£
-p Ö»Êä³öº¯ÊýµÄµ÷ÓÃͼ£¨Call graph µÄÄDz¿·ÖÐÅÏ¢£©¡£
-q Ö»Êä³öº¯ÊýµÄʱ¼äÏûºÄÁÐ±í¡£
-E Name²»ÔÙÊä³öº¯ÊýName ¼°Æä×Óº¯ÊýµÄµ÷ÓÃͼ£¬´Ë±êÖ¾ÀàËÆÓÚ -e ±êÖ¾£¬µ«ËüÔÚ×Üʱ¼äºÍ°Ù·Ö±Èʱ¼äµÄ¼ÆËãÖÐÅųýÁËÓɺ¯ÊýName ¼°Æä×Óº¯ÊýËùÓõÄʱ¼ä¡£
-e Name ²»ÔÙÊä³öº¯ÊýName ¼°Æä×Óº¯ÊýµÄµ÷ÓÃͼ£¨³ý·ÇËüÃÇÓÐδ±»ÏÞÖƵÄÆäËü¸¸º¯Êý£©¡£¿ÉÒÔ¸ø¶¨¶à¸ö -e ±êÖ¾¡£Ò»¸ö -e ±êÖ¾Ö»ÄÜÖ¸¶¨Ò»¸öº¯Êý¡£
-F Name Êä³öº¯ÊýName ¼°Æä×Óº¯ÊýµÄµ÷ÓÃͼ£¬ËüÀàËÆ
Ïà¹ØÎĵµ£º
LinuxÏÂÈí¼þµÄ°²×°ÓëжÔØ
ÔÚWindowsÏ°²×°Èí¼þʱ£¬Ö»ÐèÔËÐÐÈí¼þµÄ°²×°³ÌÐò£¨setup¡¢installµÈ£©»ò
ÕßÓÃzipµÈ½âѹËõÈí¼þ½â¿ª¼´¿É°²×°£¬ÔËÐз´°²×°³ÌÐò£¨uninstall¡¢unware¡¢“жÔØ”µÈ£©¾ÍÄÜ°ÑÈí¼þÇå³ý¸É¾»£¬ÍêȫͼÐλ¯µÄ²Ù×÷½çÃ棬¼òµ¥
µ½Ö»ÒªÓÃÊó±êÒ»Ö±µã»÷“ÏÂÒ»²½”¾Í¿ÉÒÔÁË¡£¶ø
Linux ......
¡¡±¾Õ½éÉÜLinuxÉÏ×î³£ÓõÄÎı¾±à¼Æ÷Vi¡£Îı¾±à¼Æ÷ÊÇËùÓмÆËã»úϵͳÖÐ×ʹÓõÄÒ»ÖÖ¹¤¾ß¡£Óû§ÔÚʹÓüÆËã»úµÄʱºò£¬ÍùÍùÐèÒª½¨Á¢×Ô¼ºµÄÎļþ£¬ÎÞÂÛÊÇÒ»°ãµÄÎı¾Îļþ¡¢Êý¾ÝÎļþ£¬»¹ÊDZàдµÄÔ´³ÌÐòÎļþ£¬ÕâЩ¹¤×÷¶¼Àë²»¿ª±à¼Æ÷¡£
¡¡¡¡LinuxϵͳÌṩÁËÒ»¸öÍêÕûµÄ±à¼Æ÷¼Ò×åϵÁУ¬ÈçEd¡¢Ex¡¢ViºÍEmacsµÈ£¬°´¹¦ÄÜËüÃÇ¿ÉÒÔ·ÖÎ ......
½ñÌìfedora¹ÒÁË£¬ÎªÁ˱¸·ÝÊý¾ÝÓÃubuntuµÄlivecdÀ´½øÐÐÊý¾Ý±¸·Ý£¬´ÓÍøÉÏ¿´µ½ÁËһƪÌû×Ó£¬
http://www.linux-sxs.org/storage/fedora2ubuntu.html
½â¾öÁËÎÊÌâ
ÄÚÈÝÈçÏ£º
Boot Ubuntu.
Install lvm2:
$ sudo apt-get install lvm2
Load the necessary module(s):
$ sudo modprobe dm-mod
Scan your system for LVM v ......
ÍøÉϺܶàÌû×ÓÎÊxhellÁ¬½ÓlinuxÖÐÎÄÂÒÂ룬¾ø´ó²¿·ÖÊǽ«LANGÊôÐÔÖµÉèÖÃÓ¢ÎÄ£¬¼´export LANG=en_US.UTF-8;
µ«ÊÇÎÒÃǽ«ÏµÍ³ÉèÖÃΪÖÐÎÄ£¬µ±È»ÊÇÒòΪ×Ô¼ºÓÃÖÐÎÄ¿ÉÒÔÌá¸ßЧÂÊ£¬¼õÉÙ³ö´í¡£
ÕâÖÖ·½Ê½Ö»ÄÜÖα겻ÄÜÖα¾£¬Ï´ÎʹÓÃsshÁ¬linuxʱ»¹ÊÇ»áÂÒÂ룬
ÏÖÔÚ½«ÎÒ×Ô¼ºµÄ½â¾ö·½Ê½¹²Ïí¸ø´ó¼Ò¡£
±à¼/etc/sysconfig/i18n
½«ÎļþÖе ......
ÒÔÏÂÔÚcentos5.3ÉÏʵÑé¡£ÔÚlinuxÖÐsignalº¯ÊýÊÇͨ¹ýµ÷ÓÃsigactionÀ´ÊµÏֵģ¬ÓÉ´ËËü²»´æÔÚÐźŶªÊ§ÒÔ¼°Ã¿´ÎÐźŴ¦Àíºó»á°ÑÐźŴ¦Àí¸Ä³ÉĬÈÏ´¦Àí·½Ê½¡£µ«¶ÔÓÚϵͳµ÷Óú¯Êý±»ÐźŴò¶Ïʱ£¬ÏµÍ³µ÷ÓÃÊÇ·ñ»á×Ô¶¯Æô¶¯ºÃÏñûÔõô˵Ã÷¡£²»¹ý¿ÉÒÔ×Ô¼º¶¯ÊÖ¿´Ò»Ï£º
signal(SIGTERM, term_handle ......