LinuxÄÚºËͬ²½½éÉܺͷ½·¨
LinuxÉ豸Çý¶¯ÖбØÐë½â¾öµÄÒ»¸öÎÊÌâÊǶà¸ö½ø³Ì¶Ô¹²Ïí×ÊÔ´µÄ²¢·¢·ÃÎÊ£¬²¢·¢·ÃÎʻᵼÖ¾ºÌ¬£¬linuxÌṩÁ˶àÖÖ½â¾ö¾ºÌ¬ÎÊÌâµÄ·½Ê½£¬ÕâЩ·½Ê½Êʺϲ»Í¬µÄÓ¦Óó¡¾°¡£
LinuxÄÚºËÊÇ¶à½ø³Ì¡¢¶àÏ̵߳IJÙ×÷ϵͳ£¬ËüÌṩÁËÏ൱ÍêÕûµÄÄÚºËͬ²½·½·¨¡£ÄÚºËͬ²½·½·¨ÁбíÈçÏ£º
ÖÐ¶ÏÆÁ±Î
Ô×Ó²Ù×÷
×ÔÐýËø
¶Áд×ÔÐýËø
˳ÐòËø
ÐźÅÁ¿
¶ÁдÐźÅÁ¿
BKL£¨´óÄÚºËËø£©
SeqËø
Ò»¡¢²¢·¢Ó뾺̬£º
¶¨Ò壺
²¢·¢£¨concurrency£©Ö¸µÄÊǶà¸öÖ´Ðе¥ÔªÍ¬Ê±¡¢²¢Ðб»Ö´ÐУ¬¶ø²¢·¢µÄÖ´Ðе¥Ôª¶Ô¹²Ïí×ÊÔ´£¨Ó²¼þ×ÊÔ´ºÍÈí¼þÉϵÄÈ«¾Ö±äÁ¿¡¢¾²Ì¬±äÁ¿µÈ£©µÄ·ÃÎÊÔòºÜÈÝÒ×µ¼Ö¾ºÌ¬£¨race conditions£©¡£
ÔÚlinuxÖУ¬Ö÷ÒªµÄ¾ºÌ¬·¢ÉúÔÚÈçϼ¸ÖÖÇé¿ö£º
1¡¢¶Ô³Æ¶à´¦ÀíÆ÷£¨SMP£©¶à¸öCPU
ÌØµãÊǶà¸öCPUʹÓù²Í¬µÄϵͳ×ÜÏߣ¬Òò´Ë¿É·ÃÎʹ²Í¬µÄÍâÉèºÍ´æ´¢Æ÷¡£
2¡¢µ¥CPUÄÚ½ø³ÌÓëÇÀÕ¼ËüµÄ½ø³Ì
3¡¢Öжϣ¨Ó²Öжϡ¢ÈíÖжϡ¢Tasklet¡¢µ×°ë²¿£©Óë½ø³ÌÖ®¼ä
Ö»Òª²¢·¢µÄ¶à¸öÖ´Ðе¥Ôª´æÔÚ¶Ô¹²Ïí×ÊÔ´µÄ·ÃÎÊ£¬¾ºÌ¬¾ÍÓпÉÄÜ·¢Éú¡£
Èç¹ûÖжϴ¦Àí³ÌÐò·ÃÎʽø³ÌÕýÔÚ·ÃÎʵÄ×ÊÔ´£¬Ôò¾ºÌ¬Ò²»á»á·¢Éú¡£
¶à¸öÖжÏÖ®¼ä±¾ÉíÒ²¿ÉÄÜÒýÆð²¢·¢¶øµ¼Ö¾ºÌ¬£¨Öжϱ»¸ü¸ßÓÅÏȼ¶µÄÖжϴò¶Ï£©¡£
½â¾ö¾ºÌ¬ÎÊÌâµÄ;¾¶ÊDZ£Ö¤¶Ô¹²Ïí×ÊÔ´µÄ»¥³â·ÃÎÊ£¬Ëùν»¥³â·ÃÎʾÍÊÇÖ¸Ò»¸öÖ´Ðе¥ÔªÔÚ·ÃÎʹ²Ïí×ÊÔ´µÄʱºò£¬ÆäËûµÄÖ´Ðе¥Ôª¶¼±»½ûÖ¹·ÃÎÊ¡£
·ÃÎʹ²Ïí×ÊÔ´µÄ´úÂëÇøÓò±»³ÆÎªÁÙ½çÇø£¬ÁÙ½çÇøÐèÒªÒÔijÖÖ»¥³â»úÖÆ¼ÓÒÔ±£»¤£¬ÖÐ¶ÏÆÁ±Î£¬Ô×Ó²Ù×÷£¬×ÔÐýËø£¬ºÍÐźÅÁ¿¶¼ÊÇlinuxÉ豸Çý¶¯ÖпɲÉÓõĻ¥³â;¾¶¡£
ÁÙ½çÇøºÍ¾ºÕùÌõ¼þ£º
ËùνÁÙ½çÇø£¨critical regions£©¾ÍÊÇ·ÃÎʺͲÙ×÷¹²ÏíÊý¾ÝµÄ´úÂë¶Î£¬ÎªÁ˱ÜÃâÔÚÁÙ½çÇøÖв¢·¢·ÃÎÊ£¬±à³ÌÕß±ØÐë±£Ö¤ÕâЩ´úÂëÔ×ÓµØÖ´ÐЗ—Ò²¾ÍÊÇ˵£¬´úÂëÔÚÖ´ÐнáÊøÇ°²»¿É±»´ò¶Ï£¬¾ÍÈçͬÕû¸öÁÙ½çÇøÊÇÒ»¸ö²»¿É·Ö¸îµÄÖ¸ÁîÒ»Ñù£¬Èç¹ûÁ½¸öÖ´ÐÐÏß³ÌÓпÉÄÜ´¦ÓÚͬһ¸öÁÙ½çÇøÖУ¬ÄÇô¾ÍÊdzÌÐò°üº¬Ò»¸öbug£¬Èç¹ûÕâÖÖÇé¿ö·¢ÉúÁË£¬ÎÒÃǾͳÆÖ®Îª¾ºÕùÌõ¼þ£¨race conditions£©£¬±ÜÃâ²¢·¢ºÍ·ÀÖ¹¾ºÕùÌõ¼þ±»³ÆÎªÍ¬²½¡£
ËÀËø£º
ËÀËøµÄ²úÉúÐèÒªÒ»¶¨Ìõ¼þ£ºÒªÓÐÒ»¸ö»ò¶à¸öÖ´ÐÐÏ̺߳ÍÒ»¸ö»ò¶à¸ö×ÊÔ´£¬Ã¿¸öÏ̶߳¼ÔڵȴýÆäÖеÄÒ»¸ö×ÊÔ´£¬µ«ËùÓеÄ×ÊÔ´¶¼ÒѾ±»Õ¼ÓÃÁË£¬ËùÓÐÏ̶߳¼ÔÚÏ໥µÈ´ý£¬µ«ËüÃÇÓÀÔ¶²»»áÊÍ·ÅÒѾռÓеÄ×ÊÔ´£¬ÓÚÊÇÈκÎÏ̶߳¼ÎÞ·¨¼ÌÐø£¬Õâ±ãÒâζ×ÅËÀËøµÄ·¢Éú¡£
¶þ¡¢ÖÐ¶ÏÆÁ±Î
ÔÚµ¥CPU·¶Î§ÄÚ±ÜÃ⾺̬µÄÒ»ÖÖ¼òµ¥·½·¨ÊÇÔÚ½øÈëÁÙ½çÇøÖ®Ç°ÆÁ±ÎϵͳµÄÖжϡ£
ÓÉÓÚlin
Ïà¹ØÎĵµ£º
linux coredumpÅäÖÃÓëµ÷ÊÔ
À´Ô´:
ChinaUnix²©¿Í ¡¡ÈÕÆÚ£º
2009.02.09 17:11¡¡(¹²ÓÐ0
ÌõÆÀÂÛ) ÎÒÒªÆÀÂÛ
linux coredumpÅäÖÃÓëµ÷ÊÔ
&nb ......
ÕâÕó×ÓÔÚlinuxϵÄÒ»¸öÏîÄ¿ÐèÒªÓõ½epollÀ´³ÐÊÜÍøÂçµÄ¸ß¸ºÔØ£¬µ«ÊÇÔÚʹÓõĹý³ÌÖоÍÓöµ½ÁËһЩÎÊÌâ¡£
ÔÚÕû¸ö¹ý³ÌÖУ¬ÎÒÊÇÓÃEPOLL µÄ±ßÔµ´¥·¢Ä£Ê½À´ÊµÏÖÎÒÏëÒªµÄ¹¦ÄÜ¡£
ÎÒÊÇÕâÑùʵÏֵģºÔÚEPOLLÀïÃæ°Ñ¼àÌýµÄÃèÊö·û¸ø¼ÓÁ˽øÈ¥£¬È»ºóµ÷ÓÃepoll_waitÀ´¶Ô¿Í»§¶ ......
ºÍBashµÄ»·¾³É趨ÓйصÄÎļþÓÐ
/etc/profile (Ö÷Òª)
$HOME/.bash_profile (Ö÷Òª)
$HOME/.bash_login
$HOME/.profile
$HOME/.bash_logout (Ö÷Òª)
$HOME/.bashrc (Ö÷Òª)
/etc/bashrc
˵Ã÷ÈçÏ£º
µÇÈë(login)ʱ
ÏÈÖ´ÐÐ /etc/profile
½Ó×Åbash»á¼ì²éʹÓÃÕßµÄ×Ô¼ÒĿ¼ÖУ¬ÊÇ·ñÓÐ .bash_profile »òÕß .bash_login»òÕß ......
ǰһƪÎÄÕÂдµÄÔÚAPACHE°²×°MOD_PYTHONµÄ¾¹ý,Æäʵͦ¼òµ¥,¾ÍÊǰ汾²»¼æÈݵÄÎÊÌâ.Õâ´ÎÎÒ´ó¸Å˵ϲ¿ÊðDJANGOµÄ¹ý³Ì.
ÏÈÐÞ¸ÄAPACHEÅäÖÃÎļþ,ʹÆä¼ÓÔØmod_pythonÄ£¿é
LoadModule python_module libexec/mod_python.so
ÔËÐÐÃüÁî²é¿´
bin/httpd -M¿ÉÒÔ¿´µ½
python_module (shared)
Syntax OK
˵Ã÷apacheÒѾ³É¹¦¼Ó ......