CS 471: Computer Operating Systems

Spring 2001

Course Syllabus

Course Information:

History and evolution of operating systems.  Process and processor management.  Primary and auxiliary storage management.  Performance evaluation, security, distributed systems.  Case studies of modern operating systems.  

Objective:

Students completing this course are expected to be able to:

Textbook

W. Stallings, "Operating Systems, Internals and Design Principles, 3rd Edition",  Prentice Hall, 1998

Class

Computer Science students. Sunday, Tuesday 3:30 – 5:00 

 

Instructor:

Dr.Badie Sartawi, sartawi@science.alquds.edu

Office:  Virtual and  by appointment.

Communication: A class mailing list cs471@science.alquds.edu will be created for announcements and distribution of notes, assignments, etc.

 

 

Grading

40% quizzes, project, and term paper, 15% 1st hour exam, 15% 2nd hour exam, 30% Final (The final will be all-inclusive).

 

Discussion, Programming Project, and Term Paper

There will be several readings and problem solving homework, possible programming project and a term paper over the course of the semester, each contributing equal % of your final grade. On each homework assignment, only a subset of the problems may be graded.

 

 The best way to learn the material is by solving problems. You are encouraged to work in groups of two or three; the best way to understand the subtleties of the homework problems is to argue about the answers. Each of you should look at all the problems independently, and not just divide the problems up each time. Don't be a leech and let your partners do all the work; unless you learn how to solve problems, I promise that you will get burned on the exams and thus for your final grade.

 

For the written portion of the homework, only one solution should be turned in, with the partners alternating who writes it up. The scribe for each assignment must label themselves as such. Unless announced otherwise in class, any solution to a part of a homework problem that takes more than one side of a sheet of paper will not be graded. This is to save you the ordeal of trying to impress with volume instead of quality.

 

Some homeworks will have a problem that requires a program to be coded. These programs must be written individually; you may not share source code even within your group. The programming portion of the assignment must be e-mailed to me before the class in which the homework is due.

 

I understand that everyone gets into a time bind now and then, and that accidents and troubles befall even the most dedicated student. Thus every student will get one free extension on a homework for up to a week without a late penalty. You do not have to ask for this - just write that you are using your free extension when you turn it in. Don't waste this extension or feel obligated to use it, since you will get a very dirty look if try to get another one even with a good excuse.

 

Re-grades: Requests for re-grading can go in either direction; I'm often quite generous when I first grade something, so please be sure that I did make a mistake before you submit your request. On the other hand, I'll always be willing to explain to you how to do any problems that you have trouble with. All requests for re-grades must come within one week of the return of the graded item. Thereafter, no requests will be considered, so be sure to pick up your returned homeworks and exams on time.

 

 

Grading

Your numeric grade shall be determined by your scores on the homeworks and exams as described above.  Beyond the grade you receive on your homeworks and exams, several other factors can affect your final grade.

 

Extra Credit: Throughout the course, you will have a variety of opportunities to receive extra credit points: homeworks will have difficult questions labeled as extra credit, exams will contain extra questions on special topics that I cover in class, and in general I reserve the right to reward particularly clever answers with extra credit points. Extra credit is not required, and I will construct the grade curve ignoring extra-credit points. Once grades are assigned, I will consider the extra credit to boost grades up one rank. If your grade is borderline, its always good to have some extra credit to sway my decision to your advantage.

 

 

Participation

Simply put, those who participate frequently in class provide me with another source of information as to how well they are learning the material, and how much effort they are putting into the course. I can use this information to help counterbalance a difficulty with exams or homeworks. So please, lets have an active class! Class participation will never harm your grade; always ask any questions you may have about the material.

 

 

Academic Dishonesty

Because a primary goal of the course is to teach professionalism, any academic dishonesty will be viewed as evidence that this goal has not been achieved, and will be grounds for receiving a failing grade.

 

 

Tentative Class Schedule, Fall 2000

Date

Class

Reading

Topic

 

1

Chapter 1

 Computer System Overview

 

 

Chapter 2

 Operating System Overview

 

2 - 3

 

Quiz 1

 

 

Chapter 3

 Process description and Control

 

 

Chapter 4

 Threads, SMP, and Microkernals

 

4 - 5

 

1st hour exam

 

 

Chapter 5

Concurrency: Mutual Exclusion and Synchronization

 

6

Chapter 6

Concurrency: deadlock and Starvation

 

7 - 8

 

Quiz 2

 

 

Chapter 7

Memory Management

 

 

Chapter 8

Virtual memory

 

9

 

2nd hour exam

 

10 - 11

Chapter 9

Uniprocessor Scheduling

 

 

 

Quiz 3

 

 

Chapters 10 - 15

Term Paper

 

 

10

Multiprocessor and Real-Time Scheduling

 

 

11

I/O Management and Disk Scheduling

 

 

12

File Management

 

 

13

Distributed Processing, Client/Server , and Clusters

 

 

14

Distributed Process Management

 

 

15

Computer Security

 

12 - 16

 

Presentation of Project and Term Paper

 

 



copyright © 1999 - Computer Science Department
Al-Quds University
- Jerusalem