Input needed...

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
ezanahka

Input needed...

Post by ezanahka »

Hi!

I'm new to this forum.  I'm probably still a total newbie although I've been making my OS solo for about 10 months now.  So here is what I've been doing:  a very much simplified exokernel-ish kernel with a very much simplified Lisp-ish interpreter running on top.  I've been doing it with pure Nasm and I have about 4000 lines of code ready for the kernel thus far.  I haven't even begun to design the interpreter yet.  The interpreter will be the default user space process loaded at system powerup to run on top of the kernel and allows the root user to log in.  Do you consider this a hopeless project or... what?  Is exokernel architecture a braindead idea?  Any suggestions about anything?  Tell me what you think...  input is needed.  Or would you like to hear more about the features, etc. I'm planning to implement before you want to say anything?

Thanks
carbonBased

RE:Input needed...

Post by carbonBased »

What exactly do you mean by exokernel.

There's some confusion, based on who you ask, as to what, in fact, dictates an "exokernel."  Last I checked, an exokernel was just a play on a microkernel... this being the case, then no, it's definitly not a braindead idea.

Cheers,
Jeff
ezanahka

RE:Input needed...

Post by ezanahka »

Ok! :)

Here is what I mean when referring to an exokernel.  Kill all possible kernel level abstractions except those which are necessary for security and protection.  Separate resource management from resource protection and delegate the management outside the kernel.  Let applications make their own abstractions.  Ok... thus far this has been quite microkernel-ish.  However exokernels have no trusted servers running in user space.  Apps either use the device interfaces provided by the libOSes or directly the hw interfaces provided by the kernel itself.  The don't rely on servers and this seems to be the biggest difference.  Microkernels have application servers which they trust to handle the functionality moved outside the kernel while paranoid exos don't have any trusted partners running outside...  This is my opinion and imho it is a big difference which requires the exokernel to be much more strict regarding protection and security...

I'm interested in exo-architecture mainly because it's bizarre and focuses on protection and security which are imho the biggest software related problems out there in addition to the software crisis.

Yippee! Software engineering is fun.
Thanks for the input...  I'm happy to process it and output the results into my coding efforts... :)
- Esa
Post Reply