[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] [[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] `if NCPUS > 1` stuff is not being considered so far. > i386/i386at/boothdr.S: \_start > i386/i386at/boothdr.S: boot\_entry >> i386/i386at/model\_dep.c: c\_boot\_entry >>> i386/i386at/boothdr.S: discover\_x86\_cpu\_type >>> i386/i386at/model\_dep.c: i386at\_init >>>> i386/i386/pic.c: picinit >>>> i386/i386at/model\_dep.c: mem\_size\_init >>>> i386/intel/pmap.c: pmap\_bootstrap >>>> i386/i386/gdt.c: gdt\_init >>>> i386/i386/idt.c: idt\_init >>>> i386/i386at/int\_init.c: int\_init >>>> i386/i386/ldt.c: ldt\_init >>>> i386/i386/ktss.c: ktss\_init >>> kern/startup.c: setup\_main >>>> kern/debug.c: panic\_init >>>> kern/printf.c: printf\_init >>>> kern/sched\_prim.c: sched\_init >>>>> kern/sched\_prim.c: wait\_queue\_init >>>>> kern/processor.c: pset\_sys\_bootstrap >>>>> kern/ast.c: ast\_init >>>> vm/vm\_init.c: vm\_mem\_bootstrap >>>>> vm/vm\_resident.c: vm\_page\_bootstrap >>>>>> vm/vm\_resident.c: pmap\_startup >>>>> kern/zalloc.c: zone\_bootstrap >>>>> vm/vm\_object.c: vm\_object\_bootstrap >>>>>> vm/vm\_external.c: vm\_external\_module\_initialize >>>>> vm/vm\_map.c: vm\_map\_init >>>>> vm/vm\_kern.c: kmem\_init >>>>> i386/intel/pmap.c: pmap\_init >>>>> kern/zalloc.c: zone\_init >>>>> kern/kalloc.c: kalloc\_init >>>>> vm/vm\_fault.c: vm\_fault\_init >>>>> vm/vm\_resident.c: vm\_page\_module\_init >>>>> vm/memory\_object.c: memory\_manager\_default\_init >>>> ipc/ipc\_init.c: ipc\_bootstrap >>>>> ipc/ipc\_table.c: ipc\_table\_init >>>>> ipc/ipc\_notify.c: ipc\_notify\_init >>>>> ipc/ipc\_hash.c: ipc\_hash\_init >>>>> ipc/ipc\_marequest.c: ipc\_marequest\_init >>>> vm/vm\_init.c: vm\_mem\_init >>>>> vm/vm\_object.c: vm\_object\_init >>>> ipc/ipc\_init.c: ipc\_init >>>>> kern/ipc\_host.c: ipc\_host\_init >>>>>> kern/ipc\_host.c: ipc\_pset\_init >>>>>> kern/ipc\_host.c: ipc\_pset\_enable >>>>>> kern/ipc\_host.c: ipc\_processor\_init >>>> i386/intel/pmap.h: PMAP\_ACTIVATE\_KERNEL >>>> kern/timer.c: init\_timers >>>> kern/mach\_clock.c: init\_timeout >>>> kern/xpr.c: xprbootstrap >>>> kern/time\_stamp.c: timestamp\_init >>>> kern/mach\_clock.c: mapable\_time\_init >>>> i386/i386at/model\_dep.c: machine\_init >>>>> device/cons.c: cninit >>>>> i386/i386/fpu.c: init\_fpu >>>>> linux/dev/init/main.c: linux\_init >>>>>> linux/dev/arch/i386/kernel/irq.c: init\_IRQ >>>>>>> linux/dev/arch/i386/kernel/irq.c: reserve\_mach\_irqs >>>>>> linux/dev/kernel/sched.c: linux\_sched\_init >>>>>> linux/dev/init/main.c: calibrate\_delay >>>>>> linux/dev/glue/kmem.c: linux\_kmem\_init >>>>>> linux/src/drivers/pci/pci.c: pci\_init >>>>>>> linux/src/arch/i386/kernel/bios32.c: pcibios\_init >>>>>>> linux/src/drivers/pci/pci.c: scan\_bus >>>>>>> linux/src/arch/i386/kernel/bios32.c: pcibios\_fixup >>>>>> linux/dev/glue/net.c: linux\_net\_emulation\_init >>>>>> linux/dev/drivers/block/genhd.c: device\_setup >>>>>>> linux/dev/glue/block.c: blk\_dev\_init >>>>>>>> linux/src/drivers/block/ide.c: ide\_init >>>>>>>> linux/dev/drivers/block/floppy.c: floppy\_init >>>>>>> linux/src/drivers/scsi/scsi.c: scsi\_dev\_init >>>>>>> linux/dev/net/core/dev.c: net\_dev\_init >>>>>> linux/pcmcia-cs/glue/pcmcia.c: pcmcia\_init >>>>> i386/i386at/autoconf.c: probeio >>>>> i386/i386at/model\_dep.c: inittodr >>>>> i386/intel/pmap.c: pmap\_unmap\_page\_zero >>>> kern/task.c: task\_init >>>>> kern/syscall\_emulation.c: eml\_init >>>> kern/thread.c: thread\_init >>>>> i386/i386/pcb.c: pcb\_module\_init >>>>>> i386/i386/fpu.c: fpu\_module\_init >>>>>> i386/i386/iopb.c: iopb\_init >>>> kern/thread\_swap.c: swapper\_init >>>> kern/sched\_prim.c: recompute\_priorities >>>> kern/mach\_factor.c: compute\_mach\_factor >>>> kern/startup.c: start\_kernel\_threads [...] >>>> kern/startup.c: cpu\_launch\_first\_thread >>>>> i386/i386at/model\_dep.c: startrtclock >>>>>> i386/i386/pit.c: clkstart >>>>> i386/intel/pmap.h: PMAP\_ACTIVATE\_KERNEL >>>>> i386/i386/pcb.c: load\_context [...] > kern/startup.c: start\_kernel\_threads > Threads get created. >> kern/sched\_prim.c: idle\_thread >> One for each CPU. >> kern/thread.c: reaper\_thread >> kern/thread\_swap.c: swapin\_thread >> kern/sched\_prim.c: sched\_thread >> [...] >> kern/bootstrap.c: bootstrap\_create >> [...] >> vm\_pageout >> Does not return.