D Kernel Development

Jacob Carlborg doob at me.com
Thu Nov 12 06:41:30 PST 2009


On 11/12/09 04:32, Jesse Robinson wrote:
> Just for fun and as a serious learning exercise, I'm developing a hobby kernel of sorts (L4 microkernel inspired) and since it's my play project I was thinking of using D to implement it. I know it'll have to be written in a strict subset of D, as most of the runtime will need to be stripped out anyway. I've done some basic research, stumbled upon XOMB OS (a small exokernel project written in D) but wanted some thoughts from people who may have much more insight into the internals of D. So a few questions:
>
> What exactly are the language features I can use at such a lower level? I know OOP stuff is out (or is it?), dynamic arrays, GC, lazy functions, etcetera. So that leaves structs, CTFE, contract programming, mixins, templates, AST macros, basically any compile time features, correct? I'm sure there are a few others I'm missing.
>
> I've been lurking for awhile, and last time I checked there were three different compilers. LDC looks to be the most promising. What are peoples' thoughts / experiences with the latest version of LDC?
>
> How large is D2's runtime? Is it even worth the time and effort to strip down a custom runtime for kernel use in the first place? In general things need to be fairly lean, so executable size is a concern.
>
> Oh, and thanks in advance!
>
> -Jesse

Looking at was in the runtime (D1):

Associative arrays
opApply for strings
switch
most array related things
cast
exceptions
+ other tings




More information about the Digitalmars-d mailing list