IUB logo

Computer Science in
Engineering & Science

International University Bremen

Operating Systems
& Networks

(Fundamental Computer Science II, 320-202)

Lectures
<empty space> Schedule
<empty space> Contents
(incl. slides)
<empty space>
Assessment
<empty space> Assignments 
<empty space> Examination  
<empty space>
Resources
<empty space> References
<empty space> Sources
<empty space> Syllabus
Networks
 
Networks: Part 1

Slides
Part 1
Part 2

Lecture Notes

Operating Systems
 
Full set of essential slides

Projection format
1:1

Printer friendly versions
1:4
1:9
1:16
Essential
slides

0. Organization
& table of contents

Part I - Operating Systems

1. Introduction to operating systems
  • Features (and non-features) of operating system
  • Common grounds for operating systems
  • Historical perspectives
  • Types of current operating systems
  • Design principles for system software (monoliths & µkernels)
  • Examples of languages considered for system level programming:
    • Java
    • Ada95
    • POSIX interfaces
    • C/C++

2. Hardware basics
  • General computer architecture
  • CPU
    • Registers
    • Traps/Interrupts & protected modes
  • Memory
    • General memory layout
    • Caching
  • I/O systems
    • I/O controllers
    • I/O buses
    • Elementary device programming
  • Some examples of µprocessors
    • Small scale µcontroller (68HC05)
    • Full scale integrated processor (MCP565)

3. Processes
  • Processes and threads
    • Architectures
    • Definitions
    • Process states and models
  • Shared memory based synchronization
    • Flags
    • Condition variables
    • Semaphores
    • Conditional critical regions
    • Monitors
    • Protected objects.
    • Issues
      • Guard evaluation times
      • Nested monitor calls
      • Simultaneous reading
      • Queue management.
      • Synchronization and object orientation
      • Blocking operations and re-queuing.
  • Message based synchronization
    • Synchronization models
    • Addressing modes
    • Message structures
    • Selective accepts, selective calls
    • Indeterminism in message based synchronization
  • Deadlocks
    • Deadlock situations and requirements
    • Deadlock detection & recovery
      • Resource allocation graphs
      • Banker’s algorithm
    • Deadlock avoidance
      • Safe systems
    • Deadlock prevention
      • Eliminate one of the pre-conditions for deadlocks
  • Scheduling
    • Basic performance based scheduling
      • Ci is not known:
        • First-come-first-served (FCFS)
        • Round robin (RR)
        • Feedback-scheduling
      • Ci is known:
        • Shortest job first (SJF)
        • Highest response ration first (HRRF)
        • Shortest remaining time first (SRTF)
    • Basic predictable scheduling
      • Fixed Priority Scheduling (FPS)
        with rate monotonic priority order (RMPO)
      • Earliest Deadline First (EDF)
    • Real-world extensions
      • Aperiodic, sporadic, soft real-time tasks
      • Synchronized talks (priority inheritance, priority ceiling protocols)

4. Memory
  • Requirements & hardware structures
    • MMU features & requirements
  • Partitioning, segmentation, paging & virtual memory
    • Simple segmentation
    • Simple paging
    • Multi-level paging
    • Combined segmentation & paging
    • Translation look aside buffers
    • Hashed tables, Inverted page tables
  • Virtual memory management algorithms
    • Fetching
    • Placement
    • Replacement
    • Resident set management
    • Cleaning
    • Load control

Part II - Networks

1. Introduction to networks

2. ISO layers
  • Physical
  • HDLC
  • V.42

3. Network standards
(lower layers)
  • Ethernet: 10Base2, 100BaseT, Gbit
  • Switching, VLAN, Wireless Ethernet

4. Protocols
  • IP
  • SNAP
  • Routing
  • TCP
  • SMTP
  • HTTP
  • UDP
  • DNS
  • SNMP
  • RPC
  • NFS

© International University Bremen
Engineering & Science
Tuesday, 22 April 2003Holger Kenn & Uwe R. Zimmer

<empty space>