LinuxÄÚºËÖÐ ±éÀúÁ´±í
×î½üÔÚ¿´Ò»¸ö¿ªÔ´µÄ´úÂ룬һ¶Î´úÂë¿´Á˺ܾö¼Ã»Óп´¶®£¬GoogleÁËһϣ¬¾¡È»ÊÇlinuxÖÐÁ´±íµÄ±éÀú¡£
±éÀúÁ´±í£º
±éÀúÁ´±ílist_for_eachÊÇÒ»¸öºê£¬Õ¹¿ªÁ˾ÍÊÇÒ»¸öforÑ»·
#define list_for_each(pos, head) \
for (pos = (head)->next; prefetch(pos->next), pos != (head); \
pos = pos->next)
ÆäÖÐprefech(pos->next)ÊÇ´¦ÀíÆ÷Ԥȡpos->next£¬Í¨¹ý´¦ÀíÆ÷µÄԤȡ¹¦ÄÜ£¬¶ÔforÑ»·½øÐÐÁËÓÅ»¯¡£
···ÃÎÊÊý¾Ý²Ù×÷£º
#define list_entry(ptr, type, member) \
container_of(ptr, type, member)
#define container_of(ptr, type, member) ({ \
const typeof(((type *)0)->member) * __mptr = (ptr); \
(type *)((char *)__mptr - offsetof(type, member)); } )
#define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
container_ofÊÇÒ»¸öÓе㸴Ôӵĺê,ʹÓÃÁËCÀ©Õ¹¹Ø¼ü×Ötypeof£¬»¹Óв»ºÃÀí½âµÄÇó½á¹¹Ìå³ÉÔ±
±äÁ¿Æ«ÒÆ.....
·((type *)0)Êǽ«0Ç¿ÖÆ×ª»¯Îªtype *£¬Ò²¾ÍÊÇÖ¸ÏòtypeÀàÐ͵ÄÖ¸Õë
·((type *)0)->memberÊÇ·ÃÎÊtype½á¹¹ÖеÄmember³ÉÔ±
·const typeof( ((type *)0)->member ) *__mptr ¶¨ÒåÒ»¸öÓë((type *)0)->memberͬÖÖÀàÐ͵Ä
Ö¸Õë±äÁ¿£¨const±äÁ¿£©
·const typeof( ((type *)0)->member ) *__mptr=(ptr)¶Ô³£Á¿Ö¸Õë±äÁ¿__mptr¸³Öµ
__mptr=ptr
·((size_t) &((TYPE *)0)->MEMBERµÃµ½memberÔÚtype½á¹¹ÌåÖÐµÄÆ«ÒÆÁ¿£¬
offsetof(type,member)µÄÕ¹¿ªÐ§¹û
·(char *)__mptr - offsetof(type,member) ½«__mptrÇ¿ÖÆ×ª»¯ÎªcharÀàÐÍÖ¸Õ룬Ҳ¾ÍÊÇ__mptr
µÄµØÖ·£¬È»ºó¼õÈ¥memberÔڽṹÌåÖÐµÄÆ«ÒÆÁ¿£¬µÄµ½µÄ×ÔÈ»¾ÍÊǽṹÌåÆðʼµØÖ·£¨Æ«ÒÆÁ¿ÇóµÄºÜÇÉÃ
ÓÖºÜÇÉÃîµÄ»ñµÃ½á¹¹ÌåÆðʼµØÖ·£©¡£
·(type *)( (char *)__mptr - offsetof(type,member) )×îºóÔÙÇ¿ÖÆ×ª»¯Îª(type *)ÀàÐÍ
Ïà¹ØÎĵµ£º
´´½¨×ÀÃæÍ¼±ê
Ŀǰ½«ÍøÂçÓ¦ÓÃÀ©Õ¹µ½×ÀÃæÊÇÒ»¸öÇ÷ÊÆ£¬´æÔÚןܶà½â¾ö·½°¸£¬±¾ÎÄÒÔ Mozilla Prism ΪÀý£¬ÀàËÆµÄ·½·¨Í¬ÑùÊÊÓÃÓÚ Google Chrome ¡£
1. µ½ Mozilla Prism µÄÍøÕ¾ÉÏÏÂÔØ Prism£¬µã»÷ Download Now Ö®ºó»áÌáʾÓÐÁ½ÖÖ£¬Ò»ÖÖÊÇÒÔ Mozilla Firefox À©Õ¹µÄ·½Ê½£¬ÊʺÏÒѾ°²×°ÓÐ Firefox µÄÅóÓÑ£»Ò»Ö ......
×¼±¸¹¤×÷
qt-everywhere-opensource-src-4.6.2.tar
½âѹ tar xvzf qt-everywhere-opensource-src-4.6.2.tar
ÅäÖÃ:
./configure -prefix /home/hyk/Qt_self_compiled/Qt_4_6_2
£¨Ö»ÊǸıäÁ˰²×°Ä¿Â¼£©
gmake
(ÖØÅäÖÃ gmake confclean , configure)
ÖÐÎç12 ......
Ò»¡¢ jdkµÄ°²×°
1. ÏÂÔØjdk£º ´Ówww.sun.comÏÂÔØjdk£¨ jdk-1_5_0_20-linux-i586-rpm.bin £©£¬ÏÂÔØºóʹÓÃsshÉÏ´«µ½linuxϵͳµÄhomeĿ¼Ï£¬µ±È»Ò²¿ÉÒÔ·ÅÔÚÆäËüĿ¼¡£
2. ½øÈ밲װĿ¼,ÐÞ¸ÄjdkµÄʹÓÃȨÏÞ,¸øËùÓÐÓû§Ìí¼Ó¿ÉÖ´ÐеÄȨÏÞ£º
#cd /home
#chmod +x jdk-1_5_0_20-linux-i586.rpm.bin ......
1¡¢´´½¨mysqlÊý¾Ý¿âµÄ¹ÜÀíÓû§
Êý¾Ý¿â°²×°ºÃºó£¬ÎÒÃÇÓ¦¸ÃΪmysqlÊý¾Ý¿â´´½¨Ò»¸ö¹ÜÀíÕʺš£Òª°ÑrootÓû§ÉèÖÃΪ¹ÜÀíÔ±£¬´ËʱÐèÒªÖ´ÐÐÏÂÃæÃüÁ
[root@CDS2 bin]# /usr/bin/mysqladmin -u root password 123456
˵Ã÷£ºÉÏÃæ´´½¨µÄmysqlÊý¾Ý¿â¹ÜÀíԱΪroot£¬ÃÜÂë123456
2¡¢´´½¨Ò»°ãµÄÓû§
¹¤×÷ÖÐÓõ½web·þÎñÆ÷ºÍmysql·þÎñÆ ......