CS 537 Notes, Section #1: Overview


OSTEP: Chapter 2.

Review class information sheet

This class is going to be different in some ways from your other CS classes. How you write code is going to be as important as getting it to work.

This course puts together things from many other courses: languages, architecture, hardware, data structures, algorithms.


"Operating system" is a hard term to define. What you consider an operating system depends on your needs and your view of the system.

WHAT IS AN OPERATING SYSTEM?

A scheduler/allocator:

A virtual machine:

A multiplexor:


According to these three views, if:

then we would not need operating systems. My view of operating systems says that they will still be needed:

As a servant and provider of services:

This view as a provider of services fits well with our modern network view of computing, where most resources are services.


What are the desirable qualities of an operating system? We can discuss them in terms of: Usability, Facilities, Cost, and Adaptability.


Why study operating systems? Two perspectives:


QUESTIONS TO ASK ABOUT OPERATINGS SYSTEMS

Or, why are studying this stuff?

Why are operating systems important?

Why are operating systems difficult to create, use, and maintain?


Operating systems are an unsolved problem.


(No, UNIX/Linux is not it. Nor are Windows or MacOS. Maybe Plan 9?) Unlike fields like electronics where there are such models (zero distortion, flat response), any real system has (a large number of) flaws.



Copyright © 2013, 2018 Barton P. Miller
Non-University of Wisconsin students and teachers are welcome to print these notes their personal use. Further reproduction requires permission of the author.