¹ØÓÚLinux KernelÖеĺ궨ÒålikelyºÍunlikely
ת×Ôhttp://blog.163.com/ericxia_gnikam/blog/static/969208792008102545614453/
ÔÚLinux kernelµÄÔ´´úÂëÖУ¬¾³£Äܼûµ½if(likely(x))»òif(unlikely(x))Ö®ÀàµÄÓ÷¨£¬ÆäÈ·Çк¬ÒåÐèҪ˵Ã÷һϣ¬ÒÔ±ã¸üºÃµÄÀí½âkernelµÄÔ´´úÂë¡£
likelyÓëunlikelyÕâÁ½¸öºêÔÚlinux/compiler.hÖеĶ¨ÒåÈçÏ£º
#define likely(x) __builtin_expect(!!(x),1)
#define unlikely(x) __builtin_expect(!!(x),0)
ºÜÃ÷ÏÔ£¬ÐèÒªÏÈŪÇå³þÕâ¸ö__builtin_expect()º¯ÊýµÄÒâÒå¡£
__builtin_expect()ÊÇgccµÄÒ»¸öÄÚ½¨º¯Êý£¬ÆäÔÐÍÈçÏ£º
long __builtin_expect (long exp, long c);
¼Çס¸Ãº¯ÊýÓÉGCC±¾ÉíÌṩ£¬ÓÃÓÚÓÅ»¯´úÂë¡£Ö»ÖвÎÊýexpΪÈÎÒ»±í´ïʽ£¬c±ØÐëΪ³£Á¿Öµ£¬ÆäÒâÒåÊÇÔÚexp==cʱ£¬¸Ãº¯Êý·µ»Ø·Ç0Öµ£¬Òâ¼´Ï£Íûexp==c¡£
»Øµ½likelyºÍunlikely£¬likelyʵ¼ÊÊÇÏ£Íû±í´ïʽx==1£¬¼´±í´ïʽx³ÉÁ¢£¬²¢ÇÒÔÚ´úÂëʵ¼ÊÖ´ÐÐÖУ¬±í´ïʽxÔÚ¾ø´ó¶àÊýÇé¿öÏÂÊdzÉÁ¢µÄ£¬Ïà·´£¬unlikelyÊÇÏ£Íû±í´ïʽÔÚ¾ø´ó¶àÊýÇé¿öϲ»³ÉÁ¢£¬
Èç¹ûÓÐÏÂÁдúÂ룺
if(unlikely(a > b) {
foo();
}
Õâ¶Î´úÂëµÄÒâ˼ÊÇ£¬ÔÚ¾ø´ó¶àÊýÇé¿öÏÂa¡¡>¡¡bÕâ¸ö±í´ïʽÊDz»³ÉÁ¢µÄ£¬²»³ÉÁ¢Ê±Ö´Ðк¯Êýfoo().
ÁíÍâÓÐÒ»µãҪעÒâµÄÊÇ£¬ÓÉÓÚlikely¶¨ÒåʱÓõij£Á¿ÊÇ1£¬unlikelyÓõij£Á¿ÊÇ0£¬ÕâÕýºÃ·ûºÏc/c++ÓïÑÔÖÐbool±äÁ¿µÄʵ¼ÊÖµ£¬¶ø_builtin_expect()º¯Êý¶ÔexpÓëc½øÐÐÑϸñÏàµÈµÄ±È½ÏµÄ£¬
Òò´ËʹÓÃlikelyºÍunlikelyʱ£¬Æä²ÎÊýÓ¦¸ÃֻʹÓÃÂß¼±í´ïʽ£¬ÒòΪÂß¼±í´ïʽµÄÖµÖ»ÓÐ0»ò1¡£³ý·ÇÕæÒªÅжÏij¸ö±äÁ¿µÄÖµÊÇ1»ò0ʱ£¬²Å»á½«ÆäËüÀàÐ͵IJÎÊý´«¸ølikely»òunlikely¡£ÕâÒ»µã¿ÉÄܺܶàÈ˻᲻СÐÄÓÃ´í¡£
ʹÓÃÕâÁ½¸öºê¶¨ÒåµÄºÃ´¦ÊÇÓÅ»¯Ìõ¼þÅжÏ
Ïà¹ØÎĵµ£º
2¡¢Ï̵߳ÄÖÕÖ¹
Èç¹û½ø³ÌÖÐÈκÎÒ»¸öÏß³ÌÖе÷ÓÃexit£¬_Exit,»òÕßÊÇ_exit£¬ÄÇôÕû¸ö½ø³Ì¾Í»áÖÕÖ¹£¬
Óë´ËÀàËÆ£¬Èç¹ûÐźŵÄĬÈϵĶ¯×÷ÊÇÖÕÖ¹½ø³Ì£¬ÄÇô£¬°Ñ¸ÃÐźŷ¢Ë͵½Ï̻߳áÖÕÖ¹½ø³Ì¡£
Ï̵߳ÄÕý³£Í˳öµÄ·½Ê½£º
(1) Ïß³Ì ......
¡¡MYSQL¶¨ÆÚ±¸·ÝÊÇÒ»ÏîÖØÒªµÄ¹¤×÷£¬µ«È˹¤²Ù×÷Ì«·±Ëö£¬Ò²ÄѱÜÃâÓÐËùÊè©£¬Ê¹ÓÃÏÂ
ÃæµÄ·½·¨¼´¿ÉÈÃϵͳ¶¨ÆÚ±¸·ÝÊý¾Ý¡£
¡¡¡¡1¡¢´´½¨±¸·ÝÎļþ¼Ð
¡¡¡¡#cd /www
¡¡¡¡#makedir backup
¡¡¡¡2¡¢±àдÔËÐнű¾
¡¡¡¡#vi autobackup
¡¡¡¡Ð´ÈëÒÔÏÂÄÚÈÝ£º
¡¡¡¡filename=`date +%Y%m%d`
¡¡¡¡mysql_bin_dir/mysqldump –opt da ......
£±¡¢²é¿´IP¡¡¡¡Ifconfig
¡¡¡¡£²¡¢ÅäÖÃIPµÄ·½·¨£º
¡¡¡¡A¡¢ ÕâÖÖ·½·¨Á¢¼´ÉúЧ¡¡µ«ÊÇÖØÆô½«²»»á±£´æ¡££¨³ýÁËÕâ¸ö·½·¨µÄÆäËü·½·¨¶¼¿ÉÒÔ±£´æÏÂÀ´£©
¡¡¡¡Ifconfig eth£° 1.1.1.1 netmask 255.0.0.0 up
¡¡¡¡Ifconfig eth0:1 1.1.1.3 up¡¡¡¡ÉèÖÃÒ»¸öÍø¿¨¶à¸öIPµÄ·½·¨£¨ÔÚÉèÖÃÐéÄâÖ÷»úʱÓÐ ......
¼ò½é
ÕâƪÎÄÕÂÖ÷Òª¼Ç¼ÎÒÔÚÊÔͼ½â¾öÈçºÎ¾¡¿ÉÄܾ«È·µØÔÚij¸öÌض¨µÄʱ¼ä¼ä¸ôÖ´ÐÐijÏî¾ßÌåÈÎÎñʱµÄ˼·Àú³Ì£¬²¢ÔÚºóÆÚ¶ÔÏà¹ØµÄAPI½øÐеĹéÄɺÍ×ܽᣬÒÔ±¸²Î¿¼¡£
ÎÊÌâÒý³ö
ºÜ¶àʱºò£¬ÎÒÃÇ»áÓÐÀàËƓÿ¸ô¶à³¤Ê±¼äÖ´ÐÐijÏîÈÎÎñ
”µÄÐèÇó£¬Õ§¿´Õâ¸öÎÊÌâ²¢²»Äѽâ¾ö£¬ÊµÔò²¢²»ÈÝÒ×£¬ÓкܶàÒþº¬Ìõ¼þÐèÒª¿¼ÂÇ£¬Ö ......