atom feed21 messages in org.freebsd.freebsd-archBooting questions ....
FromSent OnAttachments
Willem Jan WithagenNov 4, 2004 2:47 pm 
Julian ElischerNov 4, 2004 2:56 pm 
Scott LongNov 4, 2004 3:06 pm 
Willem Jan WithagenNov 4, 2004 3:07 pm 
Willem Jan WithagenNov 4, 2004 3:17 pm 
Scott LongNov 4, 2004 3:21 pm 
Julian ElischerNov 4, 2004 3:24 pm 
Willem Jan WithagenNov 4, 2004 3:41 pm 
John BaldwinNov 4, 2004 3:41 pm 
Willem Jan WithagenNov 4, 2004 3:54 pm 
Willem Jan WithagenNov 4, 2004 4:09 pm 
Willem Jan WithagenNov 5, 2004 2:25 am 
Guido van RooijNov 5, 2004 7:28 am 
John BaldwinNov 5, 2004 11:04 am 
Willem Jan WithagenNov 5, 2004 12:34 pm 
John BaldwinNov 8, 2004 10:57 am 
Julian ElischerNov 8, 2004 12:26 pm 
Willem Jan WithagenNov 8, 2004 12:27 pm 
John BaldwinNov 11, 2004 8:13 am 
Marc OlzheimNov 12, 2004 1:27 am 
John BaldwinNov 12, 2004 12:30 pm 
Subject:Booting questions ....
From:Willem Jan Withagen (wj@withagen.nl)
Date:Nov 8, 2004 12:27:14 pm
List:org.freebsd.freebsd-arch

John Baldwin wrote:

[All about getting a flat memoryspace]

Next is then which ranges are valid to test, and then things really start to get complicated and arch dependant. Which is why I ended up in machdep.c right after the setting up of the memory ranges.

Heh, the above memory mapping is also i386 specific. Alpha only has a small bit of memory mapped in the loader, same with sparc64, etc.

Ehhhh, again more reasons to put this in the kernel, or something that closely resembles a kernel.

Well, part of the problem there is that the early kernel code is all MD anyway. I think your best bet really is to write your own mini-kernel that the loader can load to do this, but it will require MD stubs for early bootstrapping as well as some kind of API for mapping a page so you can test it and then unmap it, which is required for x86 machines with > 4GB of RAM for example.

I would start simple, and forget about PAE, since I do not have a PAE machine... Simple 1386, and amd64-smp is all I got. Then I'd rather look at other architectures, then look at PAE. If ever I get this far.

Can you give me some hints from the current modules/source-files on i386 I would at least need to get somewhere. Because that would be the way I'd go: See if I can rip enough from the regular kernel to be able to build the mini-kernel.

And give the way mi_startup works that would be a very nice/simple way to keep loading modules until there is enough to get the work done.

Did anybody write a routine that "dumps" the module list before mi_startup start to work on it??? Or would that be my first assignment :)

I'll start by copying my own sys-tree so work does not get overwritten by daily cvsup.

--WjW