|
|
Last updated on Sep. 10, 2015
|
CSC 716: Advanced Operating System
Fall 2015
|
|
Announcements:
This course meets for 3 hours per week: two
hours of lecture and 1 regularly scheduled conference hour. Attendance
is expected for all class hours. The conference hour will be used as
supplemental independent study.
Class hours |
|
Thursday |
|
8:20pm - 10:00pm |
|
Room: 1N111 |
Office Hours: |
|
Wednesday
| |
12:20pm - 1:20pm |
|
|
Thursday |
|
1:0pm - 3:00pm |
|
|
or by special appointment |
|
|
Welcome to graduate-level
operating systems! This course will cover advanced topics in computer
operating systems with a special emphasis on distributed computing, and
the services provided by distributed operating systems and real-time
operating systems . Topics may include: multithreading, real-time
scheduling, synchronization, and concurrency; interaction of concurrent
processes; computer security; protection, remote procedure calls,
transactions, shared memory, message passing, and scalability; other
selected topics in state-of-the-art operating systems.
Prerequisite: CSC 632 or
CSC332 (undergraduate Operating Systems) or equivalent
This course assumes familiarity with basic computer organization (e.g.,
processors, memory, and I/O devices) and data structures (e.g., stacks and
hash tables). You will need to be able to program in C/C++ to perform the
assignments in the course.
Operating System Concepts by Silberschatz, Galvin, and Gagne, 9th edition.
T here are four homework assignments. Homeworks will focus on how to use/program with operating system mechanisms.
he solution to each homework may include the source code and a report showing the result. The source code must be turned in by email to yumei.huo@csi.cuny.edu.
The report can be submitted either per email or be handed in a
hard-copy at the beginning of the class. Handwritten or typed report
will be accepted. Solutions must be readable(especially
handwriting!!!), clear, concise and complete.
Homework 1:
There are two projects. The projects has two goals. The first goal
is to help you learn more about doing research in general. The second
goal is to give you the opportunity to study a particular area of OS in
greater detail. Therefore, you are expected to perform a substantial
research project; this involves selecting an problem, designing,
implementing, and evaluating a solution, and submitting your report. You can work in groups of size up to three for project 2; members of a group will receive the same grade on the project.
- For project 2, you
are strongly encouraged to select a project from my list of suggestions
(but a project of your own devising is possible given sufficient
justification). This list will be made available soon. Remember, the
best project for you is the one you feel motivated to do. I hope you
can learn a lot from this project and get a lot of fun too!
List of suggestions:
- The exams may test on material covered only in class and on material covered only in the reading assignments.
Your grade will be based approximately, as follows. These percentages are tentative and subject to change.
20% - Homeworks 15% - Projects 15% - Midterm Exam #1 15% - Midterm Exam #2 35% - Final
Class participation is essential to succeed in this course.
DO NOT USE pencils to write down your solutions
for the homework, project or exams; if you decide, however, to use a pencil
do not complain about grading.
Check the marks in a homework, project or an exam and report errors promptly. Make
sure you report such problems to the instructor within four weeks
from receipt but no later than
Dec.11, 2014 . If you believe a grade you
received is not representative of your effort talk
to the instructor.
Homework assignments are due at the start
of class on their due date. If you think you won't be present in class
on that Monday turn the homework in earlier at instructor's office or by email.
No later solutions will be taken into consideration!
The work you turn in MUST BE your own personal work, composed and written
by you. No plagiarism. Otherwise,
you will get the grade of zero for the homework or project.
DO NOT OBTAIN YOUR SOLUTION THROUGH THE INTERNET. Or you will get the grade of zero for the homework or project.
Collaboration of any kind is NOT allowed in the in-class exams (midterms, and final).
References to some classical books on operating system and c++ programming language will be posted here - these titles will be for your information only - they're not
required for the course nor they will be used in any way by the
instructor.
1. Advanced Programming in the UNIX?Environment: Second Edition, By W. Richard Stevens, Stephen A. Rago, Publisher: Addison Wesley Professional, ISBN: 0201433089
2.
The C++ Programming Language , by
Bjarne
Stroustrup
3.
Modern Operating Systems, 2nd Edition, by Andrew S. Tanenbaum, Prentice Hall. (ISBN 0-13-031358-0)
4. Operating Systems: Internals and Design Principles, fifth edition, by William Stallings, Prentice Hall, 2005, ISBN: 0-13-147954-7.
Links relevant to the course:
|
1. INFO: Interprocess Communication on Windows Platforms
2. Unix Multi-Process Programming and Inter-Process Communications (IPC)
3. Deadline Monotonic Scheduling Algorithm
Yumei Huo
| |
|