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

×ªÔØ linux 2.6Ï̴߳´½¨Ô´Âë·ÖÎö


linux 2.6Ï̴߳´½¨Ô´Âë·ÖÎö
 
 
 ÉÏÕ½²µ½Ị̈߳¬ÏÖÔÚ¶ÔÏ̴߳´½¨µÄ´úÂëÁ÷³Ì·ÖÎöÏ¡£À´Ò»²½Ò»²½½Ò¿ªËýÉñÃØµÄÃæÉ´
 
 linuxÄں˴´½¨Ï̺߳¯Êý kernel_thread()£¬×îÖÕ»áµ÷ÓÃdo_fork().
 Ç°ÃæÌ¸µ½Ïß³ÌÒ²ÊÇÓÃtask_struct½á¹¹±íʾËüÓµÓеÄÐÅÏ¢£¬Ö»ÊÇÊǹ²Ïí½ø³ÌµÄ×ÊÔ´¡£
 ¸ù¾Ýclone_flags±êÖ¾£¬À´µ÷ÓÃclone()´´½¨"Ïß³Ì"£¬±íʾ¹²ÏíÄÚ´æ¡¢¹²ÏíÎļþϵͳ·ÃÎʼÆÊý¡¢¹²ÏíÎļþÃèÊö·û±í£¬ÒÔ¼°¹²ÏíÐźŴ¦Àí·½Ê½¡£
 
 kernel_thread¶¨ÒåÔÚ/arch/kernel/process.c
int kernel_thread(int (*fn)(void *), void * arg, unsigned long flags)
{
       struct pt_regs regs;   
       memset(&regs, 0, sizeof(regs));         //°Ñ¸Ã½á¹¹µÄ±äÁ¿È«²¿Çå0
       regs.ebx = (unsigned long) fn;          /* ebxÖ¸Ïòº¯ÊýµØÖ· */
       regs.edx = (unsigned long) arg;         /* edxÖ¸Ïò²ÎÊýµØÖ· */
       regs.xds = __USER_DS;
       regs.xes = __USER_DS;
       regs.xfs = __KERNEL_PERCPU;
       regs.orig_eax = -1;
       regs.eip = (unsigned long) kernel_thread_helper;       /*eipÖ¸Ïò»Øµ÷º¯Êý*/
       regs.xcs = __KERNEL_CS | get_kernel_rpl();
       regs.eflags = X86_EFLAGS_IF | X86_EFLAGS_SF | X86_EFLAGS_PF | 0x2;
       /* ÀûÓÃdo_forkÀ´²úÉúÒ»¸öеÄÏß³Ì,¹²Ïí¸¸½ø³ÌµØÖ·¿Õ¼ä,²¢ÇÒ²»ÔÊÐíµ÷ÊÔ×Ó½ø³Ì */
       return do_fork(flags | CLONE_VM | CLONE_UNTRACED, 0, &regs, 0, NULL, NULL);
}
ÆäÖÐ__USER_DS£¬__KERNEL_PERCPU£¬__KERNEL_CS¶¼ÊÇһЩºê¶¨Òå¡£ÔÚ/linux/include/asm-i386/segment.h
extern void kernel_thread_helper(void); 


Ïà¹ØÎĵµ£º

linux waitº¯Êý½âÎö

½ø³ÌÒ»µ©µ÷ÓÃÁËwait£¬¾ÍÁ¢¼´×èÈû×Ô¼º£¬ÓÉwait×Ô¶¯·ÖÎöÊÇ·ñµ±Ç°½ø³ÌµÄij¸ö×Ó½ø³ÌÒѾ­Í˳ö£¬Èç¹ûÈÃËüÕÒµ½ÁËÕâÑùÒ»¸öÒѾ­±ä³É½©Ê¬µÄ×Ó½ø³Ì£¬wait ¾Í»áÊÕ¼¯Õâ¸ö×Ó½ø³ÌµÄÐÅÏ¢£¬ ²¢°ÑËü³¹µ×Ïú»Ùºó·µ»Ø£»Èç¹ûûÓÐÕÒµ½ÕâÑùÒ»¸ö×Ó½ø³Ì£¬wait¾Í»áÒ»Ö±×èÈûÔÚÕâÀֱµ½ÓÐÒ»¸ö³öÏÖΪֹ¡£
wait£¨µÈ´ý×Ó½ø³ÌÖжϻò½áÊø£©
Ïà¹Øº¯Êý waitp ......

Linux ÏÂphpµÄ°²×°

»·¾³Èí¼þ°æ±¾½éÉÜ£º
 
   APACHE 2.0.59
   PHP5.2.3
   MYSQL5.0.45
   GD-2.0.35
   Zend Optimizer v3.3.0
  
                     ......

ÐéÄâ»úLinuxÉèÖÃ

Fedora8----------VMWare6.03 build-80004
1. host(win)-guest(fedora)¹²ÏíÎļþ¼Ð
ÔÚVMWareÖÐÉèÖù²ÏíÎļþ¼Ð
Ñ¡Ôñvmware workstation³ÌÐò²Ëµ¥ÖÐVM > install VMware tools...
 #mkdir /mnt/cdrom
 #mount -t iso9660 /dev/cdrom /mnt/cdrom£¨vmtoolsµÄ°²×°Îļþ·ÅÔÚvmwareÐéÄâµÄcdromÖУ¬Ê×ÏÈÒªmoun ......

ubuntu Linux ³£ÓõÄÃüÁî

ÒÔÏÂÊdz£ÓõÄÃüÁîÓëÓ÷¨£º  
 
  ÔÚʹÓùý³ÌÖÐËæÊ±Ìí¼Ó¡£¡£¡£
1.ÔÝʱÒÔ root Éí·ÝÔËÐÐÃüÁ sudo
2.½âѹËõ .rar Îļþµ½µ±Ç°Îļþ¼Ð£º rar  e  file_name.rar
3.ÔÚlinux Ï´ò¿ªchm ¸ñʽÎļþ£º
KchmViewer
   ¿ÉÔÚ£¬ubuntu ÏÂÖ±½ÓÓà ³ÌÐò¹ÜÀíÆ÷ °²×°......
4.
ÉèÖÃrootÕÊ» ......

ÁªÏëΪºÎ·ÅÆú¹ú²úLinux£¿






<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
-->
     ÁªÏ루
Lenovo
China
£©ÔøÊǹúÈ˵Ľ¾°Á£¬ÏÖÔÚÔõÑùÁË£¿
 
     4
ÔÂ
14
ÈÕÉÏÎ磬ÎÒÈ¥¹ú¼Ò»áÕ¹ÖÐÐÄ£¨°ÂÔË´å±±£©²Î¹Û
Intel
ÐÅÏ¢¼¼Êõ·å»á£¨
IDF
2010
£©µÄÕ¹³ö£¬Ó ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ