linux 0.11 ÄÚºËѧϰ head.s
#
# Õâ¶Î´úÂë±»Á¬½Óµ½systemÄ£¿éµÄ×îÇ°Ãæ£¬ÕâÒ²ÊÇËüΪʲô³ÆÖ®Îªhead.sµÄÔÒò¡£
# ´ÓÕâÀ↑ʼÄÚºËÍêÈ«ÔËÐÐÔÚ±£»¤Ä£Ê½Ï¡£head.s²ÉÓõÄÊÇat&t¸ñʽµÄ
# »ã±à¡£×¢ÒâµÄÊÇ´úÂëÖеĸ³Öµ·½ÏòÊÇ´Ó×óµ½ÓÒ¡£
#
# Õâ¶Î³ÌÐòʵ¼ÊÉÏÊdzöÓÚÄÚ´æµÄ¾ø¶ÔµØÖ·0¿ªÊ¼´¦¡£Ê×ÏÈÊǼÓÔØ¸÷¸öÊý¾Ý¶Î¼Ä´æÆ÷¡£
# ÖØÐÂÉèÖÃÈ«¾ÖÃèÊö·û±ígdt --> ¼ì²âa20µØÖ·ÏßÊÇ·ñÕæµÄ¿ªÆô£¬Ã»ÓпªÆô£¬loop
# µôÁË --> ¼ì²âpcÊÇ·ñº¬ÓÐÊýѧд¦ÀíÆ÷ --> ÉèÖùÜÀíÄÚ´æ·ÖÒ³µÄ´¦Àí»úÖÆ -->
# ½«Ò³Ä¿Â¼·ÅÖÃÔÚÄÚ´æµØÖ·0¿ªÊ¼´¦¡£ËùÒÔÕâ¶Î³ÌÐò½«±»¸²¸Çµô¡£ --> ×îºóÀûÓÃret
# Ö¸Á³öÔ¤ÏÈѹÈëµÄ/init/main.c³ÌÐòµÄÈë¿ÚµØÖ·£¬È¥ÔËÐÐmain.c³ÌÐò¡£
#
/*
* linux/boot/head.s
*
* (C) 1991 Linus Torvalds
*/
/*
* head.s contains the 32-bit startup code.
*
* NOTE!!! Startup happens at absolute address 0x00000000, which is also where
* the page directory will exist. The startup code will be overwritten by
* the page directory.
*/
.text
.globl _idt,_gdt,_pg_dir,_tmp_floppy_area
_pg_dir: #ҳĿ¼½«»á´æ·ÅÔÚÕâÀï
startup_32:
#############################################
# ÉèÖöμĴæÆ÷
# ÔÙ´Î×¢Ò⣬ÏÖÔÚ³ÌÐòÒѾÔËÐÐÔÚ32ģʽ£¬Òò´ËÕâÀï
# µÄ0x10²¢²»ÊǰѵØÖ·0x10×°Èë¸÷¸ö¶Î¼Ä´æÆ÷£¬ËüÏÖÔÚ
# ÊÇÈ«¾Ö¶ÎÃèÊö·û±íµÄÆ«ÒÆÁ¿¡£ÕâÀïµÄ0x10ÕýºÃÖ¸Ïò
# ÔÚsetup.sÖÐÉèÖõÄÊý¾Ý¶ÎµÄÃèÊö·û¡£
#
# ÏÂÃæ´úÂëµÄº¬ÒåÊÇ£¬ÖÃds£¬es£¬fs£¬gsÖеÄÑ¡Ôñ·û
# Ϊsetup.sÖй¹ÔìµÄÊý¾Ý¶Î£¬²¢½«¶ÑÕ»·ÅÖÃÔÚÊý¾Ý¶Î
# _stack_startÊý×éÄÚ£¬È»ºóʹÓÃеÄÖжÏÃèÊö·û±í
# ºÍÈ«¾ÖÃèÊö·û±í£¬ÐµÄÈ«¾Ö¶ÎÃèÊö·û±íÖгõʼ»¯ÄÚ
# ÈݺÍsetup.sÖÐÍêÈ«Ïàͬ¡£
#
#
movl $0x10,%eax
mov %ax,%ds
mov %ax,%es
mov %ax,%fs
mov %ax,%gs
#############################################
# ¼ÓÔØ¶ÑÕ»Ö¸Õë¼ÄÖ¸Áî
# long user_stack [ PAGE_SIZE>>2 ] ;
#
# struct {
# long * a;
# short b;
# } stack_start = { & user_stack [PAGE_SIZE>>2] , 0x10 };
#
lss _stack_start,%esp # ÉèÖÃϵͳ¶ÑÕ»¶Î
# _stack_start -> ss:esp
call setup_idt
call setup_gdt
#####################################
Ïà¹ØÎĵµ£º
2008-07-07 22:06
PREROUTING£ºip_conntrack_defrag à ip_conntrack_in
1£¬ip_conntrack_defrag:
ͨ³£µ±IP±¨Îı»ËÍÖÁL4²ã´¦Àíʱ£¬Èç¹û¸Ã±¨ÎÄÊÇ·ÖÆ¬±¨ÎÄ£¬ÄÇô±¨ÎľͻáÏȱ»±£´æÆðÀ´£¬Ö±µ½ËùÓÐ·ÖÆ¬µ½´ïºóÖØ×é³ÉÒ»¸öÍêÕû±¨Îĺó£¬ÔÙ±»·Ö·¢µ½L4²ã¡£µ±Ã»ÓÐÆô¶¯conntrackʱ£¬netfilter¸÷HOOKµã¶Ô±¨ÎIJÙ×÷ʱ£¬²¢²»¼ì²é¸Ã± ......
2008-07-07 22:09
3£¬init_conntrack£º
init_conntrackÓÃÓÚ´´½¨Ò»¸öеÄip_conntrack£¬²¢¶ÔÆä½øÐгõʼ»¯¡£
/*1,ÿһ¸öÁ¬½Ó°üº¬Á½¸ötuple£¬originalºÍreply£¬ip_ct_invert_tuple ¸ù¾Ý´«ÈëµÄoriginal tuple»ñÈ¡Æäreply tuple£¬Æä×îÖÕ½«µ÷ÓÃËùÊôÐÒéµÄinvert_tuple Íê³É´¦Àí*/
if (!ip_ct_invert_tuple(& ......
2008-07-07 22:09
6£¬TCP filterµÄÔÀí£º
µ±filterÊÕµ½Ä³¸öÁ¬½ÓµÄµÚÒ»¸ö±¨ÎÄʱ£¬»áΪ¸ÃÁ¬½ÓÔÚÈ«¾ÖÁ¬½Ó±íÖд´½¨Ò»¸ö±íÏ²¢Óñ¨ÎÄÖÐЯ´øµÄÔ´¡¢Ä¿µÄIPºÍ¶Ë¿ÚÕâ¸öËÄÔª×é´´½¨original tupleºÍreply tuple£¬ÕâÁ½¸ötuple·Ö±ð´Ó²»Í¬·½ÏòÀ´±êʶÕâ¸öÁ¬½Ó¡£ºóÐøµÄ±¨ÎÄ»á¸ù¾ÝÆäЯ´øµÄËÄÔª×éÕÒµ½ÏàÓ¦µÄÁ¬½Ó±íÏȻºó¸ù¾Ý±íÏîËù¼Ç¼ ......
ÎÒÓõ½µÄLinux¼¼ÇÉ
1.linuxÉÏÍø:
ʹÓÃrootÓû§µÇ½ʹÓà adsl-setupÃüÁÅäÖÃppp0
³öÏÖdefault¾ÍĬÈϻسµ,²ÉÓÃĬÈÏÉèÖÃ
½øÈëDNS information here:ÊäÈëdns
×îºóʹÓà adsl-start ¾Í¿ÉÒÔÓÃadsl·½Ê½ÉÏÍøÁË
2.uname -a - ¿´ÏµÍ³Äں˵ÈÐÅÏ¢
tar£º°ÑÎļþ´ò°ü£¬²»Ñ¹Ëõ£ºtar cvf *.tar dirName ½â¿ª£ºtar xvf *.tar ......