CS 325 Principles of Operating Systems

Spring 2007

 

MW 9:30-10:45, Cramer Hall 203

New Mexico Tech

 

Instructor: Dr. Xiao Qin

 Cramer Hall 231A, 505-5902 

Office hours: Wednesday 1:30-3:30pm

TA: Ashwin Tamilarasan ashwin@nmt.edu

Cramer 223, Office hours: Monday 2:00-3:30 pm


                                General Information | Announcements | Syllabus | Assignments | Lectures 


Announcements

  • Final Review.  [Posted Wednesday 5/2/2007]  

  • Study Guide for Final is available. [Posted Wednesday 5/2/2007]

  • How to create SFS volumes and mount them in OS/161 (By Nathan Goulding and Tanner Oakes.) [Posted Monday 4/23/2007]

  • Lab assignment 4 is available. (Design Document due Wednesday, April 18 at 11:59pm. Final submission due Wednesday, May 2 at 11:59pm) [Posted Sunday 4/8/2007]  

  • Lab assignment 3 is available. (Design document due Monday, 4/2 at 11:59pm; Final submission due Wednesday, 4/11 by 11:59pm) [Posted Tuesday 3/20/2007]  

  • Final submission of the Lab 2 assignment is due on 11:59pm on Friday, March 16. Please note that 10 bonus points will be awarded if you submit Lab 2 final solutions before 11:59pm on Friday, March 9. [Posted Monday 3/5/2007]

  • Midterm Review.  [Posted Wednesday 2/28/2007]  

  • Study Guide for Midterm is available. [Posted Monday 2/26/2007]

  • Lab assignment 2 is available. (Design document due Feb. 27 Tuesday at 11:59pm. Final submission due March 9, Friday at 11:59pm.) [Posted Sunday 2/18/2007]

  • Remembering Michael C. Hogan [Posted Wednesday 2/14/2007]

  • The OS Lab will be opened from 8:30am to 12:00 (From Monday to Friday) and from 1:30pm to 5:00pm on Wednesday and Friday. [Posted Tuesday 2/6/2007] 

  • Lab assignment 1 is available. (Due 11:59PM, Sunday, Feb. 18, 2007 ) [Posted Sunday 2/4/2007]  

  • Lab assignment 0 is available.  [Posted Monday 1/15/2007]

  • The webpage of CS 325 is launched. [Posted Friday 1/10/2007]

Course Information

Course Outcomes

  • Outcome 1To learn the fundamental concepts and components of operating systems

  • Outcome 2To understand the concepts of process management

  • Outcome 3To learn process synchronization, mutual exclusion, and deadlocks.

  • Outcome 4To learn the concepts of process management and virtual memory

  • Outcome 5To understand file access methods and allocation

  • Outcome 6To learn device management and interrupt handler

  • Outcome 7To demonstrate the ability to implement process synchronization mechanisms, process managers, virtual memory systems, and file systems.

Topics covered include: the concept of a process, concurrency problems, synchronization, mutual exclusion, deadlock, memory management, file systems, process scheduling, threads, and protection.  (These topics may change.) 

Laboratory projects

  • Lab Assignment 0   Starting with OS/161 (2.5 weeks)

  • Lab Assignment 1 Synchronization  (2 weeks)

  • Lab Assignment 2 Processes and System Calls (3 weeks)

  • Lab Assignment 3 Virtual Memory  (3.5 weeks)

  • Lab Assignment 4 File Systems (2.5 weeks)

Prerequisite: CS 221 and CS 222.

Estimate Curriculum Category Content (Semester hours)  

Area

Core

Advanced

Area

Core

Advanced

Algorithms

 

1

Data Structures

 

0.5

Software Design

 

1

Prog. Languages

 

 

Comp. Arch.

 

0.5

 

 

 

 


Office Hours: Dr. Qin will have office hours on Wednesday from 1:30pm to 3:30pm in his office (Cramer Hall 231A). TA will have office hours on Tuesday at 3:15-5:15pm in her office. To get the most out of office hours, it is recommended to email us in advance.


Textbooks:  

  • G. Nutt, “Operating Systems,” Addison-Wesley, 3rd Edition, ISBN: 0-201-77344-9. (Required)

  • A. Silberschatz, P. B. Galvin, and G. Gagne, “Operating System Concepts, 7th Edition” by John Wiley & Son, 2005, ISBN: 0-471-69466-5. (Optional

  • W. S. Davis and T. M. Rajkumar, “Operating Systems – A systematic View,” Addison-Wesley, 6th Edition, ISBN: 0-321-26751-6. (Optional)

  • For the C language
    • B Kernighan and D. Ritchie, The C Programming Language, 2nd ed, Prentice Hall.
    • S. Harbison and G. Steele, C: A Reference Manual, Prentice Hall.

    Resources

    OS/161 and System /161

    Other References:

    • Bar, Moshe. Linux Internals McGraw-Hill 2000.
    • Bovet & Cesati Understanding the Linux Kernel O'Reilly & Co. 2000
    • Mitchell, Oldham, Samuel & Oldham Advanced Linux ProgrammingNew Riders 2001
    • Robbins & Robbins Practical Unix ProgrammingPrentice-Hall PTR 1996
    • Stones & Matthew Beginning Linux Programming WROX Press
    • Vahalia, Uresh Unix InternalsPrentice-Hall 1996

    Usenet: comp.os.*, comp.sources.unix, comp.unix.*, comp.windows.x

    Technical Journals: CACM, Computing Surveys, JACM, TOCS, SigOPS


    Study Hints

    • Ask questions in class.
    • At the first sign of difficulty, talk to your instructor and teaching assistant.
    • Form a study group and meet regularly.
    • Construct chapter summaries noting concepts, definitions, & procedures.