ºìÁªLinuxÃÅ»§
Linux°ïÖú

Linux ºËÐÄÓμÇ

·¢²¼Ê±¼ä:2006-03-17 01:05:49À´Ô´:ºìÁª×÷Õß:°®ÁãÕûÕû
¡¡¡¡±¾ÊéÒÔLinux 1.0ºËÐÄΪ»ù´¡£¬ÏêϸעÊÍÁË´Ó¿ª»úÆô¶¯µ½ÆäÕý³£ÔËתµÄÈ«¹ý³Ì£¬²¢ÇÒ»¹¸ø³öÁËÀí½âÕâ¸ö¹ý³ÌËùÐèÒªµÄ»ù´¡ÖªÊ¶¡£

¡¡¡¡±¾ÊéÊʺÏÓÚËùÓÐLinux²Ù×÷ϵͳµÄ°®ºÃÕß¡£

¡¡¡¡Ä¿Â¼£º

¡¡¡¡µÚÒ»²¿·Ö¡¢»ù´¡ÖªÊ¶£¨Basic knowledge£©

¡¡¡¡Èí¼þ²¿·Ö£¨Software part£©

¡¡¡¡S1¡¢Makefile¼ò½é

¡¡¡¡¡¡S1.1¡¡Makefile¹æÔò

¡¡¡¡S2¡¢»ã±à¼ò½é

¡¡¡¡¡¡S2.1¡¡»ã±àÓÅȱµã
¡¡¡¡¡¡S2.2¡¡»ã±àÓï·¨£¨AT&T asm VS Intel asm£©
¡¡¡¡¡¡S2.3¡¡Hello world!ʾÀý

¡¡¡¡S3¡¢ÊµÄ£Ê½Ïò±£»¤Ä£Ê½Çл»

¡¡¡¡¡¡S3.1¡¡Çл»µ½±£»¤·½Ê½µÄ×¼±¸¹¤×÷
¡¡¡¡¡¡S3.2¡¡Ê¹ÓöμäÖ¸ÁîÇл»½ø±£»¤Ä£Ê½
¡¡¡¡¡¡S3.3¡¡´ò¿ªA20µØÖ·ÏßÇл»½ø±£»¤Ä£Ê½

¡¡¡¡S4¡¢gccÄÚǶ»ã±à

¡¡¡¡¡¡S4.1¡¡ÄÚǶ»ã±à¸ñʽ
¡¡¡¡¡¡S4.2¡¡ÄÚǶ»ã±àʾÀý

¡¡¡¡S5¡¢GDBµ÷ÊÔÆ÷

¡¡¡¡¡¡S5.1¡¡GDBÃüÁî
¡¡¡¡¡¡S5.2¡¡GDBµ÷ÊÔÑùÀý

¡¡¡¡S6¡¢ÏµÍ³µ÷ÓÃʵÏÖÏê½â

¡¡¡¡¡¡S6.1¡¡ºËÐÄÖÐÌṩµÄºê
¡¡¡¡¡¡S6.2¡¡ÏµÍ³µ÷ÓñàºÅ
¡¡¡¡¡¡S6.3¡¡ÏµÍ³µ÷ÓÃÈë¿Úµã¼°º¯Êý±í
¡¡¡¡¡¡S6.4¡¡¶Ôϵͳµ÷Óõ÷ÓÃ

¡¡¡¡Ó²¼þ²¿·Ö£¨Hardware part£©

¡¡¡¡H1¡¢²Ù×÷ϵͳµÄÒýµ¼

¡¡¡¡¡¡H1.1¡¡BIOSµÄ¹¤×÷
¡¡¡¡¡¡H1.2¡¡²Ù×÷ϵͳµÄÒýµ¼¿é³ÌÐò

¡¡¡¡H2¡¢X86 CPU Ñ°Ö·¼ò½é

¡¡¡¡¡¡H2.1¡¡ÊµÄ£Ê½
¡¡¡¡¡¡H2.2¡¡ÊµÄ£Ê½·½Ê½ÏÂÎïÀíµØÖ·µÄÐγÉ
¡¡¡¡¡¡H2.3¡¡±£»¤Ä£Ê½
¡¡¡¡¡¡H2.4¡¡±£»¤Ä£Ê½·½Ê½ÏÂÎïÀíµØÖ·µÄÐγÉ

¡¡¡¡H3¡¢IDT & GDT & LDT

¡¡¡¡¡¡H3.1¡¡IDT
¡¡¡¡¡¡H3.2¡¡GDT & LDT

¡¡¡¡H4¡¢8259A¿É±à³ÌÖжϿØÖÆÆ÷

¡¡¡¡¡¡H4.1¡¡8259AоƬ¼ò½é
¡¡¡¡¡¡H4.2¡¡8259AоƬ¶ÔµÄÖжϴ¦Àí¹ý³Ì
¡¡¡¡¡¡H4.3¡¡8259A±à³Ì·½Ê½

¡¡¡¡H5¡¢I/O¶Ë¿Ú¼°Ö¸Áî

¡¡¡¡¡¡H5¡¡1I/O¶Ë¿Ú
¡¡¡¡¡¡H5¡¡2I/OÖ¸Áî

¡¡¡¡H6¡¢»ñȡϵͳʱ¼ä

¡¡¡¡¡¡H6.1¡¡CMOS RAM·ÖÅä±í
¡¡¡¡¡¡H6.2¡¡¶ÁÈ¡CMOS RAM±í
¡¡¡¡¡¡H6.3¡¡Linux»ñÈ¡¶ÁÈ¡CMOS RAMµÄ·½Ê½

¡¡¡¡µÚ¶þ²¿·Ö¡¢´úÂë·ÖÎö£¨Code analyzed£©

¡¡¡¡Òý±¬µã

¡¡¡¡¡¡Õû¸öºËÐŤ³ÌMakefile
¡¡¡¡¡¡zBoot/Makefile
¡¡¡¡¡¡×ܽá
¡¡¡¡¡¡ÄÚ´æ²¼¾Öͼ

¡¡¡¡B

¡¡¡¡¡¡Boot/bootsect.S
¡¡¡¡¡¡¡¡¸ÅÊö
¡¡¡¡¡¡¡¡´úÂë·ÖÎö
¡¡¡¡¡¡Boot/setup.S
¡¡¡¡¡¡¡¡¸ÅÊö
¡¡¡¡¡¡¡¡´úÂë·ÖÎö
¡¡¡¡¡¡Boot/head.S
¡¡¡¡¡¡¡¡¸ÅÊö
¡¡¡¡¡¡¡¡´úÂë·ÖÎö

¡¡¡¡D

¡¡¡¡¡¡Drivers/char/console.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Drivers/char/serial.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Drivers/char/keyboard.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Drivers/char/tty_io.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Drivers/char/mem.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Drivers/block/floppy.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Drivers/block/ramdisk.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Drivers/block/hd.c
¡¡¡¡¡¡Drivers/block/genhd.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Drivers/block/hd.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Drivers/block/xd.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Drivers/block/ramdisk.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Drivers/block/ll_rw_blk.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Devices/net/lance.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Devices/net/net_init.c£¨²¿·Ö´úÂ룩

¡¡¡¡F

¡¡¡¡¡¡Fs/fcntl.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Fs/exec.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Fs/file_table.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Fs/namei.c
¡¡¡¡¡¡Fs/buffer.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Fs/super.c
¡¡¡¡¡¡Fs/file_table.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Fs/inode.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Fs/locks.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Fs/open.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Fs/devices.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Fs/minix/inode.c£¨²¿·Ö´úÂ룩

¡¡¡¡I

¡¡¡¡¡¡Init/main.c
¡¡¡¡¡¡¡¡¸ÅÊö
¡¡¡¡¡¡¡¡´úÂë·ÖÎö
¡¡¡¡¡¡Ipc/shm.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Ipc/sem.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Ibcs/emulate.c
¡¡¡¡¡¡Include/linux/unistd.h
¡¡¡¡¡¡Include/linux/sched.h

¡¡¡¡K

¡¡¡¡¡¡Kernel/panic.c
¡¡¡¡¡¡Kernel/traps.c
¡¡¡¡¡¡Kernel/irq.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Kernel/time.c
¡¡¡¡¡¡Kernel/sched.c
¡¡¡¡¡¡Kernel/exit.c(²¿·Ö´úÂë)
¡¡¡¡¡¡Kernel/signal.c
¡¡¡¡¡¡Kernel/printk.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Kernel/vsprintf.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Kernel/fork.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Kernel/sys_call.s

¡¡¡¡L

¡¡¡¡¡¡Lib/_exit.c
¡¡¡¡¡¡Lib/open.c

¡¡¡¡M

¡¡¡¡¡¡Mm/vmalloc.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Mm/kmalloc.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Mm/swap.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Mm/memory.c£¨²¿·Ö´úÂ룩

¡¡¡¡N

¡¡¡¡¡¡Net/unix/sock.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Net/space.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Net/ddi.c£¨²¿·Ö´úÂ룩
¡¡¡¡¡¡Net/socket.c£¨²¿·Ö´úÂ룩

¡¡¡¡Z

¡¡¡¡¡¡zBoot/head.S
¡¡¡¡¡¡¡¡¸ÅÊö
¡¡¡¡¡¡¡¡´úÂë·ÖÎö

¡¡¡¡ºËÐÄÓμÇ×ܽᣨ1.0ºËÐÄ£©

¡¡¡¡µÚÈý²¿·Ö¡¢ÆäËû»°Ì⣨Advanced part£©

¡¡¡¡A1¡¢Ä£¿éµÄ±àд

¡¡¡¡¡¡A1-1¡¡Ä£¿é´úÂë¼°·ÖÎö
¡¡¡¡¡¡A1-2¡¡Ä£¿éµÄ¼ÓÔØ¡¢×¢Ïú¼°²é¿´

¡¡¡¡A2¡¢ÏµÍ³µ÷ÓõÄÌí¼Ó

¡¡¡¡¡¡A2-1¡¡¾²Ì¬Ìí¼Óϵͳµ÷ÓÃ

¡¡¡¡¡¡¡¡A2-1-1¡¡ÌÖÂÛLinuxϵͳµ÷ÓõÄÌåϵ
¡¡¡¡¡¡¡¡A2-1-2¡¡Ð޸ĴúÂëÀ´Ìí¼Óϵͳµ÷ÓÃ

¡¡¡¡¡¡A2-2¡¡¶¯Ì¬Ìí¼Óϵͳµ÷ÓÃ

¡¡¡¡¡¡¡¡A2-2-1¡¡¶¯Ì¬Ìí¼Óϵͳµ÷ÓõÄÔ­Àí
¡¡¡¡¡¡¡¡A2-2-2¡¡ÊµÏÖ¶¯Ì¬Ìí¼Ó¡¢ÐÞ¸Äϵͳµ÷ÓÃ
¡¡¡¡¡¡¡¡A2-2-3¡¡·´»ã±àcapturemod.o²¢·ÖÎöÖ®

¡¡¡¡A3¡¢º¯Êý¿âµÄ±àд

¡¡¡¡¡¡A3-1¡¡¾²Ì¬º¯Êý¿âµÄ±àд

¡¡¡¡¡¡¡¡A3-1-1¡¡°üº¬Ëã·¨µÄ¸÷¸öÎļþ¼°Makefle
¡¡¡¡¡¡¡¡A3-1-2¡¡²âÊÔ¾²Ì¬º¯Êý¿âµÄ³ÌÐò¼°Makefile
¡¡¡¡¡¡¡¡A3-1-3¡¡¾²Ì¬¿â±àÒëÇé¿ö
¡¡¡¡¡¡¡¡A3-1-4¡¡Ö÷³ÌÐòÓ뾲̬¿âÁ¬½Ó

¡¡¡¡¡¡A3-2¡¡¶¯Ì¬º¯Êý¿âµÄ±àд

¡¡¡¡¡¡¡¡A3-2-1¡¡¶¯Ì¬¿â±àÒëÇé¿ö
¡¡¡¡¡¡¡¡A3-2-2¡¡Ê¹Óö¯Ì¬×°ÔØÆ÷

¡¡¡¡¡¡A3-3¡¡¶¯Ì¬/¾²Ì¬º¯Êý¿âÓŵã

¡¡¡¡¡¡¡¡A3-3-1¡¡¾²Ì¬¿âÓŵã
¡¡¡¡¡¡¡¡A3-3-2¡¡¶¯Ì¬¿âÓŵã

¡¡¡¡µÚËIJ¿·Ö¸½Â¼£¨Appendix£©

¡¡¡¡µÚÎ岿·Ö²Î¿¼×ÊÁÏ£¨Reference£©

±¾µç×ÓÊé¼®´óС£º4.44 MB£¬Êé¼®¸ñʽ£ºPDF£¬·ÖÈý¾íÏÂÔØ£¬±ØÐëÈ«²¿ÏÂÍêºó½âѹ£¬±¾Êé¼®Ö»ÓÐ×¢²á»áÔ±²Å¿ÉÒÔÏ¡£
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 30 ÌõÆÀÂÛ

  1. believequan ÓÚ 2009-06-26 16:21:40·¢±í:

    Ô­À´»Ø¸´Ò»¸ö£¬ÊÇ¿ÉÒÔ׬µãÇ®µÄ£¬ºÇºÇ£¡Ì«¸Ðл¥Ö÷ÁË£¡£¡

  2. believequan ÓÚ 2009-06-26 16:19:13·¢±í:

    Ö»ÏÂÁ˸öPART1£¬¾ÓȻûǮÁË£¡(5ty(

  3. xxhhss ÓÚ 2009-06-26 12:49:04·¢±í:

    ·Ç³£¸Ðл

  4. linkway ÓÚ 2009-06-23 12:17:34·¢±í:

    ºÜºÃ£¬Ð»Ð»£¡£¡

  5. oo123 ÓÚ 2008-10-16 09:12:35·¢±í:

    thanks

  6. oth ÓÚ 2008-10-13 14:50:11·¢±í:

    ÎÒÄÜÏÂÔØÂí£¿

  7. hisuzy ÓÚ 2008-09-26 20:48:32·¢±í:

    ²»ÖªµÀдµÄÈçºÎ£¬¸Ð¾õ²»´í¡£Ö§³ÖÂ¥Ö÷

  8. wasyourleft ÓÚ 2008-09-26 13:59:28·¢±í:

    лл·ÖÏí£¡

  9. WJAK47 ÓÚ 2008-06-28 07:36:17·¢±í:

    ºÃ°¡~!`

  10. jnrp ÓÚ 2008-06-26 14:54:08·¢±í:

    fdgffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff

  11. zsh1123 ÓÚ 2008-06-25 19:36:04·¢±í:

    !!!!!!!!!!!!!!!!!!!!!!!!

  12. sunhello07 ÓÚ 2008-06-03 22:05:54·¢±í:

    ºÜºÃºÜÓÐÓã¬ÊÕ²ØÁË£¬Ð»Ð»Â¥Ö÷À²

  13. archermind ÓÚ 2008-03-15 09:33:58·¢±í:

    ·Ç³£¸Ðл°¡
    ·Ç³£¸Ðл°¡
    ·Ç³£¸Ðл°¡
    ·Ç³£¸Ðл°¡
    ·Ç³£¸Ðл°¡

  14. johnzhang68 ÓÚ 2008-03-11 22:07:44·¢±í:

    Take a look!!!

  15. happyhsz ÓÚ 2008-01-03 11:20:02·¢±í:

    ÏÂÀ´¿´¿´£¬Ð»Ð»£¡

  16. liudan818 ÓÚ 2007-11-13 17:32:58·¢±í:

    ºÃ¶«Î÷£¡£¡£¡

  17. isit ÓÚ 2007-06-09 09:11:55·¢±í:

    thanks a !

  18. jiazhengfeng ÓÚ 2006-12-21 11:24:06·¢±í:

    ¶«Î÷ȷʵ²»´í°¡,ÖµµÃÊÕ²Ø!

  19. dictator2002 ÓÚ 2006-11-23 10:33:46·¢±í:

    :time:1

  20. dictator2002 ÓÚ 2006-11-23 10:33:39·¢±í:

    :ha3nd

  21. dictator2002 ÓÚ 2006-11-23 10:33:15·¢±í:

    :0L

  22. zjrhqilin02 ÓÚ 2006-08-30 15:12:38·¢±í:

    ºÃ¶«Î÷

  23. iamtea ÓÚ 2006-08-30 15:00:43·¢±í:

    °¦£¬Ãü¿à

  24. iamtea ÓÚ 2006-08-30 14:58:40·¢±í:

    ÔÙÀ´

  25. iamtea ÓÚ 2006-08-30 14:57:21·¢±í:

    Ï°¡ÏÂ

  26. HYCOG ÓÚ 2006-07-17 12:08:41·¢±í:

    ÎÒÓΣ¬ÓÎѽÓÎ

  27. yangclimbing ÓÚ 2006-05-30 20:44:58·¢±í:

    thanks

  28. sjf_2004 ÓÚ 2006-05-12 09:29:52·¢±í:

    ÎÒ²»ÄÜ´ò¿ªËæÊ鸽´øµÄÔ´´úÂë,ÇëÎÊ´ò¿ªÔ´´úÂëµÄ°²È«¿ÚÁîÊǶàÉÙ

  29. °®ÁãÕûÕû ÓÚ 2006-03-17 01:08:57·¢±í:

    Linux 1.0ºËÐÄÓμÇ3

  30. °®ÁãÕûÕû ÓÚ 2006-03-17 01:08:13·¢±í:

    Linux 1.0ºËÐÄÓμÇ2