Send to a Friend

PhiNotPi's avatar

How would one design a minimalistic operating system?

Asked by PhiNotPi (12681points) April 24th, 2012

At one point last year, I was trying to design a minimalisic computer processor. Now, I’m trying to figure out how a simple operating system might work.

Before I get too far into the details, I am going to point out that this is more of a theoretical exercise than anything else. I really don’t envision myself implementing an OS, but I want to learn the nuts-and-bolts of how one might work, and maybe even lay down the blueprints for one.

So far, the information I have found applies mainly to modern operating systems, such as Windows 7 and Mac OS X. These operating systems have complicated GUIs, multi-user capabilities, complex memory management, and internet connections, etc. This is way more complicated than I need.

I want to learn how the real basis of an operating system works. This includes how to keep track of which programs are running, how to allow different programs temporary access the CPU, and how to keep track of what memory locations the programs are allowed to use.

Since this is a theoretical exercise, I am looking for very detailed explanation, but not to the point of “this is the code to do it on a __ processor”.

Using Fluther

or

Using Email

Separate multiple emails with commas.
We’ll only use these emails for this message.