183.195 Engineering Special Software 1: Operating Systems Kernel Programming & Crafting (OSKP&C) 2.0 VO

Ziel und Inhalt der Vorlesung

Operating System Kernels sind eine eigene Klasse von Software, die softwaretechnisch zumeist eine atypische Topologie aufweisen sowie bezüglich der organisatorischen Genese sehr stark von den Gedanken der Open Source Community geprägt sind. Diese beiden Charakteristika bewirken, daß man aus der Sicht des Mainstreams im Software Engineering schwer mit den konventionellen ingenieurtechnischen Methoden vorankommt.

Die vorliegende LVA widmet sich dieser Problemstellung aus konkreter Sicht. OSKP&C betrachtet die innere Struktur des Kernels von Betriebssystemen. Der Fokus liegt dabei auf der Struktur eines Mikrokernels der zweiten Generation (L4 wird verwendet) und wie darauf ein Betriebssystem implementiert wird.

Im Vorlesungsteil wird die Struktur des L4-Kernels diskutiert und die notwendigen Aspekte für die Realisierung eines Multi-Server Betriebssystems auf dieser Basis untersucht. Zusätzlich wird ein Vergleich zu monolithischen Betriebssystemen (Linux, RTAI/Linux) und kommerziellen Mikrokernelbetriebssystemen (QNX) gezogen. Ein Abriss über die verschiedenen Architekturen (monolithisch, Mikrokernel der 1. Generation, moderne Mikrokernels, Exokernels) dient zur Einbettung und Abgrenzung der LVA im Themenfeld.

Folgende Themen werden weiters behandelt:

  • Hardware, Booting und Hardware Initialization
  • Execution vehicles, threading, scheduling and task switching
  • Address spaces, memory protection
  • IPC and IPC optimizations
  • Resource management
  • Power management
  • Dateisysteme und der Dateisystemabstraktionslayer

Vorlesungsplan

Die Vorlesung wird geblockt abgehalten.

Die Termine werden an dieser Stelle bekanntgegeben!

Einheit

Ort

Datum

Uhrzeit

Inhalt

Vortragende

Vorbesprechung,
Vorlesung 1

HS 14

07.11.2005

10:00-12:00

Vorbesprechung und Einführung

Tomsich

Vorlesung 2

GM 7

05.12.2005

09:00 c.t. - 13:00

Monolithic, Microkernel or Exokernel?

Tomsich

Vorlesung 3

GM 4

12.12.2005

09:00 c.t. - 12:00

Address spaces, memory management & the memory hierarchy

Tomsich

Vorlesung 4

HS 14

13.01.2006

09:00 c.t. - 12:00

Processes, context switching and system calls

Tomsich

Vorlesung 5

GM 4

16.01.2006

09:00 c.t. - 12:00

Device drivers

Tomsich

Vorlesung 6

HS 14

20.01.2006

09:00 c.t. - 12:00

Microkernel construction

Tomsich

Vorlesung 7

HS 14

23.01.2006

09:00 c.t. - 12:00

SMP & Locking

Tomsich

Folien

OSKP_Introduction.pdf

Vorbesprechung, Vorlesung 1

25 K

OSKP_MonoMicroExo.pdf

Vorlesung 2

181 K

OSKP_Tasks.pdf

Vorlesung 3

7.2 M

OSKP_UserKernel.pdf

Vorlesung 4

538 K

OSKP_Scheduling.pdf

Vorlesung 5

2.2 M

Papers

exokernel-sosp95.pdf

Exokernel: An Operating System Architecture for Application-Level Resource Management

357 K

hotos-jeremiad.pdf

Exterminate All Operating System Abstractions

159 K

IPCperf.pdf

The Increasing Irrelevance of IPC Performance for Microkernel-Based Operating Systems

137 K

machsys.pdf

A Programmer's Guide to the Mach System Calls

101 K

machuse.pdf

A Programmer's Guide to the Mach User Environment

69 K

osr-exo.pdf

The Operating System Kernel as a Secure Programmable Machine

146 K

syskernel.pdf

Mach: A System Software Kernel

13.6 K

towards-ukernels.pdf

Toward Real Microkernels

140 K

ukernel-construction.pdf

On Microkernel Construction

328 K

ukernel-performance.pdf

The Performance of Microkernel-Based-Systems

139 K