CSC346 - Operating Systems

Spring 2003, Section 70, 6:30-9:00 Tu, Curtis 112

Course Description

Development of systems programming; operating system concepts including multiprogramming, time-sharing, concurrency, synchronization and deadlock problems, virtual memory management, file systems and resource-sharing.

Prerequisites

CSC134, officially. However, students who have received a grade of B or better in CSC133 would be well-equipped to take this course without having CSC134.

Course Objectives

Textbook

Nutt, G., Operating Systems, A Modern Perspective, 2ed. Lab update, Addison Wesley, 2002. ISBN: 0-201-74196-2.

Assessment Overview

Grades for this course will be based on the following assessment items with weights as follows:

Assessment Details

Assignments

Assignments for the course will consist of written and/or lab-based components. Written assignment components will consist of exercises from the textbook or similar problems. Lab-based assignment components will involve programming in C++ on both the Windows and Linux operating system platforms. All facilities needed to complete the lab-based components are available in on-campus computer labs, and some facilities may be available over the Internet.

The assignments require the student to explore operating systems concepts in further theoretical depth, and beyond the theoretical aspects in a hands-on environment when lab-based.

Tests

Tests will be written and will consist of short-answer questions, problems, and essays. On test dates, the second half of class will be allocated for the testing period.

Through tests, the students shows competence in operating systems terminology, underlying operating systems principles, and how those principles apply in specific situations.

Final Exam

The format for the final exam will be the same as that of the tests, but longer. The final exam is comprehensive.

Date Topic
1/14
1/21
Course Intro
Ch. 1; Introduction
Ch. 2; Using the Operating System
Ch. 3; Operating System Organization
1/28 Ch. 4; Computer Organization
2/4 Ch. 5; Device Management
2/11 Ch. 6; Process Management
2/18 Test 1
2/18
2/25
Ch. 7; Scheduling
3/11 Ch. 8; Basic Synchronization Principles
3/18 Ch. 9; High-level Synchronization
Ch. 10; Deadlock
3/25 Ch. 11; Memory Management
4/1 Test 2
4/1
4/8
Ch. 12; Virtual Memory
4/15 Ch. 13; File Management
4/29 Ch. 14; Protection and Security
Ch. 16; Remote Files
TBA Final Exam

Assignments

No. Assigned Due
1 1/21 2/4
2 2/11 2/25
3 2/25 3/18
4 3/18 3/25
5 4/1 4/8
6 4/15 4/29