Fall 2009

CSC 1600 - Operating Systems

TR 11:30 am - 12:45 pm in Mendel G87

Topic Schedule
Unix and C references
Java references
Instructor: Mirela Damian
Office: 167A Mendel Hall
Phone: (610)519-7414
Office hours:   T (1:00 pm - 2:00 pm),   W (10:30 am - 11:30 am)
For help desk hours, check here.
Class email: Fall09-CSC-1600-001@villanova.edu
Textbook: Andrew S. Tanenbaum
Modern Operating Systems, 3/e
Prentice Hall, ISBN 0-13-600663-9
Textbook supplements are available at   http://www.prenhall.com/tanenbaum/details.html
Recommended: J. Archer Harris
Schaum's Outlines, Operating Systems
McGraw-Hill, ISBN 0-07-136435-8


  • Graduate teaching assistants are available to help you with programming and system related issues. Their office hours are held in MSC 292.
  • Extra office hours will be held by the teaching assistant for this course, Nawar Molla, on Tuesdays 3:00pm - 5:00 pm, in the CSC library (MSC 159).
  • Instructions on how to access the Unix cluster from outside the villanova.edu domain are available at



Date Posted Topic Covered Due Date Download
08/24/09 Your Unix Account Now html
08/24/09 Introduction to Unix and C 09/08/09 Unix activities   C activities
09/10/09 Bit Manipulations 09/17/09 html
In-class exercises (bits.c)
09/28/09 Tiny Unix Shell (Part I) 10/06/09 pdf
Shell skeleton (C code)
09/28/09 Tiny Unix Shell (Part II) 10/08/09 html
In-class example (C code)

Topic Schedule

Date Topic Reading
Week 1 (Aug. 25, 27) Overview of Operating Systems (pdf) Ch. 1    References
Week 2 (Sep. 1, 3) C Programming Review   (index,   I/O,   arrays,   strings,  pointers,  structures,  argv)
Week 3 (Sep. 8, 10) More C (pdf).
Ch. 2
Week 5 (Sep. 15, 17) System Calls and Standard I/O ( pdf).
Introduction to Processes (pdf).
Ch. 5
Ch. 2, 10.3
Week 6 (Sep. 29) InterProcess Communication (IPC) with Pipes (pdf). Ch. 2.1, 10.3    References
Week 7 (Oct. 6, 8) Catching up. In-class exercise (C skeleton)
Oct. 12 - 18 Fall Break
Tuesday, Oct. 20 Process Scheduling (pdf). Exercises (pdf). Ch. 2
Thursday, Oct. 22 Midterm
Week 9 (Oct. 27,29) Basics of Threads (pdf). Posix Threads (html). Ch. 2     References
Week 10 (Nov. 3, 5) Concurrent Threads (pdf). Posix Semaphores (html). Ch. 2    References
Week 11 (Nov. 10, 12) Socket Programming (pdf).
Lab exercises ( html). Find your port number here.
Week 12 (Nov. 17, 19) SMTP (pdf). Lab (html). Hands-on.
Week 13 (Nov. 24) Virtual Memory (pdf). Ch. 3.1
Nov. 25 - 29 Thanksgiving Recess -- Enjoy!
Week 14 (Dec. 1,3) Buffer Overflow Attacks (pdf). Hands-on (pdf).
Buffer Bomb Lab (pdf). Progress Report
The Internet Worm
Week 15 (Dec. 10)
Thursday, Dec 17 Final Exam (1:30 pm -- 4:00 pm)

Student Port Numbers

    Port # Student
    2000Baumer, Craig
    2001Breznicky, John W.
    2002Bruno, Nicholas
    2003Camise, Timothy R.
    2004Damara, Karen R.
    2005Dobitsch, Matthew W.
    2006Forchelli, Christopher J.
    2007Gillette, Christina L.
    2008Grebe, Thomas J.
    2009Heller, Frank R.
    2010Janeczko, Theodore J.
    2011Labarge, Jared F.
    2012Lorenzetti, Daniel J.
    2013Loth, Thomas D.
    2014McCarthy, Matthew J.
    2015Metayer, Dustin M.
    2016Mukhopadhyay, Suktika
    2017Outwater, John M.
    2018Proto, Christopher L.
    2019Rellihan, Philip N.
    2020Sampson, Kyle J.
    2021Scrimale, Daniel D.
    2022Sehgal, Aman
    2023Vallejo, Jesahel A.
    2024Young, Tyler A.

Unix material

C material

GNU Debugger Material

    Quick GDB Reference pdf
    Complete GDB Reference pdf
    Debugging with gdb html

Java material