I'm very interested in operating systems programming.I want to write my own kernel from empty paper.I know C language well and a bit assembly.I've intended to buy Andrew tanenbaum's book: "Operating Systems Design and implementation" and start to read it. Everyone tell me that it is just a waste of time and it would be good if i give up such thoughts about writing own kernel. But I just want to know how everything works behind the scenes,Learning writing own kernel is just for educational purposes and i've not any illusion,that my OS will be huge and usable.
Is there any way to learn how OS works behind the scenes than buy A.T OS Design and Implementation"? is it enough to build my own linux distribution?, learning linux kernel development? or learn Windows Internals(Excellent book by Mark Russonovich)? in order to understand how everything works.
Thank you beforehand.
I think your best chances are to study the current Linux kernel. It is well established and widely used. It's available for free so why not? Writing your own kernel will take a huge amount of time and you will stumble upon stuff other people have figured out. Although creating your own kernel will be a very interesting project, don't re-invent the wheel. ;-)