diff options
author | Thomas Schwinge <thomas@codesourcery.com> | 2014-02-26 12:43:40 +0100 |
---|---|---|
committer | Thomas Schwinge <thomas@codesourcery.com> | 2014-02-26 12:43:40 +0100 |
commit | ca63bd2d33b3d28eabd50ad58577b52a1fc9eba0 (patch) | |
tree | 74bf46806011262f116d83ff5bec0a1cf8a79a4b /microkernel/mach/gnumach | |
parent | 5757d0c3b11dac706fbe72247e9d2dcf0ff44df9 (diff) | |
parent | 7ffc398e1c386925826c42a30ff10ae84e79378f (diff) |
Merge remote-tracking branch 'dirichlet.SCHWINGE/master'
Diffstat (limited to 'microkernel/mach/gnumach')
-rw-r--r-- | microkernel/mach/gnumach/boot_trace.mdwn | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/microkernel/mach/gnumach/boot_trace.mdwn b/microkernel/mach/gnumach/boot_trace.mdwn index 7b729c23..ea999a9b 100644 --- a/microkernel/mach/gnumach/boot_trace.mdwn +++ b/microkernel/mach/gnumach/boot_trace.mdwn @@ -227,3 +227,25 @@ License|/fdl]]."]]"""]] >> vm\_pageout >> Does not return. + + +# IRC, freenode, #hurd, 2013-10-07 + + <cureOS> look, where should i dig or where from should i start from, if i + have desire to know how the kernel was written from baremetal? Can it be + ever done nowadays? + <youpi> cureOS: the boot entry of the kernel is i386/i386at/boothdr.S , + boot_entry + <youpi> that's what grub jumps to + <youpi> then that jumps to c_boot_entry + <youpi> and everything else is C + <cureOS> grub loads it somehow. how does it prepare cpu and memoty, cpu + cache control if any... segments for stack.. + <youpi> see the grub documentation + <youpi> basically it's all flat linear space + <cureOS> does kernel transform it after that? + <youpi> see the ldt/gdt initialization + <youpi> from i386at_init and children + <youpi> nothing much fancy, a kernel cs/ds, and user cs/ds + <braunr> and paging, naturally + <youpi> sure |