Page 1 of 1

Diffusing OS into lower levels?

Posted: Tue Dec 21, 2010 2:54 pm
by Artlav
I was wondering, where does the concept of an Operating System ends?

Suppose you're writing a program for a microcontroller. Would that program be it's own OS?
It have all the resource management as part of it, and CPU provides the I/O.

Furthermore, imagine a CPU with multitasking support, like x86.
Add to it the circuitry (or microcode) to handle memory allocation, various utility functions, etc.
There already are hardware implementations of things like mp3 decoders, file system I/O, graphics drawing functions and like, put it all together.
A program would run on such a CPU like an application under it's OS.

Will the microcode of that CPU be an OS? Or maybe even the parts of the hardware design responsible for resource handling features?

What do you think?

Re: Diffusing OS into lower levels?

Posted: Tue Dec 21, 2010 3:02 pm
by Combuster
Operating systems manage and share resources between various unspecified tasks. Microcode does not do resource sharing, standard microcontrollers have only one task - neither is an OS by that definition.

Re: Diffusing OS into lower levels?

Posted: Tue Dec 21, 2010 3:27 pm
by Casm
In the earliest days of computers, before operating systems in the modern sense had been invented, computers only ran one program at a time, and that program had direct control of all the computers hardware, but nobody thought of them as being anything other than applications.

The minimum necessary for something to qualify as an operating system is probably that it should supply services to other programs. Even in a single tasking environment such as DOS, there is probably also a need for it to act as a benevolent dictator in (for example) sharing out disk space.

Re: Diffusing OS into lower levels?

Posted: Tue Dec 21, 2010 4:47 pm
by Combuster
There's a difference between doing only one task, and doing any task but only one at a time - DOS fits the definition if you look closer.

Re: Diffusing OS into lower levels?

Posted: Wed Dec 22, 2010 4:18 am
by Artlav
What if the CPU was handling the resource allocations to the tasks running on it, as a set of embedded features?

Re: Diffusing OS into lower levels?

Posted: Wed Dec 22, 2010 9:12 am
by Solar
Artlav wrote:What if the CPU was handling the resource allocations to the tasks running on it, as a set of embedded features?
Well then, that system of "embedded features" that specifies how an application runs, and how it interfaces with the system, would be the operating system, wouldn't it?

But, when you look at it from a distance: Why does it matter?