Linux Cµ÷ÊÔÈëÃÅ
1.×Ô¶¨ÒåÊä³ö
Ïë±Ø´ó¼Ò¶¼ÓÐÀûÓÃÊä³öº¯ÊýÈçprintfÀ´°ïÖúÎÒÃǵ÷ÊÔ³ÌÐòµÄ¾Àú£¬ÕâÊÇÒ»ÖֱȽÏÔʼµÄ³ÌÐòµ÷ÊÔ¸¨Öú·½·¨£¬ÔÚLinuxÏÂÒ²¿ÉÒÔΪÎÒÃÇËùÓᣲ»¹ýÕâÖÖ·½·¨ÓÐÒ»¸öÃ÷ÏÔµÄȱµã£¬¾ÍÊÇÔÚµ÷ÊÔÍêºóÎÒÃDZØÐë×¢ÊÍ»òɾ³ýµôÕâЩ¸¨Öú´úÂë¡£Linux CÌṩÁË-DDEBUGÕâ¸ö±àÒë±ê¼ÇÀ´¶¨ÒåDEBUGÕâ¸ö·ûºÅ£¬½èÖúÓڸ÷ûºÅ£¬ÎÒÃÇ¿ÉÒÔÔÚÓ¦ÓóÌÐòÖÐÌí¼Ó¶îÍâ´úÂë²¢¸ù¾ÝÐèÒª¾ö¶¨Ö´ÐÐÓë·ñ¡£
È磺
#include<stdio.h>
//*******dtest.c*******
int main()
{
#ifdef DEBUG
printf("Debug output......\n");
#endif
printf("Main function ended!\n";
}
ÔËÐУº
$ cc -o dtest dtest.c
$ ./dtest
Main function ended!
$ rm dtest
$ cc -o dtest -DDEBUG dtest.c
$ ./dtest
Debug output......
Main function ended!
ͨ¹ýÒÔÉÏʾÀý£¬ÄãÓ¦¸ÃÃ÷°×ÁË-DDEBUG±ê¼ÇµÄÓ÷¨Á˰ɣ¬ºÇºÇ~~~Ò²ÐíÄã»áÏ룬Èç¹ûÎÒÓкü¸¶Îµ÷ÊÔ´úÂ룬¶øÎÒÏ£Íû¸ù¾ÝÐèҪÿ´ÎÑ¡ÔñÏàÓ¦µÄÒ»¶ÎÀ´ÔËÐУ¬ÕâÊÇ·ñÄÜʵÏÖÄØ£¿²»ÅÂ×ö²»µ½£¬¾ÍÅÂÏë²»µ½¡£ÊÂʵÉÏÎÒÃÇ¿ÉÒÔ·½±ãµÄʵÏÖÕâÖÖ¹¹Ï룬ÈçÏ£º
#define BASIC_DEBUG 1
#define EXTRA_DEBUG 2
#define SUPER_DEBUG 4
//code 1
# if (DEBUG & BASIC_DEBUG £©
printf¡£¡£¡£
#endif
//code 2
# if (DEBUG & EXTRA_DEBUG £©
printf¡£¡£¡£
#endif
//code 3
# if (DEBUG & SUPER_DEBUG £©
printf¡£¡£¡£
#endif
ÉÏÊö´úÂëÖÐÎÒÃÇ×Ô¶¨ÒåÁ˼¸¸öºê±äÁ¿£¬Í¨¹ý"&“À´¾ö¶¨´úÂë¶ÎµÄÖ´ÐÐÓë·ñ¡£ÎÒÃÇÖªµÀ”&“Ϊ°´Î»È¡ÓàÔËËã·û£¬ËùÒÔµ±DEBUGµÄֵΪ1ʱ£¬Ö»ÓÐcode 1»áÖ´ÐУ¬µ±DEBUGµÄֵΪ2ʱ£¬Ö»ÓÐcode 2»áÖ´ÐУ¬¶øµ±DEBUGµÄֵΪ3ʱ£¬code 1ºÍcode 2¶¼»áÖ´ÐУ¬ÒÀ´ÎÀàÍÆ¡£¡£¡£¿ÉÊÇÎÒÃÇÈçºÎ¸ù¾ÝÐèÒªÉèÖÃDEBUGµÄֵĨ£¿Õ⻹µÃ¿´-DDEBUG±ê¼Ç£¬ÔÚÃüÁîÌáʾ·ûÏÂÖ±½Ó¸ø-DDEBUG¸³Öµ¾ÍOKÁË£¬Èçcc -o dtest
-DDEBUG=5 dtest.c
2 µ÷ÊÔ¹¤¾ß(gdb)
Ç°Ãæ½éÉܵĵ÷ÊÔ·½·¨Ö»ÊÇÒ»ÖÖ°ïÖúÎÒÃǵ÷ÊԵĸ
Ïà¹ØÎĵµ£º
ϵͳµ÷ÓÃÊÇÓ¦ÓóÌʽºÍ²Ù×÷ϵͳÄÚºËÖ®¼äµÄ¹¦Äܽӿڡ£ÆäÖ÷ҪĿµÄÊÇʹµÃÓû§
ÄÜʹÓòÙ×÷ϵͳÌṩµÄÓйØÉ豸¹ÜÀí¡¢ÊäÈë/ÊäÈëϵͳ¡¢ÎļþϵͳºÍ½ø³Ì¿ØÖÆ¡¢
ͨÐż°´æ´¢¹ÜÀíµÈ·½ÃæµÄ¹¦ÄÜ£¬¶ø²»±ØÁ˽âϵͳ³ÌʽµÄÄÚ²¿½á¹¹ºÍÓйØÓ²¼þϸ
½Ú£¬´Ó¶øÆðµ½¼õÇáÓû§¸ºµ£ºÍ±£»¤ÏµÍ³¼°Ìá¸ß×ÊÔ´ÀûÓÃÂʵÄ×÷Óá£
¡¡¡¡Linux²Ù×÷ϵͳ×÷ΪÃâ·ÑÈí¼þ ......
³£³£ÓÐÈËÎÊ£ºÎÒÏëѧϰÄںˣ¬ÐèҪʲô»ù´¡Âð£¿Linus Torvalds±¾ÈËÊÇÕâÑù»Ø´ðµÄ£ºÄã±ØÐëʹÓùýLinux¡£ Õâ¸ö¡¡»¹ÊÇÓеãÌ«·ºÁ˰ɣ¬ÎÒÏëÏÂÃæ¼¸¸ö»ù´¡¿ÉÄÜ»¹ÊÇÐèÒªµÄ£¬¾¡¹Ü²»Ò»¶¨±ØÐ裺
1, ¹ØÓÚ²Ù×÷ϵͳÀíÂÛµÄ×î³õ¼¶µÄ֪ʶ¡£²»ÐèҪͨ¶Á²¢Àí½â¡¶²Ù×÷ϵͳ¸ÅÄî¡·¡¶ÏÖ´ú²Ù×÷ϵͳ¡·µÈ¾ÞÖø£¬µ«×ÜÒªÖªµÀ·Öʱ£¨time-shared£©ºÍÊ ......
1. Q. How do you find out the processes that are currently running or a particular user?
A. ps -au Myname (-u by effective user ID (supports names)) (a - all users)
2. Q. How do you kill a process?
A. kill -9 8 (process_id 8) or kill -9 %7 ( ......
ÊÂÇéÓ¦¸Ã±»×öµÃ¾¡¿ÉÄܵļòµ¥£¬µ«²»ÊÇÈÎÒâµØ¼òµ¥»¯¡£
¨D¨D°®Òò˹̹
ËäÈ»×öºÃµÄ³ÌÐòÄܰ´ÏîÄ¿ÐèÇóÕýÈ·ÔËÐе½×îºóÒ»²½£¬µ«ÔÚǶÈëʽϵͳ¿ª·¢Öв¢²»×ÜÊÇÄܳɹ¦µÄ¡£ÓÉÓڵͳɱ¾µÄÐèÒªÓ²¼þÉè¼ÆÕß¼¸ºõ²»¿ÉÄÜÉè¼Æ³ö×ã¹»µÄÄÚ´æºÍ´¦ÀíÆ÷ÐÔÄÜÀ´Ê¹µÃ³ÌÐòÄܱ»ÔËÐС£µ±È»£¬ÔÚÈí¼þ¿ª·¢¹ý³ÌÖÐʹµÃ³ÌÐòÄܹ»ÕýÈ·ÔËÐÐÊǸüÖØÒªµÄ¡£ÎªÁËÕâµã£¬Í¨³£ ......
ǶÈëʽϵͳÓÉÓÚÊܹ¦ºÄ¡¢³É±¾ºÍÌå»ýµÈÒòËØµÄÖÆÔ¼£¬Ç¶Èëʽ΢´¦ÀíÆ÷µÄ´¦ÀíÄÜÁ¦Óë×ÀÃæÏµÍ³´¦ÀíÆ÷Ïà±ÈÒ²´æÔڽϴó²î¾à£¬¹ÊǶÈëʽϵͳ¶Ô³ÌÐòÔËÐеĿռäºÍʱ¼äÒªÇó¸üΪ¿Á¿Ì¡£
ͨ³££¬ÐèÒª¶ÔǶÈëʽӦÓóÌÐò½øÐÐÐÔÄÜÓÅ»¯£¬ÒÔÂú×ãǶÈëʽӦÓõÄÐÔÄÜÐèÇó¡£
1 ǶÈëʽ³ÌÐòÓÅ»¯µÄÀàÐÍ
&nbs ......