LinuxÒÁµéÔ°ÂÛ̳'s Archiver

clm615 ·¢±íÓÚ 2007-8-14 10:19

systemº¯Êý

ÔÚ¿´APUE10.18Õâ½Ú¿´µ÷ÓÃsystemº¯ÊýµÄ³ÌÐòʱ£¬ÓиöÎÊÌâÏò´ó¼ÒÌֽ̡£ÒÔÏÂʱ³ÌÐòµÄ¼òµ¥ÃèÊö£º
:Vd N+hI8SY.B%K6F sig_int(int),sig_chld(int);
:x(IF!M7zI;V main()
9j1b?FC"I"sB {
eko.v C?3}n signal(SIGINT,sig_int);O2hU0_#@:e ^
signal(SIGCHLD,sig_CHLD);
4KYM#m"q&H%F f^X} system("/bin/ed");}Jb4G?AYg4v
ÊéÉÏ˵Õâ¸ö³ÌÐòµÄ¹ý³ÌÊÇ£ºa.out£¨¸¸½ø³Ì£©fork³öÒ»¸öshell´¦ÀíÃüÁȻºóÔÚshellÉÏforkÒ»¸ö½ø³ÌÄǾÍÊÇed¡£ Q7Kd [y){8Z!N X7Iv
4OUmlS
ÔÚ½âÊÍÕâ¸ö³ÌÐòÊÇÓÐÕâôһ¶Î»°£º¡°µ±±à¼­³ÌÐòÖÕֹʱ£¬¶Ô¸¸½ø³Ì(a.out½ø³Ì)²úÉúSIGCHLDÐźš£¸¸½ø³Ì²¶×½Ëü£¬Ö´ÐÐÆä´¦Àí³ÌÐò sig_chld£¬È»ºó´ÓÆä·µ»Ø¡£µ«ÊÇÈô¸¸½ø³ÌÕý²¶×½SIGCHLDÐźţ¬ÄÇôÔÚsystemº¯ÊýÖ´ÐÐʱ£¬¸¸½ø³ÌÖиÃÐźŵĵÝËÍÓ¦µ±×èÈû¡£Êµ¼ÊÉÏ£¬Õâ¾ÍÊÇ POSIXËù˵Ã÷µÄ¡£·ñÔò£¬µ±system´´½¨µÄ×Ó½ø³Ì½áÊøÊ±£¬systemµÄµ÷ÓÃÕß¿ÉÄÜ´íÎóµØÈÏΪ£¬Ëü×Ô¼ºµÄÒ»¸ö×Ó½ø³Ì½áÊøÁË¡£¡±kKM&Bzv
&p7[5} \C)^2w O
1¡¢Ëû˵µ±±à¼­³ÌÐòÖÕֹʱ£¬¶Ô¸¸½ø³Ì(a.out½ø³Ì)²úÉúSIGCHLDÐźţ¬±à¼­³ÌÐòµÄ¸¸½ø³Ì²»ÊÇshellÂð£¬Ôõô»áÊÇa.outÄØ£¿
\gE4_4Nn0q] R 2¡¢¡°µ±system´´½¨µÄ×Ó½ø³Ì½áÊøÊ±£¬systemµÄµ÷ÓÃÕß¿ÉÄÜ´íÎóµØÈÏΪ£¬Ëü×Ô¼ºµÄÒ»¸ö×Ó½ø³Ì½áÊøÁË¡£¡±system´´½¨µÄ×Ó½ø³ÌÊÇed±à¼­Æ÷£¬ systemµÄµ÷ÓÃÕßÊÇa.out,ed½áÊøµÄʱºò£¬ÊÇÓÉshellÊÕµ½SIGCHLDÐźŵģ¬a.out Ôõô»áÈÏΪ×Ô¼ºµÄ×Ó½ø³Ì½áÊøÁËÄØ£¬a.outûÊÕµ½ÐźŰ¡£¿:eUPN)Ct
4Jad5mU.w%xk
[[i] ±¾Ìû×îºóÓÉ clm615 ÓÚ 2007-8-14 12:14 ±à¼­ [/i]]

clm615 ·¢±íÓÚ 2007-8-14 12:14

ÎÒ×Ô¼º¶¥ÉÏÈ¥£¬´ó¼Ò°ïæ¿´Ï °¡

flag ·¢±íÓÚ 2007-8-16 09:31

1¡¢Äã¾õµÃshellÊÇʲô£¿ÊdzÌÐòÂð£¿5^ uQ0u6D
2¡¢ÎÒ¾õµÃÄã¶ÏÕÂÈ¡ÒåÁË£¬Õâ¾ä»°Ö»ÊÇΪÁË˵Ã÷ÔÚsystemº¯ÊýÖ´ÐÐʱ£¬¸¸½ø³ÌÖиÃÐźŵĵÝËÍÓ¦µ±×èÈû

Ò³: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.