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

תÔØ£­linux 2.6 ½ø³Ì×ܽá


תÔØ£­linux 2.6 ½ø³Ì×ܽá
 
 
½ø³Ì¡¢ÇáÁ¿¼¶½ø³Ì£¨LWP£©¡¢Ïß³Ì
½ø³Ì£º³ÌÐòÖ´ÐÐÌ壬ÓÐÉúÃüÆÚ£¬ÓÃÀ´·ÖÅä×ÊÔ´µÄʵÌå
Ị̈߳º·ÖÅäCPUµÄʵÌå¡£
  Óû§¿Õ¼äʵÏÖ£¬Ò»¸öÏß³Ì×èÈû£¬ËùÓж¼×èÈû¡£
  ÄÚºËʵÏÖ£¬²»»áËùÓÃÏà¹ØÏ̶߳¼×èÈû¡£ÓÃLWPʵÏÖ£¬ÓÃÏß³Ì×é±íʾÕâЩÏß³ÌÂß¼­ÉÏËùÊôµÄ½ø³Ì¡£
½ø³ÌÃèÊö·û
½ø³ÌÃèÊö·û£¨¼ò³Æpd, process descriptors£©£¬½á¹¹ÌåÊÇ£ºtask_struct
  Êý¾Ý½Ï¶à£¬´æ·ÅÔÚkenerlµÄ¶¯Ì¬ÄÚ´æ¿Õ¼ä¡£
  pdµÄÒýÓ÷ÅÔÚthread_infoÖУ¬
   thread_infoÓëÄÚºËÕ»£¬·ÅÔÚÒ»¸ö8K¿Õ¼ä£¨ËüµÄµØÖ·8K¶ÔÆ룩¡£Äں˳ÌÐòʹÓõÄÕ»¿Õ¼äºÜС¡£
   thread_infoÔڵײ¿£¬ÄÚºËÕ»ÔÚ¶¥²¿ÏòÏÂÔö³¤¡£
    ºÃ´¦£º¶àCPUʱ·½±ã£¬Ã¿¸öCPU¸ù¾Ý×Ô¼ºµÄÕ»Ö¸Õë¾Í¿ÉÒÔÕÒµ½µ±Ç°µÄpd £¨ÒÔºóÓÃcurrent±íʾµ±Ç°CPUÔËÐеĽø³ÌÃèÊö·û£©¡£
     esp(ÄÚºËÕ»Ö¸Õë)µÍ8λÖÃÁ㣬¾ÍÊÇthread_infoµØÖ·¡£
   Ã¿½ø³ÌÓÐ×Ô¼ºµÄthread_info, (·ÖÅäÊͷź¯Êý: alloc_thread_info, free_thread_info)
ÃèÊö·ûµÄÄÚÈÝ
  Ïà¹ØµÄID £¨Ò»¸ö4ÔªËØÊý×飩
   ½ø³ÌID £¨PID£©
    PID°´´´½¨Ë³ÐòÁ¬ÐøÔö³¤£¬µ½×î´óÖµºó´Ó×îСֵ¿ªÊ¼¡£
    0ºÅ½ø³Ì£º½»»»½ø³Ì£¨swapper£©
    ÓÐPID¿ÉÓÃλͼ£¬±íʾÄÇÒ»¸öPID¿ÉÓã¬ÖÁÉÙÕ¼Ò»¸öÒ³¡£
   Ïß³Ì×éID£¨tgid£©£¬ÓÃLWPʵÏÖ¶àÏß³ÌÖ§³Ö
    ¶à½ø³Ìʱ£¬½ø³Ìid£¬¾ÍÊÇÏß³Ì×éid, Ò²¾ÍÊÇ×鳤µÄpid£¨LWP£©¡£ getpid() È¡µÄÊÇÏß³Ì×éµÄid(tgid), Ò²ÊÇ×鳤µÄpid.
    µ¥Ïß³Ìʱ£¬pid = gid¡£ËùÒÔgetpid,Ò²ÊÇÕæÕýµÄpid.
   ½ø³Ì×éID(pgrp)¡£
   »Ø»°µÄID(session).
    ×éID£¬¶¼ÊÇ×鳤µÄPID¡£FIXME: µ«pbÒ²Óи÷×鳤µÄPID
     Ïß³Ì×鳤£ºtgid
     ½ø³Ì×鳤£ºsignal->pgrp £¬
     »á»°³¤£ºsignal->session
   ¹ÜÀíIDÊý¾Ý½á¹¹——¹þÏ£±í¹ÜÀí (ÀûÓÃidÕÒµ½ËùÓÃÏà¹ØµÄpd£¬·½±ã)¡£
    Ò»¸ö¹þÏ£±íÊý×é(pid_hash),´æ·ÅËĸö¹þÏ£±í£¬ ÿһ¸ö±í´ú±íÒ»Ààid (pid, tgid, pgrp, session)
    ÿ¸ö¹þÏ£±íµÄÓÉÊý×飨Ë÷ÒýΪ¹þÏ£Öµ£©ºÍ¶þάÁ´±í(ǶÈëµ½½ø³ÌÃèÊö·ûÄÚµÄpidsÖÐ)ʵÏÖ
    


Ïà¹ØÎĵµ£º

Fedora Linux Ï°²×°ÅäÖÃC¿ª·¢»·¾³Code::Blocks


Ò»¡¢ÌáÇ°µÄ»°
¡¡¡¡ÒªËµCÓïÑÔºÍLinuxµÄ¹Øϵ´ó¼ÒÓ¦¸Ã¶¼²»»áÄ°Éú£¬LinuxϵͳÄں˾ÍÊÇÓÃCÓïÑÔ¿ª·¢µÄ£¬ËùÒÔËùÓеÄLinuxϵͳÏÂÃæ ¶¼»áÓÐCµÄ±àÒëµ÷ÊÔ¹¤¾ß£¬²»¹ýÕâЩ¹¤¾ß¶¼ÊÇÃüÁîʽµÄ£¬Õýʽ¿ª·¢µÄ»°»áºÜ²»·½±ã¡£FedoraÔÚ°²×°µÄʱºò¿ÉÒÔÑ¡Ôñ°²×°Fedora Eclipse£¬Õâ¸öIDEºÜÇ¿´ó£¬C£¬C++£¬Java£¬PythonµÈµÈ¶¼Ö§³Ö£¬¶øÇÒ±àÒ룬µ÷ÊÔºÍ ......

linuxÏÂC/C++IDE±È½Ï——Code::Blocks

תÔØÇë×¢Ã÷³ö´¦£º±à³Ì±Ê¼ÇBLOG
¹¤ÓûÉÆÆäÊ£¬±ØÏÈÀûÆäÆ÷¡£ÓÃÁËÕâô¾ÃµÄlinux£¬ÏÖÔڱȽÏÖ÷Á÷µÄ¼¸¸öC/C++µÄIDE»ù±¾ÒѶ¼ÓùýÁË£¬ÏÖÔÚÀ´¶ÔËûÃÇ×öһϼòµ¥µÄ±È½Ï¡£
1¡¢VIM
Ê×ÏÈҪ˵µÄÊÇVIM¡£ÎÒÈÏΪ£¬VIMÖ»ÊÇÒ»¸ö±à¼­Æ÷£¬²»ÄÜËãÊÇIDE¡£Ëä˵VIMÓкܶà²å¼þ£¬ÀýÈç´úÂëÕÛµþ¡¢µÝ½øµÈ£¬¿ÉÒÔ½«VIM×齨³É¼¸ºõÀàËÆÒ»¸öIDE£¬µ«Ê¼ÖÕËü²»ÊÇ× ......

Linux Æô¶¯¹ý³ÌÏê½â

Ëæ×ÅLinuxµÄÓ¦ÓÃÈÕÒæ¹ã·º£¬ÌرðÊÇÔÚÍøÂçÓ¦Ó÷½Ã棬ÓдóÁ¿µÄÍøÂç·þÎñÆ÷ʹÓÃLinux²Ù×÷ϵͳ¡£ÓÉÓÚLinuxµÄ×ÀÃæÓ¦ÓúÍWindowsÏà±È»¹ÓÐÒ»¶¨µÄ²î¾à£¬ËùÒÔÔÚÆóÒµÓ¦ÓÃÖÐÍùÍùÊÇLinuxºÍWindows²Ù×÷ϵͳ¹²´æÐγÉÒì¹¹ÍøÂç¡£ÔÚ·þÎñÆ÷¶Ë´ó¶àʹÓÃLinuxºÍUnixµÄ£¬Ä¿Ç°LinuxµÄÉó¤Ó¦ÓÃÁìÓòÊǵ¥Ò»Ó¦ÓõĻù´¡·þÎñÆ÷Ó¦Óã¬Æ©ÈçDNSºÍDHCP·þÎñÆ÷¡¢W ......

linux½ø³ÌµÄÒ»Éú

Ëæ×ÅÒ»¾äfork£¬Ò»¸öнø³ÌßÉßÉÂäµØ£¬µ«ËüÕâʱֻÊÇÀϽø³ÌµÄÒ»¸ö¿Ë¡¡£
È»ºóËæ×Åexec£¬Ð½ø³ÌÍÑÌ¥»»¹Ç£¬Àë¼Ò¶ÀÁ¢£¬¿ªÊ¼ÁËΪÈËÃñ·þÎñµÄÖ°ÒµÉúÑÄ¡£
ÈËÓÐÉúÀϲ¡ËÀ£¬½ø³ÌÒ²Ò»Ñù£¬Ëü¿ÉÒÔÊÇ×ÔÈ»ËÀÍö£¬¼´ÔËÐе½mainº¯ÊýµÄ×îºóÒ»¸ö"}"£¬´ÓÈݵØÀëÎÒÃǶøÈ¥£»Ò²¿ÉÒÔÊÇ×Ôɱ£¬×ÔɱÓÐ2ÖÖ·½
ʽ£¬Ò»ÖÖÊǵ÷ÓÃexitº¯Êý£¬Ò»ÖÖÊÇÔÚma ......

LinuxϽâѹ³£ÓÃÃüÁî

     .tar
¡¡¡¡½â°ü£ºtar xvf FileName.tar
¡¡¡¡´ò°ü£ºtar cvf FileName.tar DirName
¡¡¡¡£¨×¢£ºtarÊÇ´ò°ü£¬²»ÊÇѹËõ£¡£©
¡¡¡¡———————————————
¡¡¡¡.gz
¡¡¡¡½âѹ1£ºgunzip FileName.gz
¡¡¡¡½âѹ2£º ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ