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

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 2.6Äں˵ÄÐÂËø»úÖÆ RCU

http://www.ibm.com/developerworks/cn/linux/l-rcu/
º¯ÊýÕªÒª£º
C´úÂë
/*¶ÁÕßÔÚ¶ÁÈ¡ÓÉRCU±£»¤µÄ¹²ÏíÊý¾ÝʱʹÓøú¯Êý±ê¼ÇËü½øÈë¶Á¶ËÁÙ½çÇø¡£*/ 
rcu_read_lock()  
/* 
¸Ãº¯ÊýÓërcu_read_lockÅä¶ÔʹÓã¬ÓÃÒÔ±ê¼Ç¶ÁÕßÍ˳ö¶Á¶ËÁÙ½çÇø¡£¼ÐÔÚÕâÁ½¸öº¯ÊýÖ®¼äµÄ´úÂëÇø³ÆÎª"¶Á¶ËÁÙ½çÇø" ......

ÊÕ¼¯µÄһЩ¼òµ¥µÄUNIX/LinuxÃæÊÔÌâ

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  ( ......

LinuxÏÂgsoapµÄ°²×°

ϵͳ£ºRHEL 5.1 & 5.3
gsoapÊǸöºÃ¶«¶«£¬Ëü¿ÉÄܺܺÃ×°£¬¿ÉÄÜÒ²ºÜÄÑ×°£¬È¡¾öÓÚÄãµÄϵͳÒѾ­°²×°ÁËʲô¿ª·¢°ü¡£
ÎÒÔÚ¶ą̀RHELÐéÄâ»ú£¨32bit & 64bit£©ÉϾù°²×°ÁËgsoap£¬ÆäÖÐÓÐһ̨ÊÇconfigureÖ®ºóÖ±½Ómake¾Í¸ã¶¨ÁË£¬ÁíÍâÁ½Ì¨¶¼ÊÇ»¹ÒªÕÛÌںܶàÆäËû¶«Î÷µÄ¡£
ÆäÖÐÓм¸¸öÐèҪ˵Ã÷µÄµØ·½ÊÇ£º
£¨1£©°²×°gsoap£¬ÄãÐèÒªÏÈ ......

×Ô¶¯¸ü¸Ä×ÀÃæ±³¾° c/c++ win32

Õâ¸ö³ÌÐò½ö¹©±à³Ì²Î¿¼
ÈôÏëÔÚÆ½Ê±Óã¬ÇëÏÂÔØÎ¢ÈíµÄwallpaper changer
ÎÒÕâ¸ö³ÌÐòʵÏÖÁ˶¨Ê±¸ü»»×ÀÃæ±³¾°µÄ¹¦ÄÜ
ÃüÁîÐÐ wallpaper "your images' directory path" time_in_minute
±à³ÌÒªµã
findfirstfile findnextfile ²éÕÒͼÏñÎļþ
SystemParametersInfo  ÐÞ¸ÄϵͳÐÅÏ¢£¬ÔÚÕâ¶ùµ±È»ÊÇ×ÀÃæ±³¾°
×¢²á±í²Ù×÷ ±£´æÐ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ