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

Linux kernel ѧϰ±Ê¼Ç£¨1£© ·Ö¶Î·ÖÒ³±£»¤»úÖÆ

ʹÓÃ80x86´¦ÀíÆ÷½øÐÐÑ°Ö·Ê±Ç£Éæµ½ÈýÖÖ²»Í¬µÄµØÖ·£¬Æä¹ØÏµÈçÏÂËùʾ
Âß¼­µØÖ·------------------->ÏßÐÔµØÖ·-------------------------->ÎïÀíµØÖ·
                 £¨·Ö¶Î£©                             £¨·ÖÒ³£©
·Ö¶ÎµÄ±£»¤»úÖÆ£º
Ò»¸öÂß¼­µØÖ·ÓÉÁ½²¿·Ö×é³É£º¶Î±êʶ·ûºÍÆ«ÒÆÁ¿¡£ÆäÖÐÆ«ÒÆÁ¿ÊÇÒ»¸ö32볤µÄ×ֶΣ¬¶Î±êʶ·ûÊÇÒ»¸ö16볤µÄ×ֶΣ¬³ÆÎª¶ÎÑ¡Ôñ·û£¬º¬ÓÐÒ»¸ö13λµÄ¶ÎÃèÊö·ûË÷Òý£¬Ò»¸ö1λµÄGDTºÍLDTָʾλºÍÒ»¸öÁ½Î»µÄÇëÇóÕßÌØÈ¨¼¶¡£
ÇëÇóÕßÌØÈ¨¼¶£¨RPL£©ÊÇÓÃÀ´Ö¸Ê¾µ±Ç°CPUµÄÌØÈ¨¼¶¡£0´ú±í×î¸ßÓÅÏȼ¶£¬3´ú±í×îµÍÓÅÏȼ¶£¬LinuxÖ»ÓÃ0ºÍ3£¬·Ö±ð³ÆÖ®ÎªÄÚºË̬ºÍÓû§Ì¬¡£
ΪÁË¿ìËÙ·½±ãµÄÕÒµ½¶ÎÑ¡Ôñ·û£¬´¦ÀíÆ÷ÌṩÁ˶μĴæÆ÷£¬¶Î¼Ä´æÆ÷µÄΨһĿµÄÊÇ´æ·Å¶ÎÑ¡Ôñ·û£¬ÆäÖÐCS¼Ä´æÆ÷Öаüº¬Ò»¸öÁ½Î»µÄ×ֶΣ¬ÓÃÀ´Ö¸Ã÷CPUµÄµ±Ç°ÓÅÏȼ¶£¨CPL£©¡£
¶ÎÃèÊö·ûÊÇÓÉ8¸ö×Ö½ÚÀ´±íʾ¶ÎµÄÌØÐÔ£¬Ëü±»±£´æÔÚÈ«¾ÖÃèÊö·û±í£¨GDT£©ºÍ¾Ö²¿ÃèÊö·û±í£¨LDT£©ÖУ¬ÓÉÓÚ¶ÎÃèÊö·ûµÄÄÚÈݽ϶࣬Ôڴ˲»Ò»Ò»½éÉÜ¡£¹Ø¼üµÄÓÐÒ»¸öÁ½Î»±íʾµÄÃèÊö·ûÌØÈ¨¼¶£¨DPL£©£¬Ö÷ÒªÓÃÓÚÏÞÖÆ¶ÔÕâ¸ö¶ÎµÄ´æÈ¡£¬Ëü±íʾ¿ÉÒÔ·ÃÎÊÕâ¸ö¶ÎµÄ×îСCPUÓÅÏȼ¶¡£
ÒÔÉÏÈý¶Î¹²Ìáµ½3¸öÌØÈ¨¼¶£¬·Ö±ðÊÇRPL¡¢CPLºÍDPL¡£ÊDz»ÊÇÓеãÔÎÁË£¬²»×ż±£¬ÏÂÃæËµÃ÷Èý¸öµÄ¹ØÏµ¡£
DPL£ºÃèÊö·ûÌØÈ¨¼¶£¨Descriptor Privilege Level£©
´æ´¢ÔÚÃèÊö·ûÖеÄȨÏÞ룬ÓÃÓÚÃèÊö´úÂëµÄËùÊôµÄÌØÈ¨µÈ¼¶£¬Ò²¾ÍÊÇ´úÂë±¾ÉíÕæÕýµÄÌØÈ¨¼¶¡£Ò»¸ö³ÌÐò¿ÉÒÔʹÓöà¸ö¶Î(Data£¬Code£¬Stack)Ò²¿ÉÒÔÖ»
ÓÃÒ»¸öcode¶ÎµÈ¡£Õý³£µÄÇé¿öÏ£¬µ±³ÌÐòµÄ»·¾³½¨Á¢ºÃºó£¬¶ÎÃèÊö·û¶¼²»ÐèÒª¸Ä±ä——µ±È»DPLÒ²²»ÐèÒª¸Ä±ä£¬Òò´Ëÿ¸ö¶ÎµÄDPLÖµÊǹ̶¨¡£
CPL£ºµ±Ç°ÌØÈ¨¼¶£¨Current Privilege Level£©
ÊÇCS register Àïbit 0ºÍbit 1 Î»×éºÏËùµÃµÄÖµ.ÔÚijһʱ¿Ì¾ÍÖ»ÓÐÕâ¸öֵΨһµÄ´ú±í³ÌÐòµÄCPL¡£ÔÚLinuxϵͳÖдú±íµ±Ç°´¦ÓÚÄÚºË̬»¹ÊÇÓû§Ì¬¡£
 
RPL£ºÇëÇóÌØÈ¨¼¶RPL(Request Privilege Level)
RPL±£´æÔÚÑ¡Ôñ×ÓµÄ×îµÍÁ½Î»¡£
RPL
˵Ã÷µÄÊǽø³Ì¶Ô¶Î·ÃÎʵÄÇëÇóȨÏÞ£¬Òâ˼Êǵ±Ç°½ø³ÌÏëÒªµÄÇëÇóȨÏÞ¡£
RPL
µÄ
Öµ
ÓɳÌÐòÔ±×Ô¼ºÀ´×ÔÓɵÄÉèÖ㬲¢²»Ò»¶¨RPL>=CPL£¬µ«Êǵ±RPL<CPLʱ£¬Êµ¼ÊÆð×


Ïà¹ØÎĵµ£º

Linux»·¾³½ø³Ì¼äͨÐÅ ¹²ÏíÄÚ´æ(ÉÏ£©

   ¹²ÏíÄÚ´æ¿ÉÒÔ˵ÊÇ×îÓÐÓõĽø³Ì¼äͨÐÅ·½Ê½£¬Ò²ÊÇ×î¿ìµÄIPCÐÎʽ¡£Á½¸ö²»Í¬½ø³ÌA¡¢B¹²ÏíÄÚ´æµÄÒâ˼ÊÇ£¬Í¬Ò»¿éÎïÀíÄÚ´æ±»Ó³Éäµ½½ø³ÌA¡¢B¸÷×ԵĽø³ÌµØÖ·¿Õ¼ä¡£½ø³ÌA¿ÉÒÔ¼´Ê±¿´µ½½ø³ÌB¶Ô¹²ÏíÄÚ´æÖÐÊý¾ÝµÄ¸üУ¬·´Ö®ÒàÈ»¡£ÓÉÓÚ¶à¸ö½ø³Ì¹²Ïíͬһ¿éÄÚ´æÇøÓò£¬±ØÈ»ÐèҪijÖÖͬ²½»úÖÆ£¬»¥³âËøºÍÐźÅÁ¿¶¼¿ÉÒÔ¡£
 &nbs ......

Linux»·¾³½ø³Ì¼äͨÐÅ ¹²ÏíÄڴ棨Ï£©


ÔÚ¹²ÏíÄڴ棨ÉÏ£©ÖУ¬Ö÷ÒªÎ§ÈÆ×Åϵͳµ÷ÓÃmmap()½øÐÐÌÖÂ۵쬱¾²¿·Ö½«ÌÖÂÛϵͳV¹²ÏíÄڴ棬²¢Í¨¹ýʵÑé½á¹û¶Ô±ÈÀ´²ûÊöÁ½ÕßµÄÒìͬ¡£ÏµÍ³V¹²ÏíÄÚ´æÖ¸µÄÊǰÑËùÓй²ÏíÊý¾Ý·ÅÔÚ¹²ÏíÄÚ´æÇøÓò£¨IPC shared memory region£©£¬ÈκÎÏëÒª·ÃÎʸÃÊý¾ÝµÄ½ø³Ì¶¼±ØÐëÔÚ±¾½ø³ÌµÄµØÖ·¿Õ¼äÐÂÔöÒ»¿éÄÚ´æÇøÓò£¬ÓÃÀ´Ó³Éä´æ·Å¹²ÏíÊý¾ÝµÄÎïÀíÄÚ´æÒ³Ãæ ......

vmwareÐéÄâlinux¾ÖÓòÍøÖÐÉÏÍø

vmwareÐéÄâlinux¾ÖÓòÍøÖÐÉÏÍø 
¶ÔÓÚ³õѧlinuxµÄÅóÓÑ£¬×îºÃÊÇÔÚwindowsÏÂÓÃvmwareÐéÄâÒ»¸ölinux£¬Èç¹ûÊǾÖÓòÍø£¬¿ÉÒÔʹÓÃNAT·½Ê½×îΪ¼òµ¥¡£
ÓÃVMnet8£¬°²×°ºÃºó£¬Ñ¡ÔñNAT·½Ê½£¬È»ºóÔÚwindowsÖ÷»úÉÏÓÃipconfig²é¿´VMnet8µÄIPµØÖ·£¬ÔËÐÐ->cmd->ipconfig -all
Ò»°ãÊÇ192.168.X.1/255.255.255.0
´ËʱVMnet8µÄÉèÖ ......

Linux¿ª»úÁ÷³Ì

1¡¢¼ÓÔØ   BIOS   µÄÓ²¼þÐÅÏ¢£¬²¢È¡µÃµÚÒ»¸ö¿ª»ú×°ÖõĴúºÅ£»  
2¡¢¶ÁÈ¡µÚÒ»¸ö¿ª»ú×°ÖõĠ  MBR   µÄ   boot   Loader   (Ò༴ÊÇ   lilo,   grub,   spfdisk   µÈµÈ)   µÄ¿ª»úÐÅÏ¢£ ......

LinuxÖÐÈçºÎʹÓÃÃüÁîÐÞ¸ÄÎļþËùÊôÓû§×飿

ÏÈÀ´Á˽âÒ»ÏÂÎļþÊôÐÔ£¬
ÔÚshell»·¾³ÀïÊäÈ룺ls -l ¿ÉÒԲ鿴µ±Ç°Ä¿Â¼Îļþ¡£È磺
drwxr-xr-x 2 nsf users 1024 12-10 17:37 ÏÂÔØÎļþ±¸·Ý
·Ö±ð¶ÔÓ¦µÄÊÇ£º
ÎļþÊôÐÔ Á¬½ÓÊý ÎļþÓµÓÐÕß ËùÊôȺ×é Îļþ´óС ÎļþÐÞ¸Äʱ¼ä ÎļþÃû
ÕâÀïrÊǿɶÁ£¬w¿Éд,x ¿ÉÖ´ÐУ¬ÆäÖÐÎļþÊôÐÔ·ÖΪËĶΣ¬---- --- --- 10¸öλÖÃ
ÀýÈ磺
¡¡¡¡d ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ