Imprint | Privacy Policy

Course Overview

(Usage hints for this presentation)

IT Systems, Summer Term 2024
Dr. Jens Lechtenbörger (License Information)

1. Assorted Topics

  • Fire alarms
    • Keep calm, leave swiftly, but leave no one behind
  • IT Systems is a new module, successor to CSOS
  • eLectures recordings
    • Available if no technical problems, but please use only in exceptional cases
  • Exchange students?

2. Motivation

  • What do you see?

    Screenshot of knote web application

    Screenshot of knote web application” under CC0 1.0; from GitLab

  • What might be happening?
    • From a systems’ perspective?
    • Abstractions?

2.1. Course Objectives and Goals

  • Objectives
    • Discuss how hardware and software systems are built, using abstraction, and how they work together
    • What is happening underneath?
      • Cloud Infrastructure: Explain basic concepts, deploy simple containerized system
      • Operating System (OS): Explain how OSs do their job, use them, inspect what is happening
      • Computer Architecture: Build (simulated, yet realistic) computer by breaking task into simpler ones

2.2. Course at a Glance (1/4)

  • Method: Explore abstractions bottom-up

    Computer hardware with layers of abstraction

  1. Computer Architecture
    • Build a complete, general-purpose, programmable computer system, called Hack, from ground up, starting with elementary logic gates
    • Play and experiment with this computer, at any level of interest
    • (Prerequisite: Binary numbers; tutorial with self-tests)

2.3. Course at a Glance (2/4)

  • Method: Explore abstractions bottom-up

    Computer with OS and Kernel API as hardware abstraction

  1. Computer Architecture
  2. Experiment with OS concepts
    • Explain core OS management concepts, e.g., processes, threads, virtual memory
    • Use GNU/Linux command line and explore system

      Tux, the Linux mascot

      Tux, the Linux mascot” under CC0 1.0; from Wikimedia Commons

    • Explore sample Java code
      • (Prerequisite: Java programming, compilation, execution)

2.4. Course at a Glance (3/4)

  • Method: Explore abstractions bottom-up

    Container as abstract execution environment

  1. Computer Architecture
  2. Experiment with OS concepts
  3. Explain virtualization, experiment with containerization

2.5. Course at a Glance (4/4)

  • Method: Explore abstractions bottom-up

    Cloud of computers as abstract execution environment

  1. Computer Architecture
  2. Experiment with OS concepts
  3. Experiment with containerization
  4. Set up simple cloud application

2.6. Learning: Retrieve Taking

  • What important topics are we going to cover?
  • What do you want to study (maybe on your own)?

3. Course Organization

3.1. Course Components

  • Course with 6 CP, at least 8h per week
    • Joint sessions in class (no traditional lectures, details below)
      • Tuesday (10:15 a.m.): Recap of lecture material
      • Wednesday (12:15 p.m.): Exercises
      • 2x90 minutes = 3h
    • Self-study, 5h per week
      • Flipped classroom (details below)
      • Including quizzes in Learnweb: Published as course progresses
        • Self-study quizzes to support your learning
        • Quizzes for study work (50% of total points required), deadlines on Thursdays (except public holidays, then Friday)
  • Final exam for 100% of final grade
    • You must pass both, study work and exam, for credits
      • Not recommended, but can be done in different terms/years

3.2. Course Material

3.2.1. OER on GitLab

3.3. Schedule

  • April 9/10: Course Introduction
  • April 16/17: Boolean Logic
  • April 23/24: Combinational Circuits
  • April 30: Machine Language
  • May 7/8: Computer Architecture
  • May 14/15: OS Introduction
  • Pentecost
  • May 28/29: Interrupts and I/O
  • June 4/5: Threads and Scheduling
  • June 11/12: Mutual Exclusion
  • June 18/19: Virtual Memory
  • June 25/26: Processes
  • July 2/3: Virtualization and Containers
  • July 9/10: Cloud Computing
  • July 16: Kubernetes
  • July 17: Course Recap

3.4. Prerequisites

  • We suppose that you can convert between decimal, binary, and hexadecimal numbers
  • We suppose that you can program in Java
    • Including compilation and execution
      • Which requires installation of JDK
  • Quickstart with Nand2Tetris software tomorrow (requires JRE)
    • Please install ahead of time and come with Laptop

3.5. Past Course Evaluations and Results

  • IT Systems is a new module
    • First incarnation in 2024
      • Nominated for teaching award by student council
    • Successor to Computer Structures and Operating Systems (CSOS)
  • CSOS evaluation in 2023 highly positive

    group discussion

    group discussion” by ProSymbols under CC BY 3.0 US; cropped from the Noun Project

    • Average grade of 1.84 (1 is best); improved from 3.04 in previous year
    • Average student grade of 2.5; improved from 3.1 in 2022
      • Failure rate of 11% (9 out of 98 students failed the exam, 2 more students failed the exercises); improved from 25% in 2022
    • Students usually report that our type of interaction and work is unknown to them
      • Please trust me and overwhelming scientific evidence (alluded to next), and try this out

3.6. Q&A

Uncovering questions

Uncovering questions” under CC0 1.0; background changed from Pixabay

4. On Learning and Teaching

4.1. Learning Objectives

  • Later presentations contain Learning Objectives
    • What we want you to have learned (after lecture and exercises)
  • Content + action verb

    Bloom's Taxonomy

    Bloom's Taxonomy” by Center for Teaching Vanderbilt University under CC BY 2.0; from flickr

    • Action verb specifies level of skill
      • Think of exam question!
    • Bloom’s taxonomy
  • Examples
    • Apply algorithm X in sample scenario
    • Argue about relative strengths and weaknesses of Y and Z
    • Course Objectives on earlier slide

4.2. Learning (1/2)

4.3. Learning (2/2)

4.4. Flipping IT Systems

  • CSOS has been flipped since 2017, last year following (Kapur et al. 2022):
    • Improved learning outcomes based on productive failure, active learning, and instructor support: Fail, Flip, Fix, Feed

      Conflict

      Conflict” by lastspark under CC BY 3.0 US; cropped from the Noun Project

      • Fail
        • You attempt to solve a task before being instructed
        • Possibly without success
        • You activate prior knowledge, diagnose own learning, stimulate (meta-) cognitive processes
      • Flip: You work on self-study material ahead of meeting
      • Fix, Feed
        • Class meetings are shaped by you: What do you wish for?
        • We discuss and work on tasks (“failed” and new ones, exercises and previous exam tasks)
        • This is where I am around and we spend limited, valuable time

4.5. Course Rhythm

  • On Wednesdays
    • Publication of new course material and quiz for study work
      • Unlocked when you submit fail task
        • Unlocking suggested by students last year
      • New tasks on the “Completion Progress” in Learnweb
    • Session

      experience

      experience” by Nithinan Tatah under CC BY 3.0 US; cropped from the Noun Project

      • Conclude current topic, work on tasks
        • Including Q&A on current study work
      • Outlook on new material, initial work on Fail task
  • Flip
    • Learn on your own, with self-study tasks
  • On Tuesdays
    • Revisit Fail task, Fix jointly if necessary, Feed

4.6. Your Thoughts

  • Anonymous pads in Learnweb for our sessions

    dialogue

    dialogue” by Template under CC BY 3.0 US; cropped from the Noun Project

    • For your input and notes as well as my session plans
  • My Questions
    • Why did you enrol in a presence university?
      • Why do you attend sessions? On Campus?
      • Why would you like to come to campus?
      • Is everything fine as it is?
        • Proposed rhythm?
      • What stresses you? What brings you joy?
    • How should learning at a presence university look like?
      • What are your and my roles?

5. Conclusions

  • Let’s learn
    • What are the two most important aspects that you take away from this session?

Bibliography

Hailperin, Max. 2019. Operating Systems and Middleware – Supporting Controlled Interaction. revised edition 1.3.1. https://gustavus.edu/mcs/max/os-book/.
Kapur, Manu, John Hattie, Irina Grossman, and Tanmay Sinha. 2022. “Fail, Flip, Fix, and Feed – Rethinking Flipped Learning: A Review of Meta-Analyses and a Subsequent Meta-Analysis.” Frontiers in Education 7. https://doi.org/10.3389/feduc.2022.956416.
Nisan, Noam, and Shimon Schocken. 2005. The Elements of Computing Systems: Building a Modern Computer from First Principles. The MIT Press. https://www.nand2tetris.org/.

License Information

Source files are available on GitLab (check out embedded submodules) under free licenses. Icons of custom controls are by @fontawesome, released under CC BY 4.0.

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