![]() |
|
In the summer of 2001 I took the course CS 452 at the University of Waterloo. In this course I had the chance to build a Real Time Operating System with a Micro Kernel that used Send / Receive / Reply kernel primitives for IPC (Inter Process Communication).
This OS is very similar to QNX products. In fact one of the founders of QNX took this very course in the early 1980's. So inspired was he by the work he did at Waterloo that he founded a company in Ottawa to market his work.
Yes CS 452 has a long history - largely legendary about how bloody time consuming this damned course is!
If you have little programming experience you may want to get a good book on programming. I would suggest - if you are a serious aspiring system designer that you go buy your new bible right away, The C Programming Language. If you can already program in C no doubt you have already read this book that I will refer to as K & R from now on.
If you are just curious how a Computer Operating System works - not to worry, you have come to the right (if somewhat verbose) place. I will assume that the average reader has some experience programming in a simple language, like Basic or Pascal. I will also assume that you are familiar with loops, variables, procedures, arrays and so forth. I will try to explain some of this stuff in simple terms anyway.
I will also assume that you are going to expect me to recommend a good book on OS design in general. Which I will now do, this book is pretty good, at least the first edition was great, I bought it, for about $100, one month before the second edition came out. So I had to buy the second edition, also for $100 only a few months later. (Guess who wanted to kick himself in the head?)
You are the person to see this site since work was started here in August of 2001.