64 Bit D Kernel

Jarrett Billingsley kb3ctd2 at yahoo.com
Tue Oct 23 06:12:18 PDT 2007


"Alexander Panek" <a.panek at brainsware.org> wrote in message 
news:ffk3sd$2is7$1 at digitalmars.com...
> Brian Madden wrote:
>> As of right now our code is sort of all over the place, and fairly 
>> undocumented, but we're mostly groping in the dark right now.  If anyone 
>> has questions or comments, feel free to voice them.
>
> I hope there'll be some more documentation, soon. I don't know how you 
> guys communicate during development, but e.g. a public mailing 
> list/newsgroup/forum would be tremendously cool to track down your 
> design/implementation decisions and such (doesn't really make sense if 
> you're sitting next to each other, communicating vocally, of course).

Usually we communicate with our mouths.  Texts, IMing, and vulgar hand 
signals are our other main channels of communication.  ;)

> Ad comments..mhm.. I got a few questions, if you don't mind :)
>
> - Did you guys try to make the build process work with DSSS entirely?

We've got a pretty involved build process, and not many files yet.  I don't 
think DSSS would be of much use at least until a later stage.

> - Where there approaches to get rid of assembly and/or C?

There are no C files left.  I think the only (non-inline) assembly left is 
boot.S, which is called by GRUB and sets up the stack, initial GDT, and 
initial page table and makes the jump to 64-bit mode.  After that, it's all 
D with some inline assembly here and there (thank you GDC's extended ASM 
syntax).

As for _how_ we god rid of C, I don't think there really was much, besides 
"translate this C file to D!"

> - How's the memory footprint (what's the minimum amount of memory you have 
> to give your virtual machine so that Grub still loads the kernel)?

Haven't tried, but the image is no more than 512KB or so.  No idea if that 
makes an impact.

> - ..important question: Why 64 bit? (just interested in your decisions, as 
> you might have guessed :) )

ITS AWESUM.  x86-64 is probably going to be around for a while, and it 
doesn't really make sense to develop for a platform which is kind of going 
out of style.  All the new OSes are 64-bit compatible.  x64 also simplifies 
and removes some legacy crap (mostly segmentation and things related to it) 
that we would have had to have dealt with in 32-bit.

I have no idea if we plan on moving this to any other architecture.

> - Why exokernel? Why not micro?

I defer to James for that argument :S

> .. I think that's it for now. :)
>
> Best regards,
> Alex
>
> P.S.: Keep up the good work! 





More information about the Digitalmars-d mailing list