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

Linux¶à½ø³ÌÏà¹ØÄÚÈÝ

Linux¶à½ø³ÌÏà¹ØÄÚÈÝ
°æȨÉùÃ÷£º¿ÉÒÔÈÎÒâתÔØ£¬µ«×ªÔØʱ±ØÐë±êÃ÷Ô­×÷Õßcharlee¡¢Ô­Ê¼Á´½Óhttp://tech.idv2.com/2006/10/14/linux-multiprocess-info/ÒÔ¼°±¾ÉùÃ÷¡£
×î½üÔÚÓà perl дһ¸öLinuxϵĶà½ø³ÌÊØ»¤½ø³Ì£¬Òò´ËÑо¿ÁËÒ»ÏÂLinuxϵĽø³ÌÏà¹ØµÄ֪ʶ¡£ÏÖ½«ÐĵÃ×ܽáһϡ£Ö÷ÒªÊǹØÓÚ½ø³Ì´´½¨ºÍ»ØÊÕ¡£
fork
SIGCHLDÐźźͽ©Ê¬½ø³Ì
ÀûÓà waitpid »ØÊÕ½©Ê¬½ø³Ì
ºöÂÔ SIGCHLD »ØÊÕ½©Ê¬½ø³Ì
fork
Ê×ÏÈ˵˵ fork
º¯Êý¡£Õâ¸öº¯ÊýÓÃÀ´´´½¨Ò»¸ö½ø³Ì£¬²»¹ý´´½¨·½·¨ÓÐЩ²»Ì«ºÃÀí½â¡£ÏÈ¿´ÏÂÃæµÄ³ÌÐò
fork-test.pl¡£ÎÒÊÇÓÃperlдµÄ£¬²»¹ýÏàͬµÄ¹¦ÄÜÒ²¿ÉÒÔÓà C À´Íê³É¡£
#!/usr/bin/perl
#------------------------------------
# fork-test.pl
print "Program started, pid=$$.\n";
if ($child_pid = fork()) {
print "I'm parent, my pid=$$, child's pid=$child_pid.\n";
} else {
print "I'm child, pid=$$.\n";
}
ÔËÐÐÖ®ºóÏÔʾÏÂÃæµÄ½á¹û¡£
Program started, pid=8934.
I'm child, pid=8935.
I'm parent, my pid=8934, child's pid=8935.
Ϊʲô I'm child ºÍ I'm parent ¶¼»á±»ÏÔʾ£¿ÕâÊÇÒòΪ fork µ÷ÓÃʱ£¬µ±Ç°µÄ½ø³Ì»á´Ó fork µÄλÖÃÒ»·ÖΪ¶þ£¬fork
¶ÔÁ½¸ö½ø³ÌµÄ·µ»ØÖµ²»Í¬¡£ÔÚ¸¸½ø³ÌÖÐ fork ·µ»Ø×Ó½ø³Ì(¼´ÁíÒ»¸ö½ø³Ì)µÄ½ø³Ìid£¬¶øÔÚ×Ó½ø³ÌÖÐ fork ·µ»Ø 0¡£ÉÏÀýµÄÖ´Ðйý³ÌÈçÏÂͼ¡£
ÉÏÀýÖÐÖ´Ðе½ Program started ʱ£¬Ö»ÓÐÒ»¸ö½ø³Ì 8934£¬¶øÖ´Ðе½ fork ʱ£¬½ø³Ì·ÖΪÁ½¸ö£¬¸¸½ø³ÌΪ 8934£¬×Ó½ø³ÌΪ
8935¡£½ÓÏÂÀ´¸¸½ø³ÌÖ´ÐÐ if ·ÖÖ§£¬ÊäÈë“I'm parent..”£¬¶ø×Ó½ø³ÌÖ´ÐÐ else ·ÖÖ§£¬Êä³ö “I'm child”¡£
SIGCHLDÐźźͽ©Ê¬½ø³Ì
Ê×ÏÈ˵˵ʲôÊǽ©Ê¬½ø³Ì(zombie process)¡£ÎÒÃÇÖªµÀ Linux
ʹÓýø³Ì±íÀ´¹ÜÀí½ø³Ì£¬Ã¿¸ö½ø³Ì¶¼ÔÚ½ø³Ì±íÖÐÕ¼¾ÝÒ»¸öλÖᣵ±ÎÒÃÇÓà fork
Éú³ÉÒ»¸ö×Ó½ø³Ì£¬È»ºó¸Ã×Ó½ø³ÌÍ˳öʱ£¬ÏµÍ³²»»á×Ô¶¯»ØÊÕ¸Ã×Ó½ø³ÌËùռλÖᣴËʱËäÈ»½ø³Ì±íÖÐÓÐÕâ¸ö×Ó½ø³ÌµÄÐÅÏ¢£¬µ«Êµ¼ÊÉϸÃ×Ó½ø³ÌÔçÒѽáÊø£¬ÓÚÊÇÕâ¸ö½ø³Ì¾Í³ÉÁË“½©Ê¬½ø³Ì”¡£
½©Ê¬½ø³ÌËäÈ»²»Õ¼ÓÃϵͳ×ÊÔ´£¬µ«ÊÇËü»áÀ˷ѽø³Ì±íµÄλÖá£Èç¹û½©Ê¬½ø³ÌÌ«¶à£¬ÓпÉÄܻᵼÖ²»ÄÜ´´½¨Ð½ø³Ì¡£ÏÂÃæµÄÀý×Ó zombie-test.pl
ÑÝʾÁËÈçºÎ´´½¨½©Ê¬½ø³Ì£º
#!/usr/bin/perl
#------------------------------------
# zombie-test.pl
sub child {
print "I'm child, pid=$$.\n";
}
while (1) {
if (fork() == 0) {


Ïà¹ØÎĵµ£º

Linux×ÀÃæÓëÈí¼þ³ö×âÒµÎñ






<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
-->
    Ëùν“³ö×┣¨
rent
out
£©¾ÍÊÇÒ»Öֺܳ£¼ûµÄ×âÁÞÒµÎñ¡£ÔÚ
IT
½ç£¬ÕâÖÖÈí¡¢Ó²¼þ£¨×éºÏ£©µÄ×âÁÞÒµÎñÒ²¿ÉËãÊÇÒ»¸ö“ÀϹŶ­”ÁË¡£Õâ¸ö»°ÌâΪʲô×î½üÓÖÈÈÄÖÆðÀ´ÁËÄØ£¿
 
  ......

Linux ³õ½Ó´¥

1. װϵͳ
ÎÒ×°µÄ˫ϵͳ£¬Windows 7 ºÍ Fedora 12.
1£©ÎÒµÄCÅÌÓÐ50GB£¬ËùÒÔÎÒÏÈ·ÖÁËÇø£¬·Ö³É3¸ö£¬1¸ö30GB£¬1¸ö15GB£¬Ê£ÏµÄÒ»¸öÇø3GB¡£
2£©ÏÈ×°Windows 7ÔÚ30GBµÄ·ÖÇø¡£
     P£ºSonyµÄÐͺÅVGN-NR120EºÜ±ä̬£¬°²×°µÄʱºò±ØÐëÒªÓÃ×îв¹¶¡µÄ°²×°Å̲ſÉÒÔÇý¶¯µ½Ó²ÅÌ£¨µ¼Ö²»ÄÜ×°XP£©£¬¿ÉÄÜÊÇHDD ......

Linux¿ª»ú×Ô¶¯¹ÒÔØwindows¹²ÏíÎļþ¼Ð

±à¼­gedit /etc/fstab:
//192.168.1.1/winshare /mnt/share defaults,auto,username=windowsÓû§Ãû, password=windowsÃÜÂë 0 0
±¸×¢£º
£¨1£©ÖÕ¶ËÃüÁîÐйÒÔØ£ºmount //192.168.1.1/winshare /mnt/share -o user=windowsÓû§Ãû%windowsÃÜÂë
£¨2£©etc/rc.d/rcÔò¸ù¾ÝÆä²ÎÊýÖ¸¶¨µÄÔËÐÐģʽ(ÔËÐ춱ð£¬ÔÚinittabÎļþÖпÉÒÔÉèÖ ......

Linux ÔӼǣ¨Ò»£©

³µË®ÂíÁú£¬ÂҼǵ㶫Î÷¡£
Ò»¿ªÊ¼²»ÈÃÎÒ±àÒëÄںˣ¬½á¹ûÊÇÏÂÃæµÄÎÊÌâµ¼Ö£º
1. sudo --- ÄÃrootÉí·ÝÖ´ÐÐ
2. apt-cache search ncurse --- ɨÃèËùÓдøncurseµÄ×ÊÔ´
3. apt-get install libX-dev --- °²×°¿ª·¢ÓõÄlib¿â
4. cp -r --- È«Ãæ¾µÏñ¸´ÖÆ
5. bz2 --- ѹËõ tar jcvf ½âѹ tar jxvf
6. Ubuntu Éú³É ......

linuxÃüÁî×ܽá

Ãû³Æ£ºcat
ʹÓÃȨÏÞ£ºËùÓÐʹÓÃÕß
ʹÓ÷½Ê½£ºcat [-AbeEnstTuv] [--help] [--version] fileName
˵Ã÷£º°Ñµµ°¸´®Á¬½Óºó´«µ½»ù±¾Êä³ö£¨Ó©Ä»»ò¼Ó > fileName µ½ÁíÒ»¸öµµ°¸£©
²ÎÊý£º
-n »ò --number ÓÉ 1 ¿ªÊ¼¶ÔËùÓÐÊä³öµÄÐÐÊý±àºÅ
-b »ò --number-nonblank ºÍ -n ÏàËÆ£¬Ö»²»¹ý¶ÔÓÚ¿Õ°×Ðв»±àºÅ
-s »ò --squeez ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ