Amir Averbuch


Course Outline:

  1. Introduction.
  2. Computer-system structures.
  3. Process management (processes, CPU scheduling, synchronization, deadlock).
  4. Threads.
  5. Memory management.
  6. Virtual memory.
  7. Scheduling on uniprocessors.
  8. File systems.
  9. I/O Systems.
  10. Linux and Window Operating systems.
  11. Distributed file systems.
  12. Distributed shared memory.

2010-2011 Lecture slides

  • PPT slides

    Execrises located in

    Exercises located

    VM data

  • VM data

    2008-2009 Lecture slides

  • PPT slides
  • Notes on Operating Systems by Dror Feitelson - a recommended supplement to the slides
  • Exercises

    Lightweight processess:

  • Lightweight processes .

    Parallel processing in Linux:

  • Parallel processing in Linux (multithreading).

    MACH operating system:

    Mach operating system.

    Cache performance:

    Cache performance.

    Textbooks:

    1. A. Silberschatz, P. Galvin and G. Gagne, Operating Systems Concepts (Seventh Edition), John Wiley, 2005.
    2. W. Stallings, Operating Systems, Pearson, Prentice Hall, 2005, Fifth Edition.
    3. A. S. Tanenbaum, A.S. Woodhull, Operating System: Design and implementation (second edition), Prentice Hall, 1997
    4. A. S. Tanenbaum, Distributed Operating Systems, Prentice-Hall, 1995.
    5. Bach, The Design of the Unix Operating System, Prentice-Hall, 1986.

    WWW Pointers:

    There is a lot of material on operatings systems structures on the web.