Computer Science 213:  Operating Systems and Parallel Algorithms

Laboratory Exercises

Computer Science 213 includes weekly laboratory exercises, as described below:
Laboratory
Exercise Title and Description
Lab. 1 Getting Started With C:
  • Program Structure
  • I/O, Loops, Conditionals
  • Lab. 2 More C Programming:
  • Procedures
  • Parameters
  • Lab. 3 Still More C Programming:
  • Arrays
  • Sorting
  • Lab. 4 Concurrency in Unix/GNU C:
  • spawning child processes
  • fork, exec
  • Lab. 5 Shared Memory and Semaphores in Unix:
  • mmap, semget, semctl, semop
  • Sleeping Barbers Problem
  • Lab. 6 Deadlock and Starvation:
  • Methods of avoiding deadlock and starvation
  • Example in C
  • Lab. 7 Memory Management Algorithms:
  • First-fit, next-fit, best-fit, worst-fit, binary-buddies, boundary-tag buddies
  • Example
  • Lab. 8 Process Scheduling:
  • Algorithms and Examples
  • Policy Issues
  • Lab. 9 I/O Management:
  • Disk Scheduling Algorithms
  • Redundant Arrays of Independent Disks (RAID)
  • Lab. 10 File Management and Security:
  • Options for File Hierarchies
  • Analysis of Security Methods

  • This document is available on the World Wide Web as

    http://www.math.grin.edu/~walker/courses/213/lab-index.html
    

    created August 20, 1998
    last revised December 6, 1998