Language Made Just For Developing Kernels

Programming, for all ages and all languages.
User avatar
AaronMiller
Member
Member
Posts: 81
Joined: Thu Mar 06, 2008 1:26 pm
Location: Roseville, California (USA)
Contact:

Re: Language Made Just For Developing Kernels

Post by AaronMiller »

My main idea behind 'arch' is that it includes code for all architecture families you specify. That is, if you want your binary to support SSE3 and have fallback support for SSE2/SSE1 it would include that code, and determine which set of code to run through the use of CPUID. Of course this would take some tweaking and optimization to get it to work just right, but I find such a thing to be quite beneficial.

About JIT compiling, I have mixed views on this atm. I actually think such a thing would be great for OS dev. (Now just hear me out for a moment!) Make one single binary that loads up through a set of loader binaries, and you have the whole OS running on whatever platforms the loader binaries can load up. You have to put in the right amount of optimizations, and for a kernel you would find it more beneficial to build the whole thing in one go, or in a set of segments. You could then have device drivers work in a similar manner, or be built for just the target language.

Code: Select all

bootloader (x86_64)
 > kernel image
 > modules
 > run kernel

kernel image:
 built into kernel (x86_64) at 1st megabyte in memory

modules:
 appended to end of kernel
I said it'd be great, but I don't think it'd be the best thing to do. I believe it's a practical solution to multi-platform support though, at least for the kernel. Time is everything though, so is the development time for all of the support for just making the kernel load worth it?

Cheers,
-naota
Post Reply