Imprint | Privacy Policy

OS Overview

(Usage hints for this presentation)

Computer Structures and Operating Systems 2021
Dr. Jens Lechtenbörger (License Information)

1 Introduction

1.1 Recall: Big Picture of CSOS

  • Computer Structures and Operating Systems (CSOS)
    • CS: How to build a computer from logic gates?

      NAND

      NAND” under CC0 1.0; from GitLab

      • Von Neumann architecture
      • CPU (ALU), RAM, I/O

        CPU

        CPU” under CC0 1.0; cropped and converted from Pixabay

    • OS: What abstractions do Operating Systems provide for applications?
      • Processes and threads with scheduling and concurrency, virtual memory

        Pong in TECS VM

        Pong in TECS VM” under GPLv2; screenshot of VM of TECS software suite

      • What is currently executing why and where, using what resources how?

1.1.1 OS Responsibilities

What does your OS even do?

What does your OS even do?

Figure © 2016 Julia Evans, all rights reserved; from julia's drawings. Displayed here with personal permission.

1.1.2 Definition of Operating System

  • Definition from [Hai19]: Software
    • that uses hardware resources of a computer system
    • to provide support for the execution of other software.

Figure 1.1 of cite:Hai17

Figure 1.1 of [Hai17]” by Max Hailperin under CC BY-SA 3.0; converted from GitHub

1.2 Prerequisite Knowledge

  • Be able to write, compile, and execute small Java programs
    • What is an object? What is the meaning of this in Java?
    • How do you execute a program that requires a command line argument?
  • Be able to explain basic data structures (stacks, queues, trees) and algorithms (in particular, hashing)
  • Being able to explain the database transaction concept and update anomalies

2 OS Teaching

2.1 OS Part

  • Sharp cut ahead
    • So far, we followed a book with projects to build a computer bottom up
    • Unfortunately, nothing similar exists to build an Operating System (OS) bottom up
      • (Or is far too technical for our purposes)
  • Thus, the OS part presents major concepts and techniques of modern OSs
    • Some topics build upon each other
    • Some are more isolated
    • Goal: Understand and control your devices
      • Performance
      • Trust

2.2 OS Exercises

  • While the CS part had weekly projects, this will not be the case for the OS part
  • Group exercises continue, though

2.3 Textbook(s)

2.4 Presentations (1/2)

2.5 Presentations (2/2)

  • As usual, (pointers to) presentations are available in Learnweb
  • Presentations include

    • Learning objectives
    • Explanations for class topics
    • Some slides contain audio explanations, e.g., the one starting with this bullet point

3 OS Plan

3.1 Big Picture of OS Sessions

OS Overview image/svg+xml OS Overview Jens Lechtenbörger Summer 2020 Hardware as basis(Discussed in CS part) Applications (Users) System Call Interface WK 23: OS Introduction Wk 24: I/O and Interrupts Wk 24: Threads as units of computation Wk 25: Thread scheduling Wk 25/26: Concurrency, MX - Primitives provided by OS - Lots of challenges Wk 27: Threads need memory - Instructions and data - OS supports virtual memory Wk 28/29: Processes and security - OS isolates processes - OS supports access control - OS may support crypto primitives

3.2 A Quiz

Bibliography

  • [Hai19] Hailperin, Operating Systems and Middleware – Supporting Controlled Interaction, revised edition 1.3.1, 2019. https://gustavus.edu/mcs/max/os-book/
  • [Sta14] Stallings, Operating Systems – Internals and Design Principles, Pearson, 2014.
  • [TB15] Tanenbaum & Bos, Modern Operating Systems, Pearson, 2015.

License Information

This document is part of an Open Educational Resource (OER) course on Operating Systems. Source code and source files are available on GitLab under free licenses.

Except where otherwise noted, the work “OS Overview”, © 2017-2021 Jens Lechtenbörger, is published under the Creative Commons license CC BY-SA 4.0.

No warranties are given. The license may not give you all of the permissions necessary for your intended use.

In particular, trademark rights are not licensed under this license. Thus, rights concerning third party logos (e.g., on the title slide) and other (trade-) marks (e.g., “Creative Commons” itself) remain with their respective holders.