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

LinuxϳÌÐòµÄProfile¹¤¾ß

LinuxϳÌÐòµÄProfile¹¤¾ß
ÎÒÃÇÔÚд³ÌÐò£¬ÌرðÊÇǶÈëʽ³ÌÐòµÄʱºò£¬Í¨³£ÐèÒª¶Ô³ÌÐòµÄÐÔÄܽøÐзÖÎö£¬ÒÔ±ã³ÌÐòÄܹ»¸ü¿ì¸üºÃµØÔËÐУ¬´ïµ½ÊµÊ±£¨real-time£©µÄÄ¿µÄ¡£Èç¹û³ÌÐòºÜ´ó£¬·ÖÎöÆðÀ´¾ÍºÜÀ§ÄÑ¡£Èç¹ûÓиö¹¤¾ßÄܹ»×Ô¶¯½øÐгÌÐòµÄÐÔÄÜ·ÖÎö£¬ÄǾÍ×îºÃÁË¡£ÕâÀï½éÉÜÒ»ÖÖLinuxϳÌÐòµÄProfiling¹¤¾ß----GNU profiler¡£
GNU gprofÄܹ»´òÓ¡³ö³ÌÐòÔËÐÐÖи÷¸öº¯ÊýÏûºÄµÄʱ¼ä£¬¿ÉÒÔ°ïÖú³ÌÐòÔ±ÕÒ³öÖڶຯÊýÖкÄʱ×î¶àµÄº¯Êý¡£²úÉú³ÌÐòÔËÐÐʱºòµÄº¯Êýµ÷ÓùØϵ£¬°üÀ¨µ÷ÓôÎÊý£¬¿ÉÒÔ°ïÖú³ÌÐòÔ±·ÖÎö³ÌÐòµÄÔËÐÐÁ÷³Ì¡£ÓÐ Á˺¯ÊýµÄµ÷ÓùØϵ£¬Õâ»áÈÿª·¢ÈËÔ±´ó´óÌá¸ß¹¤×÷ЧÂÊ£¬²»Ó÷ÑÉñµØÈ¥Ò»µãµãÕÒ³ö³ÌÐòµÄÔËÐÐÁ÷³Ì£¬Õâ¶ÔС³ÌÐòÀ´Ëµ¿ÉÄÜЧ¹û²»ÊǺÜÃ÷ÏÔ£¬µ«¶ÔÓÚÓм¸Íò£¬¼¸Ê®Íò´ú ÂëÁ¿µÄ¹¤³ÌÀ´Ëµ£¬Ð§ÂÊÊÇÎãÓ¹ÖÃÒɵģ¡¶øÇÒÕâ¸ö¹¦ÄܶÔÓÚά»¤¾É´úÂë»òÕßÊÇ·ÖÎöOpen SourceÀ´ËµÄÇÊÇÏ൱ÓÕÈ˵ģ¬ÓÐÁ˵÷ÓÃͼ£¬¶Ô³ÌÐòµÄÔËÐпò¼ÜÒ²¾ÍÓÐÁËÒ»¸ö´óÌåÁ˽⣬֪µÀÁ˳ÌÐòµÄ“¹Ç¼Ü“£¬·ÖÎöËüÒ²¾Í²»»áÔÙÄÇôãȻ£¬ÓÈÆäÊǶÔ×Ô¼º²» ÊìϤµÄ´úÂëºÍOpen Source¡£
gprofµÄ»ù±¾Ó÷¨£º
1£® ʹÓà -pg Ñ¡Ïî±àÒëºÍÁ´½ÓÄãµÄÓ¦ÓóÌÐò
   
    ÔÚgcc±àÒë³ÌÐòµÄʱºò£¬¼ÓÉÏ-pgÑ¡ÏÀýÈ磺
    gcc -pg -o test test.c
    ÕâÑù¾ÍÉú³ÉÁË¿ÉÖ´ÐÐÎļþtest¡£Èç¹ûÊÇ´óÏîÄ¿£¬¾ÍÔÚmakefileÀïÃæÐ޸ıàÒëÑ¡Ï-pg·ÅÔÚÄÇÀﶼÐС£
2£® Ö´ÐÐÄãµÄÓ¦ÓóÌÐòʹ֮Éú³É¹©gprof ·ÖÎöµÄÊý¾Ý
    ÔËÐиղŵijÌÐò£º./test£¬ÕâÑù¾ÍÉú³ÉÁËÒ»¸ögmon.outÎļþ£¬¸ÃÎļþ¾Í°üº¬ÁËprofilingµÄÊý¾Ý¡£
3£® ʹÓÃgprof ·ÖÎöÄãµÄÓ¦ÓóÌÐòÉú³ÉµÄÊý¾Ý
    gprof test gmon.out > profile.txt
    ʹÓÃÉÏÃæµÄÃüÁgprof¾Í¿ÉÒÔ·ÖÎö³ÌÐòtestµÄÐÔÄÜ£¬½«profilingµÄ½á¹û·ÅÔÚprofile.txtÎļþÖУ¬´ò¿ª¾Í¿ÉÒÔ¿´µ½·ÖÎöµÄ½á¹û¡£Í¨¹ý¶Ô½á¹ûµÄ·ÖÎöÀ´¸Ä½øÎÒÃǵijÌÐò£¬´Ó¶ø´ïµ½ÎÒÃǵÄÄ¿µÄ¡£
GNU gprofÊǸöºÜ²»´íµÄ¹¤¾ß£¬´ó¼Òд³ÌÐòʱ¿ÉÒÔ¶àÓÃÓá£ÎÒÏÖÔÚÓÃgprofÀ´profilingÎҵijÌÐò£¬°ÑºÄʱ×î¶àµÄº¯Êý»òÔËËãÕÒ³öÀ´£¬ÓÃFPGAоƬʵÏÖ£¬´Ó¶ø´ïµ½real-timeµÄÄ¿µÄ¡£
 
 
gprofʹÓýéÉÜ
gprof½éÉÜ
gprofÊÇGNU profiler¹¤¾ß¡£¿ÉÒÔÏÔʾ³ÌÐòÔËÐеēflat profile”£¬°üÀ¨Ã¿¸öº¯ÊýµÄµ÷ÓôÎÊý£¬Ã¿¸öº¯ÊýÏûºÄµÄ´¦ÀíÆ÷ʱ¼ä¡£Ò²¿ÉÒÔÏÔʾ“µ÷ÓÃͼ”£¬°üÀ¨º¯ÊýµÄµ÷ÓùØϵ£¬Ã¿¸öº¯Êýµ÷Óû¨·ÑÁ˶àÉÙʱ¼ä


Ïà¹ØÎĵµ£º

´ÓLinuxµÄ½ø³Ìµ÷¶È»úÖÆÖÐÏëµ½µÄ

Linux³ÖÐøά»¤Ïà¹ØµÄÊý¾Ý½á¹¹£¨ÖîÈçrunqueue¡¢prio_array£©£¬²»¶Ï¸üнø³ÌµÄ¶¯Ì¬ÓÅÏȼ¶£¬²¢ÏàÓ¦µÄµ÷Õûʱ¼äƬ£¬´Ó¶øʵÏÖÁËO(1)¸´ÔӶȵĽø³Ìµ÷¶ÈËã·¨£¬¿ÉÒÔÔÚ³£Á¿Ê±¼äÄÚµ÷¶Èнø³ÌÉĮ̈ÔËÐУ¬¶ø²»ÊÜϵͳÖнø³Ì×ÜÊýµÄÓ°Ïì¡£
ÎÒ¾õµÃÕâÖÁÉÙÄÜ×ôÖ¤Èý¸öµÀÀí£º
£¨1£©Ð§Òæ¿ÉÒÔÀ´×ÔÓÚƽʱµãµãµÎµÎµØ»ýÀÛ£¨¹¦·ò¶¼ÔÚƽʱ£¬¶ø²¢·ÇÖ»Õë¶Ô ......

linuxµÄfreeÃüÁî

 [root@nonamelinux ~]# free
total used free shared buffers cached
Mem: 386024 377116 8908 0 21280 155468
-/+ buffers/cache: 200368 185656
Swap: 393552 0 393552
ÏÂÃæÊǶÔÕâЩÊýÖµµÄ½âÊÍ£º
µÚ¶þÐÐ(mem)£º
total:×ܼÆÎïÀíÄÚ´æµÄ´óС¡£
used:ÒÑʹÓöà´ó¡£
free:¿ÉÓÃÓжàÉÙ¡£
Shared:¶à¸ö½ø³Ì¹²ÏíµÄÄÚ ......

[ÕûÀí]Linux³£ÓÃÃüÁî

Îļþϵͳ¹ÒÔØ£ºmount
¸ñʽ£ºmount [-²ÎÊý] [É豸Ãû³Æ] [¹ÒÔصã]
ÆäÖг£ÓõIJÎÊý£º
¡¡¡¡ -t  Ö¸¶¨É豸µÄÎļþϵͳÀàÐÍ£¬³£¼ûµÄÓУº
¡¡¡¡      minix linux×îÔçʹÓõÄÎļþϵͳ
¡¡¡¡      ext2 linuxÄ¿Ç°³£ÓõÄÎļþϵͳ
¡¡¡¡      msdo ......

linux Ïß³ÌÓë½ø³Ì

1£®4 Ï̴߳´½¨µÄLinuxʵÏÖ
ÎÒÃÇÖªµÀ£¬LinuxµÄÏß³ÌʵÏÖÊÇÔÚºËÍâ½øÐеģ¬ºËÄÚÌṩµÄÊÇ´´½¨½ø³ÌµÄ½Ó¿Údo_fork()¡£ÄÚºËÌṩÁËÁ½¸öϵͳµ÷ÓÃ__clone()ºÍfork ()£¬×îÖÕ¶¼Óò»Í¬µÄ²ÎÊýµ÷ÓÃdo_fork()ºËÄÚAPI¡£µ±È»£¬ÒªÏëʵÏÖỊ̈߳¬Ã»ÓкËÐĶԶà½ø³Ì£¨ÆäʵÊÇÇáÁ¿¼¶½ø³Ì£©¹²ÏíÊý¾Ý¶ÎµÄÖ§³ÖÊDz»Ðеģ¬Òò´Ë£¬do_fork()ÌṩÁ˺ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ