Linuxϵͳ¹ÜÀíʵ¼ù(10)£ºPPPoEÉÏÍøÅäÖÃ
µ±Ê¹ÓÃDSLÁ¬½ÓÉÏÍøÊ±£¬Èç¹ûÄãʹÓÃÊÇÓй̶¨»ò¾²Ì¬IPµØÖ·µÄDSLÁ¬½Ó£¬ÄÇôÅäÖò½ÖèºÍÇ°ÃæµÄ“ÍøÂçÅäÖÔÖÐÃèÊöµÄÊÇÒ»ÑùµÄ¡£Äã°ÑÒÔÌ«Íø½Ó¿ÚÁ¬½Óµ½DSL modemÉÏ£¬ÅäÖÃISPÌṩµÄIPµØÖ·£¬×ÓÍøÑÚÂ룬¹ã²¥µØÖ·£¬ºÍÍø¹ØÐÅÏ¢¡£ÖØÆôÍøÂçÉ豸ºóÄã¾ÍÓ¦¸ÃÁ¬ÉÏÍøÁË¡£¼Çס£¬Äã¿ÉÄÜ»¹ÐèÒªÕýÈ·µØÅäÖÃDNS·þÎñÆ÷¡£Èç¹ûÄãʹÓõÄÊÇÓÐDHCP»ò¶¯Ì¬IPµØÖ·µÄDSLÁ¬½Ó£¬ÄÇô¹ý³Ì¾Í²»Ò»ÑùÁË¡£ÄãµÄISP»áΪÄúÌṩһ¸öPPPoE£¨PPP authentication over Ethernet£©µÄÓû§ÃûºÍÃÜÂ룬Õ⽫ʹÄúµÄµçÄÔÔÚÿ´ÎÆô¶¯Ê±Í¸Ã÷µØµÇ¼µ½»¥ÁªÍøÉÏ¡£×¢Òâ³ý·ÇÄãÌØ±ðÉêÇ뾲̬IPµØÖ·£¬Ò»°ãÇé¿öÏÂISP¶¼ÊÇÏòÄãÌṩһ¸ö»ùÓÚDHCPµÄÁ¬½Ó¡£¶øDHCP·ÖÅ䏸ÄãµÄ»úÆ÷»òÕß»¥ÁªÍøÂ·ÓɵÄIPµØÖ·¿ÉÄܺܶàÌì¶¼²»»á¸Ä±ä£¬Äã¿ÉÄÜ»áÎóΪÊǾ²Ì¬µÄ¡£
1¡¢RedHat/FedoraÅÉϵ£º
ÐèÒª°²×°rp-pppoeµÄRPMÈí¼þ°üÀ´Ö§³ÖÕâ¸ö¹¦ÄÜ£¬Í¨³£ÊÇrp-pppoe-3.5-8.i386.rpm¡£ÔÚ°²×°RPMºó£¬ÄãÐèÒª¾¹ýÈô¸É²½ÖèÀ´Íê³ÉÁ¬½Ó¡£PPPoEÅäÖý«´´½¨Á¢Ò»¸öÃûΪppp0µÄÐéÄâ½Ó¿Ú£¬Ëü½«Í¨¹ýÎïÀíÍøÂç½Ó¿Úeth0µÄÀ´Á¬½Ó¡£»ù±¾µÄ¹ý³ÌÈçÏ£º
£¨1£©±¸·Ý/etc/sysconfig/network-scripts/ifcfg-eth0Îļþºó£¬±à¼ÄãµÄifcfg-eth0Îļþ£¬É¾³ýIPÐÅÏ¢£¬²¢ÇÒÉ趨ÔÚÆô¶¯Ê±¼¤»î¡£
DEVICE=eth0
ONBOOT=yes
È»ºóÓà ifdown eth0¹Ø±ÕÍø¿¨É豸¡£
£¨2£©ÔËÐÐadsl-setupÅäÖýű¾£ºËü»áÌáʾÄãÊäÈëÄãµÄISPÓû§Ãû£¬ÒªÊ¹ÓõÄÍøÂçÉ豸£¨eth0£©ºÍÊÇ·ñÄãÐèÒªÁ¬½Ó³¤ÆÚ±£³Ö£¬Èç¹û¿ÉÄÜÎÒÃǶ¼Ê¹ÓÃȱʡÉèÖ᣽Ó×Å»áÌáʾÄãÊäÈëÄãµÄDNS·þÎñÆ÷ÐÅÏ¢£¬Õâ²½»á±à¼ÄãµÄ/etc/resolv.confÎļþ¡£Èç¹ûÄãÔÚ·þÎñÆ÷ÉÏÒÔ»º´æDNSģʽÔËÐÐBIND£¬¾Í²»ÓÃÊäÈëÖ±½Ó»Ø³µ¡£Èç¹ûÄãÏ£ÍûÄãµÄISPµÄDNS·þÎñÆ÷×Ô¶¯ÌṩIPµØÖ·£¬¾ÍÊäÈëµ¥´Êserver¡£½Ó׎ű¾»áÌáʾÄãÊäÈëÄãµÄISPÃÜÂ룬ȻºóËü»áѯÎÊÊÇ·ñÔÊÐí³£¹æÓû§£¨²»Êdz¬¼¶Óû§root£©¼¤»î/Í£Ö¹Õâ¸öеÄppp0É豸£¬Õâ¿ÉÄÜÊÇÐèÒªµÄ£¬Èç¹ûÄã¼ÒÀïÓзÇrootµÄ³ÉÔ±ÐèÒª·ÃÎÊInternetµÄ»°¡£½Ó×ÅÄã»á±»Ñ¯ÎÊÊÇ·ñÔÚÆô¶¯Ê±¼¤»îÁ¬½Ó£¬´ó²¿·ÖÈ˶¼»áÑ¡Ôñyes¡£ÔÚ×îºó£¬Ëü»á¸æËßÄãÓÃifup ppp0/ifdown ppp0À´¼¤»î/¹Ø±ÕÕâ¸öеÄppp0É豸£¬ÒÔ¼°ÓÃadsl-status /etc/sysconfig/network-scripts/ifcfg-ppp0À´»ñµÃÉ豸µÄ״̬¡£ÔÚÄãÍê³Érp-pppoeµÄÅäÖÃáᣬÄãÓ¦¸Ã¿ÉÒÔͨ¹ýDSLµÄDHCPÁ¬½Óµ½InternetÉÏ¡£
adsl-setup´´½¨µÄÒ»Ð©ÖØÒªÎļþ£ºÓÐÈý¸öadsl-setup½Å±¾´´½¨µÄÎļþÄã¿ÉÄÜ»á¸
Ïà¹ØÎĵµ£º
1.SIGHUPÐźÅ
UNIXÖнø³Ì×éÖ¯½á¹¹Îª session (»á»°)°üº¬Ò»¸öǰ̨½ø³Ì×é¼°Ò»¸ö»ò¶à¸öºǫ́½ø³Ì×飬һ¸ö½ø³Ì×é°üº¬¶à¸ö½ø³Ì¡£Ò»¸ösession¿ÉÄÜ»áÓÐÒ»¸ösessionÊ×½ø³Ì£¬¶øÒ»¸ösessionÊ×½ø³Ì¿ÉÄÜ»áÓÐÒ»¸ö¿ØÖÆÖÕ¶Ë¡£Ò»¸ö½ø³Ì×é¿ÉÄÜ»áÓÐÒ»¸ö½ø³Ì×éÊ×½ø³Ì¡£½ø³Ì×éÊ×½ø³ÌµÄ½ø³ÌIDÓë¸Ã½ø³Ì×éIDÏàµÈ¡£Õâ ......
¶ÔÓÚ½ø³ÌµÄÒ»Éú¿ÉÒÔÓÃһЩÐÎÏóµÄ±ÈÓ÷×÷Ò»¸öССµÄ×ܽ᣺
Ëæ×ÅÒ»¾äfork£¬Ò»¸öнø³ÌßÉßÉÂ䵨£¬µ«ËüÕâʱֻÊÇÀϽø³ÌµÄÒ»¸ö¿Ë¡¡£
È»ºóËæ×Åexec£¬Ð½ø³ÌÍÑÌ¥»»¹Ç£¬Àë¼Ò¶ÀÁ¢£¬¿ªÊ¼ÁËΪÈËÃñ·þÎñµÄÖ°ÒµÉúÑÄ¡£
ÈËÓÐÉúÀϲ¡ËÀ£¬½ø³ÌÒ²Ò»Ñù£¬Ëü¿ÉÒÔÊÇ×ÔÈ»ËÀÍö£¬¼´ÔËÐе½mainº¯ÊýµÄ×îºóÒ»¸ö”}”£¬´ÓÈݵØÀëÎÒÃǶøÈ¥£»Ò²¿ÉÒ ......
Ò³ÉêÇëµÄºËÐĵ÷ÓÃÊÇ: __alloc_pages(). Ò³ÉêÇë˳ÐòÈçÏ£º
Ê×ÏÈÕÒ×î´óÄÜ·ûºÏµÄ¿é, Èç¹ûÒ»¸ö¿ÕÏп鲻ÄÜÂú×ã, ¸ü¸ßÒ»¼¶µÄ¿é½«·Ö¸î³É2¸öbuddy, Ò»¸ö±»Õ¼ÓÃ, Ò»¸ö·ÅÈëµÍÒ»¼¶µÄfreelist.
µ±¿é±»ÊÍ·Åʱ, ¼ì²éÿ¶Ôbuddy, Èç¹ûÁ½Õß¶¼¿ÕÏÐ, °ÑËûÃǺϲ¢µ½¸ü¸ßÒ»¼¶µÄ¿éÊý×é ......
1 ¶¨ÒåÎļþ
linux/errno.h
#ifndef _LINUX_ERRNO_H
#define _LINUX_ERRNO_H
#include <asm/errno.h>
#ifdef __KERNEL__
/* Should never be seen by user programs */
#define ERESTARTSYS 512
#define ERESTARTNOINTR 513
#define ERESTARTNOHAND 5 ......
QemuÊÇÒ»¸öÓÅÐãµÄ¿ªÔ´ISAÄ£ÄâÆ÷£¬Ö§³ÖºÜ¶àÌåϵ½á¹¹£¬µ±È»°üÀ¨x86¡£QemuÌṩµ÷ÊÔ¹¦ÄÜ£¬¿ÉÒÔ¶Ô±»Ä£Äâ½øÐе÷ÊÔ¡£
QemuÖ÷Ò³http://fabrice.bellard.free.fr/qemu/
QemuÏÂÔØÒ³Ãæhttp://fabrice.bellard.free.fr/qemu/download.html °üÀ¨Ô´Â룬¿ÉÖ´ÐÐÎļþ£¬ÒÑÖÆ×÷ºÃµÄdisk fileµÈ
QemuÓÐʹÓÃ˵Ã÷Îĵµhttp://fabrice.bella ......