Wednesday, April 21, 2004

Operating Systems

Was reading a very interesting and extremely thought provoking presentation by Rob Pike (here).
His views though initially a bit jarring are quiet true (Well he is Rob Pike after all so they will tend to be true !! ;-) )

This has made my resolve stronger .... my plans to write my own OS which I ditched quiet a few times in past is going to be restarted again.
I do consider myself a much more mature and better programmer now than in past and so possibilities of falling in implementation traps and losing the bigger picture will hopefully be lesser now.
Going to start designing and writing basic kernel this weekend ... in a few weeks , if nothing else comes up , should have a basic OS up and running .....
Will be posting design docs soon ... but basic idea is "My OS is not Unix/Plan 9/Windows/etc/etc".
I was considering adding complete pluggability of evaluation function to chess engine ... though I dropped that path , it has enlightened me on some pretty cool ideas on pluggability in general and generic design principles - should allow basic design to be helpful for future extensions (Reminds me of the really cool interpretation on "Expected the unexpected" by Billy Bob Thornton in the movie Bandits).

Sood , hope you recall about the guy who wanted to write filesystem code in some interpreted language ;-)
Though his approach was flawed - by concentrating on the how/what of the implementation , the "why" of the idea is not essentially flawed ..... will be thinking more on those lines too.
Have decided that I will need to get full marks in Tannenbaum's class :) - so NO monolithic kernel ... anyway I dont really like the idea of a monolithic kernel and would prefer well defined seperation of responsibilities.
Lots to think and design .... hope you guys also get similarly motivated by Rob Pike's article .... I think the article has traces of mocking and a direct challenge to the industry/research field - will try to take it up in my own way :)

0 Comments:

Post a Comment

<< Home