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

linuxÖеÄfork

      ´ó¼ÒÖªµÀLinuxÖд´½¨×Ó½ø³ÌµÄÒ»¸öºÜºÃµÄ·½·¨ÊǺ¯Êýµ÷ÓÃfork,µ«ÊǺܶà³õѧÕß¶ÔforkµÄÀí½âÉÏ¿ÉÄÜÓеãÀ§ÄÑ¡£ÏÂÃæ¾Ù¸öÀý×ÓÀ´¿´¿´forkµÄÓ÷¨°É¡£
      Æäʵ£¬´ó¼ÒÓÃforkµÄʱºò¼ÇסforkÊÇ“·Ö²æ”µÄÒâ˼¾ÍºÜºÃÀí½âÁË¡£
      ÏÈ¿´Ò»ÏÂfork() µÄ¾­µäģʽ£º
      int pid=fork();
if(pid < 0)
{
//ʧ°Ü£¬Ò»°ãÊǸÃÓû§µÄ½ø³ÌÊý´ïµ½ÏÞÖÆ»òÕßÄÚ´æ±»ÓùâÁË
........
}
else if(pid == 0)
{
//×Ó½ø³ÌÖ´ÐеĴúÂë
......
}
else
{
//¸¸½ø³ÌÖ´ÐеĴúÂë
.........
}
......... //ÆäËû²¿·Ö

      Ê×ÏÈÀ´¿´fork µÄ·µ»ØÖµ£¬ÓÐÈýÖÖÇé¿ö -1£¬0£¬>0
      ·µ»Ø-1: µ±È»ÊÇʧ°ÜÁË£¬Ò²²»»á·ÖÁѳÉÁ½¸ö½ø³Ì¡£
      ·µ»Ø0ÊÇ×Ó½ø³Ì¡£
      ·µ»Ø¡µ0 ÊǸ¸½ø³Ì£¬´Ëʱ·µ»ØµÄÖµµ±È»ÊÇ×Ó½ø³ÌµÄpidÁË¡£  
      Õâ¸ö¹ý³ÌÆäʵ¿ÉÒÔÕâÑù¼òµ¥µÄ½âÊÍ£º µ±½ø³ÌÓöµ½forkµ÷ÓÃʱ£¬½«´Ë½ø³ÌÕû¸ö¿½±´Ò»·Ý£¬¼´×Ó½ø³Ì¡£´Ëʱ£¬¸Ã½ø³ÌµÄ·µ»ØÖµ±»ÉèÖÃΪ¡µ0£¬¼´¸Õ²Å¿½±´Éú³ÉµÄ×Ó½ø³Ìpid£¬¶øÔÚ¿½±´Éú³ÉµÄ½ø³ÌÖУ¬½«·µ»ØÖµÉèÖÃΪ0 ¡£Ò²¾ÍÊÇ´ËʱÒѾ­ÓÐÁ½¸ö½ø³Ì£¬Ö»ÓÐpidµÄÖµ²»Í¬£¨ºöÂÔÒ»ÆðÆäËûµÄÉèÖã©¡£
      ´Ëʱ£¬Á½¸ö½ø³Ì¶¼´Ófork¿ªÊ¼ÍùÏÂÖ´ÐУ¬Ö»ÊÇpid²»Í¬£¬ËùÒÔ if ..... else if .... esle »á¸ù¾Ýpid²»Í¬À´Ö´ÐÐÏàÓ¦µÄ´úÂë,²¢²»ÊÇ˵ijһ²¿·ÖÊǸ¸½ø³ÌµÄ´úÂë,ijһ²¿·ÖÊÇ×Ô½ø³ÌµÄ´úÂë. Ö»ÊÇһЩÌõ¼þÅж϶øÒÑ.ËùÒÔµ±forkºó,Õû¸ö´úÂë¶¼»á±»Á½¸ö½ø³ÌÖ´ÐÐ,Ö»ÊÇ(fork³É¹¦Ê±)×Ó½ø³ÌÖеÄpid ΪÁã,ËùÒÔ else ifÌõ¼þ³ÉÁ¢,ÆäËüÁ½¸ö²»³ÉÁ¢,ËùÒÔÖ´ÐÐelse ifÖеĴúÂë.¸¸½ø³ÌÖÐpid >0µÄ,ËùÒÔelse³ÉÁ¢,Ö´ÐÐÆäÖеĴúÂë.  Èç¹ûforkʧ°Ü,µ±È»ÊÇ·µ»Ø-1,´ËʱÊÇûÓÐ×Ó½ø³ÌµÄ.
      ÐèҪעÒâµÄÊÇ£¬¿ÉÒÔͨ¹ýgetpid() ºÍgetppid()»ñÈ¡×Ô¼ºµÄ½ø³ÌºÍ¸¸½ø³ÌµÄpid; forkÖ®ºóÊǸ¸½ø³ÌÏÈÖ´Ðл¹ÊÇ×Ó½ø³ÌÏÈÖ´ÐУ¬ÕâÊÇÈ¡¾öÓÚcpuµ÷ÓÃËã·¨µÄ£¬¾ÍÊÇ˵ËûÃÇË­ÏÈÖ´Ðж¼ÓпÉÄÜ¡£
      ÏÂÃæÔÙÌṩһЩÀý×Ó£¬¹©´ó¼Ò˼¿¼£¬ÉîÈëÀí½âfork¡£
      1.±àдһ¶Î³ÌÐò£¬Ê¹ÓÃϵͳµ÷ÓÃfork£¨£


Ïà¹ØÎĵµ£º

linuxÏÂfile ÃüÁî

linuxÏÂfile ÃüÁî
¹¦ÄÜ˵Ã÷£º±æÊ¶ÎļþÀàÐÍ¡£
Óï¡¡¡¡·¨£ºfile [-beLvz][-f <Ãû³ÆÎļþ>][-m <ħ·¨Êý×ÖÎļþ>...][Îļþ»òĿ¼...]
²¹³ä˵Ã÷£ºÍ¨¹ýfileÖ¸ÁÎÒÃǵÃÒÔ±æÊ¶¸ÃÎļþµÄÀàÐÍ¡£
²Î¡¡¡¡Êý£º
¡¡-b ¡¡Áгö±æÊ¶½á¹ûʱ£¬²»ÏÔʾÎļþÃû³Æ¡£
¡¡-c ¡¡ÏêϸÏÔʾָÁîÖ´Ðйý³Ì£¬±ãÓÚÅÅ´í»ò·ÖÎö³ÌÐòÖ´ÐеÄÇéÐΡ£
......

LinuxÎļþ²éÕÒÃüÁîfind,xargsÏêÊö £¨×ªÔØ£©

LinuxÎļþ²éÕÒÃüÁîfind,xargsÏêÊö
×ªÔØ×Ô   http://www.cnblogs.com/starspace/archive/2008/10/20/1315384.html
×ܽ᣺zhy2111314
À´×Ô£ºLinuxSir.Org
ÕûÀí£º±±ÄÏÄϱ±
ÕªÒª£º ±¾ÎÄÊÇfind ÃüÁîµÄÏêϸ˵Ã÷£¬¿É¹óµÄÊÇÕë¶Ô²ÎÊý¾ÙÁ˺ܶàµÄʵÀý£¬´óÁ¿µÄÀýÖ¤£¬ÈóõѧÕ߸üΪÈÝÒ×Àí½â£»±¾ÎÄÊÇzhyflyÐÖÌùÔÚÂÛ̳ÖУ»Î ......

linuxÈÎÎñ¹ÜÀíÆ÷topµÄʹÓã¨×ª£©

Ö±½ÓÔÚÖÕ¶ËÊäÈëtopÃüÁî¾ÍÐÐ
µÚÒ»ÐУ¬ºÜÈÝÒ׿´³öÀ´Á˰É
¼òµ¥ËµÒ»ÏÂload average: * * *
µÚÒ»¸öÊýÊÇ£ºÆ½¾ù£µ·ÖÖÓÒÔÄÚÓжàÉÙ½ø³ÌÔÚ¾ºÕù£Ã£Ð£Õ
µÚ¶þ¸öÊýÊÇ£ºÆ½¾ù£±£°·ÖÖÓÒÔÄÚÓжàÉÙ½ø³ÌÔÚ¾ºÕù£Ã£Ð£Õ
µÚÈý¸öÊýÊÇ£ºÆ½¾ù£±£µ·ÖÖÓÒÔÄÚÓжàÉÙ½ø³ÌÔÚ¾ºÕù£Ã£Ð£Õ
µÚ¶þÐУº
Tasks: *
¶àÉÙ¸öÈÎÎñÊ ......

Linux Cookbook 3

Files And Dirs
1. touch ---create a new, empty file
            vi filename is also ok
2. mkdir ---make directory
            mkdir -p ---to make all directories in the path
3. space in ......

LINUXÍøÂç±à³Ì,¼òµ¥µÄÁÄÌì³ÌÐò

·þÎñÆ÷¶Ë£º
   ½¨Á¢socket£¬±¾µØµØÖ·°ó¶¨bind£¬È»ºó½¨Á¢¼àÌý£¬Èç¹ûÓпͻ§¶ËÇëÇóÔòÏìÓ¦Ö®£¬È»ºó½øÐÐÊý¾ÝµÄ·¢ËͺͽÓÊÕ
Ô´´úÂë:
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <sys/time.h&g ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ