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

linux pipe() ÍÁÎÊ

ÍøÉÏ¿´ÁËһϣ¬´ó²¿·ÖµÄpipe()¶¼ÊǺÍfork£¨£©Í¬Ê±³öÏÖµÄ
ÏëÎÊÎʸßÊÖ£¬ÓÐûÓÐʲô·½·¨¿ÉÒÔ²»ÓÃpipe()+fork()
¶øÓÃpipe() read() write() dup2() system ()ʵÏÖpopen() µÄ¹¦ÄÜ
Èç¹ûÓиßÊÖÄܸ½ÉÏ´úÂë½²½âµÄ»°~~»á¸ø¼Ó·Ö~~~
×øµÈ±¯¾ç¡£

¸ÒÎÊÄãÊÇÏëʵÏÖʲô¹¦ÄÜÄØ£¿
ÊǹØÓÚIPCµÄ¹¦ÄÜÂð£¿
Èç¹ûÊǵϰ£¬Ã²ËÆÃ»·¨ÊµÏÖ£¬ÎҼǵá¶unixÍøÂç±à³Ì¡·Ìáµ½¹ý£¬½ø³Ì¼äͨѶÈç¹ûÏëʹÓÃpipe½øÐУ¬Ôò±ØÐëÊǸ¸×Ó½ø³Ì

system Ö®ºó¸¸½ø³ÌÒѾ­¿ªÊ¼ËÀµÈÁË£¬ÔõôͨÐÅ£¿
system = fork + exec + wait

pipe() read() write() dup2() system ()ʵÏÖpopen()
×öÃΰÉ

±ÈÈç˵£ºÎÒÏëÓÃsystem()µ÷ÓÃÒ»¸öshell ÃüÁî£à£à£à±ÈÈç˵cal  system("cal") ÎÒÏëÏÈÓÃÒ»¸ö int pdfs[2] µ±¹ÜµÀ£¬È»ºóµ÷ÓÃdup2£¨pdfs[1],1)ÕâÑù¾Í¿ÉÒÔ½«system("cal")Êä³öµÄ¹ÜµÀµÄдÈë¶Ë£¬È»ºóÔÙÔÚÁíÍâÒ»¸öº¯ÊýÖÐͬÑùµ÷Óà readº¯ÊýÀ´¶Ápdfs[0]ÖеÄÄÚÈÝ£¬È»ºó½øÐд¦Àí£à£à£àµ«ÊÇÿ´Î³ÌÐò×ßµ½dup2(pdfs[1],1)µÄʱºò¾Í±¨¸æËµÊÇbroken pipe````ÎҾͺܲ»Ã÷°×£à£à£à£à¸Ð¾õÓ¦¸ÃûÎÊÌâ°¢£à£à£à£à


Ïà¹ØÎÊ´ð£º

Linux Ŀ¼ÎÊÌâ

LinuxÐÂÊÖ£¬Çë´ó¸ç´ó½ã²»Òª¼ûЦ¡£

ÎÒÓÃrootÓû§µÇ¼µ½Linuxϵͳ¡£ÔÚ¸ùĿ¼ÏÂÃæ½¨ÁËĿ¼dir1£¬ºóÓÃÃüÁîcd /dir1½øÈëµ½dir1Ŀ¼Ï£¬È»ºóÔÙÓÃmkdir dir2½¨Á¢ÁËĿ¼dir2 £¬ÔÙºóÀ´ÓÃÃüÁîcd /dir2ÊÇ£¬ÌáʾΪ£º-bush ......

Linuxϰ²×°ÎÊÌâ

Ô­ÏȵÄGCC°æ±¾Îª4.1.2,ÎÒÖØÐ±àÒë°²×°ÁËGCC4.3.2£¬µ«ÊDZàÒëÍê³ÌÐòÔËÐгÌÐòʱ»á³öÏÖversion `GLIBCXX_3.4.9' not found Õâ¸öÎÊÌ⣬ÎÒ²»Ì«Ã÷°×Ôõô»ØÊ£¬Çë¸÷λ´óϺָµãһϡ£
ÊÖ¶¯ÔÙ×°Ò»´Îglibc*_3.4.9

ÕâÊÇÎ ......

ͬʱÌṩ windowsϵÄdllºÍ linuxϵÄso Îļþ

ÎÒҪд¸ö·þÎñ¶Ë¡£ ÒªÇóͬʱ֧³Öwindows ºÍ linux Á½¸ö ϵͳ¡£  Ò²¾ÍÊÇҪдһ¸ö dllºÍÒ»¸öso Îļþ¡£ÓÉÓÚÎÒÒ»Ö±¶¼ÊÇÔÚwindsÏÂд³ÌÐò¡£linuxµÄ»¹²»»á¡£ Ïò´ó¼Ò×Éѯ ͬʱ Ö§³Ö dllºÍso  Ó¦¸ÃÔõôд¡£
Óô¿c/c ......

¹ØÓÚLINUXµÄÎÊÌâ--ºÃ¾ÃûÉÏÀ´ÁËûÓзÖÁËÏÈлл´ó¼ÒÁË

ÎÒÔÚLINUXÉÏÓÐÁ½¸öÓû§
Ò» root
¶þ myadmin

¡¾myadmin@localhost~¡¿$ dir
Desktop myphp
[myadminlocalhost~]$ cd myphp¡¢DesktopÄܽøÈ¥ÆäËûµÄϵͳĿ¼½ø²»È¥
Ö»ÓÐÕâÁ½¸öĿ¼ ÎÒÏë½øÈëÆäËûµÄÏ ......

linux ÄÚ´æ³õʼ»¯

linux³õʼ»¯Ê±°ÑÖ§³ÖµÄÎïÀíÄÚ´æ¶¼Ó³Éäµ½page tableÖУ¬Ö®ºó½ø³ÌÐèÒªÄÚ´æÊ±£¬Ò²ÊÇÓ³Éäµ½Õâ¸öÎïÀíÄÚ´æÖУ¬Èç´Ë˵À´£¬linux³õʼ»¯Ê±´´½¨µÄpage tableºÍ½ø³ÌÖд´½¨µÄpage tableÖ¸Ïòͬһ¿éÎïÀíÒ³ÃæÂð£¿ÕâÑù×öµÄÄ¿µÄÊÇʲô ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ