Vorlesung: Betriebssystemarchitektur

Wintersemester 2002/2003

Die Lehrveranstaltung richtet ihren Schwerpunkt auf Technologien in Standard-Betriebssystemen (general-purpose operating systems) und diskutiert Techniken und Ansätze am Beispiel der Microsoft Windwos NT/2000/XP-Betriebssystemfamilie. Diese Ansätze werden in Relation gesetzt zu Lösungen, die in UNIX/Mac OS X/ Linux, dem VMS-Betriebssystem und eingebetteten Systemen realisiert worden sind. Einen Überblick über die Themen der Lehrveranstaltung findet sich hier.

Auf diesen Seiten finden Sie Unterlagen zu den Vorlesungen, die laufend ergänzt werden. Als Teilnehmer der Lehrveranstaltung sind Sie berechtigt Kopien der Unterlagen für Ihre eigene Verwendung anzufertigen. Jegliche Vervielfältigung und Nachnutzung der Unterlagen in elektronischer oder gedruckter Form bedürfen der schriftlichen Zustimmung des Autors.

Termine und Dozenten

  • Mo, 11:00-12:30, Vorlesung in HPI HS 2, Prof. Dr. A.Polze
  • Do, 11:00-12:30 Vorlesung in HPI HS 2, Prof. Dr. A.Polze
  • Mi, 11:00-12:30, Übung in HPI HS 2, Dipl.-Phys. M.Dirska

Der Leistungserfassungsprozess der Vorlesung schließt das regelmäßige Erledigen von Übungsaufgaben ebenso ein, wie eine Klausur zum Ende des Wintersemesters.

Literaturhinweise

  • David A.Solomon/Mark A.Russinovich, "Inside Windows 2000", 3rd Edition, MS Press, 2000.
  • John Hart, "Win32 System Programming", Addison-Wesley, 1997.
  • Abraham Silberschatz, Peter B. Galvin, "Operating System Concepts", John Wiley & Sons, 6th Ed., 2003;
    Webseite zu diesem Buch unter www.os-book.com
  • Gary Nutt, "OS Projects using Windows NT", Addison-Wesley, 1999.
  • Helen Custer, "Inside Windows NT", MS Press, 1993.
  • Andrew S. Tanenbaum, "Distributed Operating Systems", Prentice Hall, 1995.

Ablauf der Lehrveranstaltung

Die Vorlesung wird auf deutsch gehalten. Dennoch liegen die meisten Folien in englischer Sprache vor.
In der untenstehenden Liste finden Sie die Unterlagen im pdf-Format (2 Folien je Seite).

Unit 1: Introduction and Overview

Termine: 14.10., 17.10.

  1. Curriculum Module Overview (.pdf)
  2. The Evolution of Operating Systems (.pdf)
  3. A Categorization of Operating Systems (Silberschatz) (.pdf)
  4. Operating System Structures / System Calls (Silberschatz) (.pdf)
  5. Windows 2000 – Concepts & Tools (.pdf)
  6. Windows 2000 – Microsoft Roadmap (.pdf)

Unit 2: Windows 2000 Architecture

Termine: 20.10., 23.10.

  1. Computer Structures (Silberschatz) (.pdf)
  2. Structuring of the Windows 2000 Operating System (.pdf)
  3. Win32 API – Naming Conventions, Types (.pdf)

Unit 3: Processes and Threads

Termine: 28.10., 4.11., 7.11., 11.11.

  1. The Process Concept (Silberschatz) (.pdf)
  2. Windows 2000 Process and System Activity (.pdf)
  3. Windows 2000 Process and Thread Internals (.pdf)
  4. Win32 Process Creation (.pdf)
  5. The Thread Concept (Silberschatz) (.pdf)
  6. Windows 2000 Thread Scheduling (.pdf)
  7. Scheduling Algorithms (Silberschatz) (.pdf)
  8. Win32 Thread Creation (.pdf)

Unit 4: Memory Management

Termine: 11.11., 14.11., 18.11., 21.11., 25.11.

  1. Memory Management for Multiprogramming (.pdf)
  2. Windows 2000 Memory Management Internals (.pdf)
  3. Windows 2000 Memory Structures (.pdf)
  4. Win32 Memory Management (.pdf)
  5. Win32 Inter-process Communication (.pdf)

Unit 5: System Mechanisms

Termine: 28.11., 2.12.

  1. System Mechanisms - Object Manager, Trap Dispatching (.pdf)
  2. Synchronization (Silberschatz) (.pdf)
  3. Win32 IPC - Mailslots (.pdf)

Unit 6: Protection and Security

Termine: 2.12., 5.12., 9.12.

  1. The Security Problem (.pdf)
  2. Reflections on Trusting Trust (ACM Classic)
  3. Windows 2000 Security Concepts (.pdf)
  4. C2 Evaluation of Windows NT 4.0 SP 6a
  5. Win32 Security Descriptors (.pdf)
  6. Windows 2000 – Standards-based Security (.pdf)
  7. The OSF Distributed Computing Environment (DCE) and Kerberos (.pdf)

Unit 7: The Input/Output System

Termine: 12.12., 16.12.

  1. Principles of I/O Systems (.pdf)
  2. The Windows 2000 I/O System (.pdf)
  3. Win32 File and Directory Management (.pdf)
  4. File-Dir-Examples

Unit 8: File System

Termine: 16.12., 19.12., 6.1.

  1. Background: Unix File Systems (.pdf)
  2. The Windows 2000 File System (NTFS) (.pdf)
  3. Encrypting File System Security in Windows 2000 (.pdf)
  4. Encryption Algorithms - Overview (.pdf)
  5. NTFS – Recovery Support (.pdf)
  6. Win32 Structured Exception Handling (.pdf)

Unit 9: Windows 2000 Networking

Termine: 9.1., 13.1.

  1. Networking Components in Windows 2000 (.pdf)
  2. Win32 Socket Programming (.pdf)
  3. Microsoft-specific extensions to Sockets; NetBIOS (Wnet) API (.pdf)
  4. Winsock 2.0 – additional Features (.pdf)
  5. Quality-of-Service and Security - RSVP and IPsec (.pdf)

Unit 10: Interoperability

Termine: 16.1.

  1. Windows 2000 - UNIX Interoperability (.pdf)
  2. Windows 2000 in an UNIX Environment (.pdf)
  3. The Interix Subsystem for Windows 2000 (.pdf)

Unit 11: Windows CE Architecture

  1. Windows CE Design Principles and Goals
  2. Basic System Components
  3. Process and Memory Model

Unit 12: Concepts of Real-time Systems

  1. Introduction and Vocabulary
  2. Misconceptions
  3. Task Assignment and Scheduling
  4. Real-Time Systems with Windows CE

Unit 13: Networking and Connectivity

  1. Networking Mechanisms in Windows CE
  2. Host-communication with the Remote API (RAPI)
  3. Serial and Telephony Communications (TAPI)
  4. Device Drivers in Windows CE

Unit 14: The Mach Operating System

Termine: 22.1., 23.1.

  1. Mach Overview and System Concepts (.pdf)
  2. Threads and Scheduling in Mach (.pdf)
  3. Mach Memory Management (.pdf)
  4. The Shared Objects Net-interconnected Computer (.pdf)
  5. Artikel über Mach in UNIX/mail 2/95 und 3/95

Unit 15: Experimental Microkernel Systems

Termine: 27.1., 30.1.

  1. The Amoeba Distributed Operating System (.pdf)
  2. Chorus: Microkernel and User-space Actors (.pdf)
  3. Comparison of Amoeba, Mach, and Chorus (.pdf)