ELIZABETHTOWN COLLEGE
COMPUTER SCIENCE DEPARTMENT
CS 422
Dr. Thomas R. Leap
Room 243, Nicarry Hall, Telephone (Office): 361-1299
Office Hours: Mon- Fri: 1:30 - 2:30
Other hours by appointment. For appointments, please leave a note on my office door indicating the time requested for the appointment.
Course Objective
The objective of this course is to give the student an understanding of the workings and theory of operating systems, the programs that control a computer system. Assignments will be made to give the student some practical experience with interfacing to an operating system.
Prerequisite
CS 121, CS 122, CS 221 (Data Structures), CS 222 (Assembly Language).
Textbook
Operating Systems, 2nd Edition, by Andrew S. Tanenbaum and Albert S. Woodhull, Printice Hall, 1992.
Attendance
Attendance of the class lectures is absolutely required. Only two unexcused cuts will be accepted without having a direct influence on the student's final grade. Generally, only absences for medical reasons will be excused.
Grading
There will be a mid-term exam and a final exam. There might be several quizzes, both surprise and announced. There will also be programming projects.
Mid-Term Exam: Date to be announced around mid-term
Final Exam:
Grades will be based on a combination of exams, quizzes, projects and class performance. These will be used to determine your understanding and mastery of the material. Approximate weights for calculating your final grade are: midterm: 33%, final exam: 34%, homework and projects: 33%. Final grades will follow the criteria given in the College catalog:
A = excellent, B = good, C = satisfactory, D = poor but acceptable and F = failing.
Programming Assignments:
Programming assignments are given as practice on the material covered and as a chance for you to demonstrate your ability without the time constraints of an exam. Programming assignments will be graded according to the following criteria:
- Neatness
- Understandability & structure
- Efficiency and simplicity
- Documentation
- Programs being correct, complete and proof of meeting these
criteria
You should note that a working program is not sufficient for a good grade.
Programs should be handed in during the class period in which they are due. Include a neat and clean listing of your program and sufficient output from trial runs to completely demonstrate that your program is correct. A program will be marked incorrect if output proving its correctness is not included. Do not include extra output that shows errors in your program that you have corrected. Fold all output to an 8x11 in. size and staple separate sheets together (staples are preferred over paper clips). Late programs may not be accepted. Grades on assignments will be lowered one letter grade for each class period that they are late if accepted at all.
NOTE - This syllabus is subject to change on notice given in class.
CS 422 Course Outline
I. Evolution and History of Operating Systems
A. Types of operating systems
B. Generations
II. Duties of an Operating System
A. Machine extension
B. Resource management
III. Operating System Models
A. Monolithic
B. Virtual
C. Layered
D. Client-Server
IV. Operating System Structure
A. Memory management
B. File systems
C. Input/Output management
V. Deadlock conditions
A. Theory
B. Semaphores
C. Critical sections
VI. Processes and process management
A. Process creation and destruction
1. Fork
2. Kill
B. Inter process communications
1. Signals
2. Pipes
3. Shared memory
VII. Queues and Queue Management
VIII. Distributed and Network Computing
A. Basic networking
B. Clustering and Network File Service (NFS)
C. X-Windows and Client Server computing
D. Remote Procedure Calls (RPC)
E. Sockets and Streams
IX. Administrative Operations
A. Account administration
B. Backups and Disk management
C. Printer management
D. Network printers