I just finished a course on operating systems and the definition of an operating system is still unclear to me. Does any operating system itself take up resources such as CPU and memory? For example the scheduling algorithm must take some processing power to compare tasks to see which goes first and whatever data structure the tasks are held in takes up space.
Also the act of knowing what to do with virtual memory must take calculations which take up resources, right?
Hypothetically speaking, if a computer with one program and no operating system was running the program, the program would run to completion faster than on the same computer but with an operating system. Is that true?
EDIT: I agree the course was total crap, for amusement purposes here is the definition of OS we were given
What are Operating Systems? • Several possible definitions 1.The code that {Microsoft, Apple, Linux community, Google} provides 2.The code you depend upon that you also didn’t write 3.The code that runs in privileged mode 4.The code that makes things work 5.The code that makes things crash (rather cynical definition) 6. And many others...
What are OSes • An abstraction – providing an appropriate interface for applications executing on a computer to access that computer's resources – much hinges on how we define "appropriate" • A way to address different concerns – performance in time – performance in space – sharing and resource management – failure tolerance – security – marketability
This mockery of a textbook we had to spend $100+ on, defines operating systems as "it's that software that almost everything else depends upon. This is still vague, but then the term is used in a rather nebulous manner through out the industry".