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

LinuxÒ³¿ò¹ÜÀí

ÔÚÇ°ÃæµÄ²©ÎÄÀÎÒÃǽ²½âÁË»ùÓÚ80x86ÌåϵµÄLinuxÄں˷ֶκͷÖÒ³»úÖÆ£¬²¢ÏêϸµØÌÖÂÛÁËLinuxµÄÄÚ´æ²¼¾Ö¡£ÓÐÁËÕâЩ»ù±¾¸ÅÄîÒÔºó£¬ÎÒÃǾÍÀ´ÏêϸÌÖÂÛÄÚºËÈçºÎ¶¯Ì¬µØ¹ÜÀíÄÇЩ¿ÉÓõÄÄÚ´æ¿Õ¼ä¡£
¶ÔÓÚ80386ÕâÖÖ32λµÄ´¦ÀíÆ÷½á¹¹£¬Linux²ÉÓÃ4KBÒ³¿ò´óС×÷Ϊ±ê×¼µÄÄÚ´æ·ÖÅäµ¥Ôª¡£Äں˱ØÐë¼Ç¼ÿ¸öÒ³¿òµÄµ±Ç°×´Ì¬£¬ÀýÈç£¬Çø·ÖÄÄЩҳ¿ò°üº¬µÄÊÇÊôÓÚ½ø³ÌµÄÒ³£¬¶øÄÄЩҳ¿ò°üº¬µÄÊÇÄں˴úÂë»òÄÚºËÊý¾Ý¡£Äں˻¹±ØÐëÄܹ»È·¶¨¶¯Ì¬ÄÚ´æÖеÄÒ³¿òÊÇ·ñ¿ÕÏУ¬Èç¹û¶¯Ì¬ÄÚ´æÖеÄÒ³¿ò²»°üº¬ÓÐÓõÄÊý¾Ý£¬ÄÇôÕâ¸öÒ³¿ò¾ÍÊÇ¿ÕÏеġ£ÔÚÒÔÏÂÇé¿öÏÂÒ³¿òÊDz»¿ÕÏеģº°üº¬Óû§Ì¬½ø³ÌµÄÊý¾Ý¡¢Ä³¸öÈí¼þ¸ßËÙ»º´æµÄÊý¾Ý¡¢¶¯Ì¬·ÖÅäµÄÄÚºËÊý¾Ý½á¹¹¡¢É豸Çý¶¯³ÌÐò»º³åµÄÊý¾Ý¡¢ÄÚºËÄ£¿éµÄ´úÂëµÈµÈ¡£
ÄÚºËÓÃÊý¾Ý½á¹¹pageÃèÊöÒ»¸öÒ³¿òµÄ״̬ÐÅÏ¢£¬ËùÓеÄÒ³ÃèÊö·û´æ·ÅÔÚÈ«¾Ömem_mapÊý×éÖУ¬ÆäÊý×éµÄϱêΪҳ¿òºÅ£¨pfn£©¡£ÒòΪÿ¸öÃèÊö·û³¤¶ÈΪ32×Ö½Ú£¬ËùÒÔmem_mapËùÐèÒªµÄ¿Õ¼äÂÔСÓÚÕû¸öRAMµÄ1%¡£
ÄÇôһ¸öÒ³ÃèÊö·ûÔõÑùÓëÒ»¸öÕ¼¾Ý4kµÄÒ³¿òÏàÁªÏµ£¨Ó³É䣩Ĩ£¿ÓÐÁËmem_mapÊý×飬Õâ¸öÎÊÌâ¾ÍºÜ¼òµ¥ÁË¡£ÒòΪÈç¹ûÖªµÀÁËpageÊý¾ÝµÄµØÖ·pd£¬ÓÃpdÈ¥¼õÈ¥mem_map¾ÍµÃµ½ÁËpdµÄÒ³¿òºÅpfn¡£ÄÇôÕâ¸öÎïÀíÒ³µÄÎïÀíµØÖ·ÊÇphysAddr = pfn << PAGE_SHIFT  ¡£
ÔÚµÃÖª¸ÃÎïÀíÒ³µÄÎïÀíµØÖ·ÊÇphysAddrºó£¬¾Í¿ÉÒÔÊÓphysAddrµÄ´óСµÃµ½ËüµÄÐéÄâµØÖ·£º
1.physAddr < 896M  ¶ÔÓ¦ÐéÄâµØÖ·ÊÇ physAddr + PAGE_OFFSET   (PAGE_OFFSET=3G)
2.physAddr >= 896M ¶ÔÓ¦ÐéÄâµØÖ·²»ÊǾ²Ì¬Ó³ÉäµÄ£¬Í¨¹ýÄں˵ĸ߶ËÐéÄâµØÖ·Ó³ÉäµÃµ½Ò»¸öÐéÄâµØÖ·¡£
Ôڵõ½¸ÃÒ³µÄÐéÄâµØÖ·Ö®ºó£¬Äں˾ͿÉÒÔÕý³£·ÃÎÊÕâ¸öÎïÀíÒ³ÁË¡£
ÄÚºËÌṩһ¸övirt_to_page(addr)ºêÀ´²úÉúÏßÐÔµØÖ·addr¶ÔÓ¦µÄÒ³ÃèÊö·ûµØÖ·¡£pfn_to_page(pfn)ºê²úÉúÓëÒ³¿òºÅpfn¶ÔÓ¦µÄÒ³ÃèÊö·ûµØÖ·¡£Ïà·´£¬Ò²Ìṩpage_to_pfn(pg)ºêÀ´²úÉúÒ³ÃèÊö·û¶ÔÓ¦µÄÒ³µÄÒ³¿òºÅpfn¡£×¢Ò⣬Õë¶Ô80x86½á¹¹£¬ÉÏÊöºê²¢²»ÊÇÖ±½Óͨ¹ýmen_mapÊý×éÀ´È·¶¨Ò³¿òºÅµÄ£¬¶øÊÇͨ¹ýÄÚ´æ¹ÜÀíÇøµÄzone_mem_mapÀ´È·¶¨µÄ£¬²»¹ýÔ­ÀíÊÇÒ»ÑùµÄ£º
#define page_to_pfn(pg)       \
({         \
 struct page *__page = pg;     \
 struct zone *__zone = page_zone(__page);   \
 (unsigned long)(__page - __zone->zone_mem_map) 


Ïà¹ØÎĵµ£º

Linux²Ù×÷ϵͳѧϰÏß·ͼ

Èç¹ûÄãÕýÔÚѧϰLinux²Ù×÷ϵͳ£¬²»Öª´ÓÄÄÀïÈëÊÖ£¬¿ÉÒԲο¼ÏÂÃæ¸ø³öµÄ9µã½¨Ò飬»¹ÓÐÒ»µãÊDZ¾È˸½¼ÓµÄ£¬Linux³ÌÐò¹¤³Ìʦ·Ç³£³ÔÏ㣬ÒÔºó¿Ï¶¨ÊǸö»ðºìÖ°Òµ¡£²»¹ÜÔõÑù£¬Ö»ÒªÅ¬Á¦µÄѧ£¬ºó¹ûºÜÃÀºÃ¡£
1.ÕÆÎÕÖÁÉÙ50¸öÒÔÉϵij£ÓÃÃüÁî¡£
±ÈÈ磺°²×°ºÍµÇ¼ÃüÁlogin¡¢ shutdown¡¢ halt¡¢ reboot ¡¢mount¡¢umount ¡¢chsh
Îļþ´¦ÀíÃü ......

VIM+GDB linux c/c++ µÄ±à³ÌÀûÆ÷

Ô­ÎÄ£ºhttp://blog.csdn.net/jackyvan/archive/2010/01/15/5193693.aspx
ÆäʵVIMÒ²ÄܰѱàÒë µ÷ÊÔ¼¯³ÉÔÚÒ»Æð£¬ÏñÊÇÒ»¸öIDEÒ»Ñù¡£
Ê×ÏÈÏÖÔÚVIMµÄÔ´Â룬ÒòΪҪ¼¯³Éµ÷ÊÔ»·¾³µÄ»°ÐèÒªÖØÐ±àÒëVIM²ÅÐУ¬ËùÒÔÎÒÃDz»ÈçÖØÐ°²×°Ò»¸ö¡£
VIMµÄÏÖÔÚµØÖ·£º
http://www.vim.org/sources.php
È»ºóÏÂÔØVIMGDB£¬ÕâÊÇvimµÄ¼¯³Éµ÷ÊÔ»·¾³µÄ ......

ͳ¼ÆÁ¬½ÓÊý״̬(LinuxÍøÂçÁ¬½Ó״̬¼ì²é£¡)

ͳ¼ÆÁ¬½ÓÊý״̬£º
LinuxÍøÂçÁ¬½Ó״̬¼ì²é£¡
¼ì²élinuxµÄÍøÂçÁ¬½Ó״̬ÆäʵºÜ¼òµ¥£¬ÀûÓÃLinuxÄÚÖõÄһЩÃüÁîºÍSHELLµÄ¼¸¸öС¼¼ÇɾͿÉÒÔÍê³É¿´ËƸ´Ôӵļì²éÈÎÎñ£¬ÕâÒ²ÊÇLinuxµÄ÷ÈÁ¦Ö®Ò»£¡
×î»ù±¾µÄ£¬
netstat -atn
¸ÃÃüÁîµÄ½âÊÍÊÇÁгö»ùÓÚTCPЭÒé(-t)µÄËùÓÐÁ¬½Ó£¬²¢½«Í¨ÐÅË«·½ÒÔIPµØÖ·µÄ£¨-n)µÄ·½Ê½ÏÔʾ£¬¶ø²»ÊÇÖ÷»úÃû£¡ ......

LR¼à¿Øwindows¡¢linux¡¢UNIXʱ³£¼ûÎÊÌâ¼°²Ù×÷²½Öè

Ò»¡¢¼à¿Øwindowsϵͳ£º
1¡¢¼àÊÓÁ¬½ÓǰµÄ×¼±¸¹¤×÷
        1£©½øÈë±»¼àÊÓwindowsϵͳ£¬¿ªÆôÒÔ϶þ¸ö·þÎñRemote Procedure Call(RPC) ºÍRemote Registry Service (¿ªÊ¼—)ÔËÐÐ ÖÐÊäÈëservices.msc£¬¿ªÆô¶ÔÓ¦·þÎñ¼´¿É)¡£
        2£©ÔÚ±»¼àÊÓµ ......

LinuxϵÄIPÏà¹ØÐÞ¸Ä

    ¼ÙÉèÄãµÄÍøÂç¸÷Ϊeth0
    È»ºó±à¼­/etc/sysconfig/network-scripts/ifcfg-eth0£¬ÐÞ¸Äip
¡¡¡¡Ò»¡¢ÐÞ¸ÄIPµØÖ·
¡¡¡¡[aeolus@db1 network-scripts]$ vi ifcfg-eth0
¡¡¡¡DEVICE=eth0
¡¡¡¡ONBOOT=yes
¡¡¡¡BOOTPROTO=static
¡¡¡¡IPADDR=219.136.241.211
¡¡¡¡NETMASK=255.255.25 ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ