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

LinuxÏß³Ìpthread±Ê¼Ç


ÔÚÔĶÁNginxµÄ´úÂë.ÏÈÅöµ½µÄÊÇÏ̲߳¿·ÖµÄ
ÒòΪ´Ómain¿ªÊ¼×îÔçÊÇ×öÏ̲߳¿·ÖµÄ¹¤×÷
ʵϰһÏÂpthread·½ÃæµÄÄÚÈÝ
#include "pthread.h"
#include "stdio.h"
void* thread_test(void* ptr)
{
        while(1)
        printf("i am child pthread\n");
}
int main()
{
        pthread_t tid;
        pthread_create(&tid, NULL, thread_test, NULL);
        while(1)
        printf("i am main pthread\n");
        return 0;
}
Õâ¶Î´úÂëÊÇ´Ó±ðÈËÕâÀïÕÒµ½µÄ.²»¹ý°Ñµ±ÖеÄbugÐÞÕýÁË
±àÒëÃüÁîÐÐ
./gcc -lpthread -o pthread ./pthread.c
¼ÇסÐèÒª¼Ó-lpthread²ÎÊý,·ñÔòpthreadµÄÏà¹Øº¯Êý»á±¨¸æËµÕÒ²»µ½
¹ØÓÚpthread_createº¯Êý
ÓÐÈËÌáµ½Ëû´´½¨µÄ×ÓÏ̻߳ñÈ¡µ½µÄpidºÍÖ÷Ï̵߳IJ»Ò»ÖÂ
ÕâÊÇÓÉÓÚÔçÆÚÄں˰汾ÖеÄʵÏÖ²»Í¬.ÓÉÓÚpthreadÖ»ÊÇʹÓÃÇáÁ¿½ø³ÌȥģÄâÏß³Ì
ÔçÆÚµÄpthreadʵÏÖÊÇlinuxthread¿â,ÿ¸öÇáÁ¿½ø³Ì»á±»ÏÔʾÔÚps½ø³ÌÁбíÖÐ
¶ø×îеÄpthreadʵÏÖÊÇNPTL,ËùÓÐÇáÁ¿½ø³ÌÔÚ½ø³ÌÁбíÖÐÖ»±íÏÖΪÖ÷Ï̵߳ÄPIDºÅ.
Æäʵÿ¸öÏ̵߳ÄpidÊDz»Í¬µÄ.µ«ÊÇpthread¿âÈÃͨ¹ýpthread_create´´½¨µÄÏ̵߳ÄpidÓëÖ÷pidÒ»Ö¶øÒÑ.
¼ÈȻÿ¸ö½ø³Ì¶¼ÓжÀÁ¢µÄ½ø³Ì,ÄÇôʵ¼ÊµÄÏ̵߳Ľø³ÌºÅÔÚÄÄÀï¿ÉÒÔ¿´µ½ÄØ?
¾­¹ýÊÔÑé
ÎÒ·¢ÏÖÔÚ/proc/[PID]/taskĿ¼ÏÂ
±£´æÓд˽ø³ÌËùÓеÄpthreadµÄʵ¼Ê½ø³ÌºÅ
ÀýÈçÉÏÃæµÄÀý³Ì,µ±ÎÒÃÇÖ´ÐÐÖ®ºó
ÎÒÃÇÔÚpsÖп´µ½µÄ½ø³ÌºÅÈç¹ûÊÇ20632
ÄÇô½øÈë/proc/20632/task
ÎÒÃÇ¿ÉÒÔ¿´µ½ÓÐ20632ÒÔ¼°20633Á½¸öpid
Æäʵ20633¾ÍÊǵڶþ¸ö´´½¨³öÀ´µÄÇáÁ¿½ø³Ì
¸ù¾ÝPOSIXµÄÒªÇó
ÎÒÃÇɱµôÈκÎÒ»¸öÏß³Ì,Æäʵ¶¼»á°ÑSIGNO·¢Ë͵½ËùÓеÄÏß³ÌÖÐ.
ËùÒÔÎÒÃÇÈç¹ûÖ´ÐÐkill -9 20633
ÆäʵÄã»á·¢ÏÖÕû¸ö³ÌÐò¶¼Í˳öÁË
ÏÂÃæÎÒ°ÑPOSIX¶ÔÏß³ÌʵÏÖµÄÒªÇóÌù³öÀ´(Õⲿ·Ö²Î¿¼ÁËlinuxÏß³ÌdzÎö)
1, ²é¿´½ø³ÌÁбíµÄʱºò, Ïà¹ØµÄÒ»×étask_structÓ¦µ±±»Õ¹ÏÖΪÁбíÖеÄÒ»¸ö½Úµã;
2, ·¢Ë͸øÕâ¸ö”½ø³Ì”µÄÐźÅ(¶ÔÓ¦killϵͳµ÷ÓÃ), ½«±»¶ÔÓ¦µÄÕâÒ»×étask_structËù¹²Ïí, ²¢ÇÒ±»ÆäÖеÄÈÎÒâÒ»¸ö”Ï߳̔´¦Àí;
3, ·¢Ë͸øÄ³¸ö”Ï߳̔µÄÐźÅ(¶ÔÓ¦pthread_kill), ½«Ö»±»¶ÔÓ¦µÄÒ»¸ötask_struct½ÓÊÕ, ²¢ÇÒÓÉËü×Ô¼ºÀ´´¦Àí;
4, µ±”½ø³Ì&r


Ïà¹ØÎĵµ£º

ÔÚlinuxÖÐ Ó¦ÓóÌÐòÈçºÎµ÷ÓÃÄ£¿éÄڵĺ¯Êý

ÔÚbbsÉÏ·¢Á˸öÈçÌâËùʾµÄ´óÍÁÌû£¬½á¹ûûһ¸ö»Ø¸´£¬°¥£¬Õ涪ÈË~~~£¬ÃÉʦÐÖÖ¸µã£¬²Å³õ²½¸ãÇå³þlinuxÄ£¿éº¯ÊýµÄµ÷ÓûúÖÆ£º
Ê×ÏÈ£¬Ó¦ÓóÌÐòÊÇÎÞ·¨Ö±½Ó·ÃÎÊÄ£¿éÖеĺ¯ÊýµÄ£¨¼´Ê¹ÊÇÄã×Ô±à×Ô¹ÒµÄÄ£¿é£­£­Êµ¼ÊÉÏËüÒ²ÊÇÄÚºËÄ£¿é£©£¬Óû§¿Õ¼äÓëÄں˿ռäÖ®¼äÖ»ÓÐͨ¹ýÒ»Ð©ÌØ¶¨µÄϵͳº¯ÊýÀ´½øÐÐͨѶ£¨Èçʲôuser_to_kernel£©£¬¶ø¾ø¶Ô²»¿ ......

linux ³õѧÃüÁî

1.ϵͳÐÅÏ¢ÏÔʾÃüÁî # uname -a               # ²é¿´ÄÚºË/²Ù×÷ϵͳ/CPUÐÅÏ¢
# head -n 1 /etc/issue   # ²é¿´²Ù×÷ϵͳ°æ±¾
# cat /proc/cpuinfo      # ²é¿´CPUÐÅÏ¢
# hostname   ......

ÔÚlinuxÖÐʹÓÃcrontabʵÏÖ¶ÔoracleµÄ¶¨Ê±±¸·Ý

¼ÙÉèÊý¾Ý¿âµÄÓµÓÐÕßΪoracle£¬Êý¾Ý¿âµÄÓû§Îªscott£¬Æä¿ÚÁîΪtrigger£¬
OracleÊý¾Ý¿âµÄ²ÎÊý$ORACLE_HOMEΪ/usr/oracle£¬$ORACLE_SIDΪoracle1£¬ÔòʵÏÖ²½ÖèÈçÏ£º
1¡¢½¨Á¢ÊµÏÖ±¸·ÝµÄshell
ÔÚ/usr/oracleÖÐÓÃviÃüÁÁ¢Îļþbackup.sh£¬ÆäÄÚÈÝΪ:
ORACLE_HOME=/usr/oracle; <br>export ORACLE_HOME;
ORACLE_SID= ......

linuxϵͳRPMÃüÁîÊÖ²á

linuxϵͳRPMÃüÁîÊÖ²á
RPMÊÇRed HatϵÁг£ÓõÄ軟¼þ°ü¸ñʽ£¬靈»îµÄʹÓÃËû將ʹÄúÔÚ RH LinuxÖÐÈç魚µÃË®.現將Æä³£見µÄʹÓ÷½·¨ÊÕ¼¯ÈçÏÂ.................
Ò»¡¢°²×°
ÃüÁî¸ñʽ£º
rpm -i ( or --install) options file1.rpm ... fileN.rpm
²ÎÊý£º
file1.rpm ... fileN.rpm ½ ......

ÆÊÎöRedHat LinuxÖÐÈý¸öÖØÒªÄÚºËÎļþ


ÆÊÎöRedHat LinuxÖÐÈý¸öÖØÒªÄÚºËÎļþ
×÷Õߣºmynix À´Ô´:www.linux.org (2007-02-08 13:46:41)
 ¡¡  vmlinuxÊÇδѹËõµÄÄںˣ¬vmlinuzÊÇvmlinuxµÄѹËõÎļþ¡£zImage(vmlinuz)ºÍbzImage(vmlinuz)¶¼ÊÇÓÃgzipѹËõµÄ¡£ËüÃDz»½öÊÇÒ»¸öѹËõÎļþ£¬¶øÇÒÔÚÕâÁ½¸öÎļþµÄ¿ªÍ·²¿·ÖÄÚǶÓÐgzip½âѹËõ´úÂë¡£bzImageÖеÄbÊÇ&ldqu ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ