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````ÎҾͺܲ»Ã÷°×£à£à£à£à¸Ð¾õÓ¦¸ÃûÎÊÌâ°¢£à£à£à£à
Ïà¹ØÎÊ´ð£º
СµÜ×î½üÐèÒªÒ»¸öÓÃsocket»ñÈ¡htmlÎĵµµÄ´úÂ룬µ«ÊÇÀÏÊDz»ÄÜ»ñÈ¡ÍêÕûµÄhtmlÔ´Âë¡£ÔÒò²»Ã÷£¬Íû¸ßÊÖÖ¸µã£¡
C/C++ code:
char *Http_GET(char *host,int port,char *data) //·¢ËÍGETÇëÇó
{
char response[2 ......
ÎÒÖ®Ç°ÖÆ×÷µÄlinux×Ô¶¯°²×°isoÒѾ³É¹¦ÁË£¬ÏÖÔÚÏë¶ÔÆä½øÐÐһЩ¶¨ÖÆÐ޸쬱ÈÈ磬¸ü¸ÄgrubͼƬµÈ¡£
ÎÒÔÚks.cfgµÄ%post¶ÎÀïÃæÊÇÕâÑùдµÄ£º
%post --nochroot
# Move the contents of the tar into their new locati ......
¸÷λ´óϺ£¬ÎÒÕýÔÚѧϰLinux£¬¿ÉÊÇLinuxͼÐνçÃæºÍÃüÁîÐÐÖ®¼äÇл»Óöµ½À§ÄÑ£¬ÔÚÃüÁîÐÐÏÂÊäÈëstartx£¬²»ÊǽøÈëͼÐνçÃæ
¶øÊdzöÏÖ
ÇëÎʸ÷룬ÕâÊÇΪʲô£¿ ¶øÇÒ°´Ctrl+Alt+F7£¬Ò²²»ÄÜÃüÁîÐнøÈëͼÐνçÃæ¡£
¼±¼±¼±
......
linux³õʼ»¯Ê±°ÑÖ§³ÖµÄÎïÀíÄÚ´æ¶¼Ó³Éäµ½page tableÖУ¬Ö®ºó½ø³ÌÐèÒªÄÚ´æÊ±£¬Ò²ÊÇÓ³Éäµ½Õâ¸öÎïÀíÄÚ´æÖУ¬Èç´Ë˵À´£¬linux³õʼ»¯Ê±´´½¨µÄpage tableºÍ½ø³ÌÖд´½¨µÄpage tableÖ¸Ïòͬһ¿éÎïÀíÒ³ÃæÂð£¿ÕâÑù×öµÄÄ¿µÄÊÇʲô ......
ÔÚlinuxÏÂдµÄһЩС³ÌÐòºÍ½Å²½£¬Ã¿´ÎÒªÔËÐж¼ÓÐÇл»µ½ËüËùÔÚµÄĿ¼£¬
ÔõÑùÈÃËüÔÚÆäËûĿ¼Ҳ¿ÉÒÔÓÃÄØ£¿¾ÍÈçÓÃvi»òlsÕâЩÃüÁîÒ»Ñù
³¢ÊÔ¹ýÌí¼Ó»·¾³±äÁ¿£¬µ«²»³É¹¦£¬²»¶®
ûÓÐÈ˻شð
ÏñviÄÇЩ£¬ËüÃÇËùÔÚµÄĿ¼¶¼Å ......