Fall<!doctype html public "-//w3c//dtd html
4.0 transitional//en">FallFSpringSSFallF Fall 2014
CSC 1600 – Operating Systems Syllabus
Instructor |
Dr.
Mirela Damian, MSC 167A
mirela.damian@villanova.edu |
Office Hours |
T 10:00 am – 11:00 am R 10:00 am – 11:00 am |
Course Meets |
TR 11:30 am - 12:45 pm in OLDFAL 101 |
Prerequisites |
CSC
2400 or ECE 2042 |
Course Description
This course will teach the way computer systems work from the low
level device interrupts up to processes, threads, memory management, file
systems and security. One main aspect of this course will be programming
projects, which will help you gain valuable practical experience in computer
systems. We will spend some class time exploring hands-on learning, so please come
to class prepared to write code.
Student Learning
Outcomes
1. Understand the
objectives and functions of modern operating system.
2. Describe and use
techniques for achieving concurrency and synchronization.
3. Explain the workings of
a system with virtual memory management.
4. Understand security
risks and protection mechanisms for computer systems.
Resources
The
textbook for this class is
Avi Silberschatz,
Peter Baer Galvin and Greg Gagne
Operating System Concepts, 8/e
Prentice Hall, ISBN 978-0470128725
Other
course-related materials will be posted online at
http://www.csc.villanova.edu/~mdamian/csc1600/
Please make sure you check
the class page regularly.
This term we will be
using Piazza for class discussion. The system is highly catered to getting you
help fast and efficiently from classmates, the TA, and myself. Rather than
emailing questions to the teaching staff, I encourage you to post your
questions on Piazza, so that everyone can benefit from, and contribute to answers.
You can even do so anonymously. Our Piazza class page is at
https://piazza.com/villanova/fall2014/csc1600/home
Course Requirements
Tentative Grading
Procedure
The
following allocation of points is tentative and may change during the semester:
Assignments
and Quizzes: |
45% |
Tests: |
45% |
Class
Participation: |
10% |
Academic Integrity
I
encourage you to collaborate on assignments and learn from your fellow students.
However, there is a fine line between collaboration and cheating. Collaboration
means discussing problems and solution approaches with other students and independently writing your own answers;
cheating means copying solutions from someone else or giving someone else your
solutions. If you have questions about what is acceptable, please bring them to
me before submitting your work.
Cheating, plagiarism and
helping others commit these acts are all forms of academic dishonesty. The
penalty for any act of dishonesty is an ÔFÕ grade for
the course. Please consult the Code on Academic Integrity at
https://www1.villanova.edu/villanova/vpaa/studentservices/policies/integrity.html
Special Arrangements
If
anyone has a disability or other problems that warrant the need for special accommodation
to complete the course work, please contact me at your earliest convenience.
Tentative Course
Schedule
The
course schedule below is approximate and subject to change as the semester
progresses. It is the responsibility of the student to learn and adjust to
changes. Please read chapter material to be covered prior to each session.
Date |
Topic |
References |
Week 1: Aug. 26, 28 |
Overview of Operating
Systems. |
Ch. 1, 2, 13 |
Week 2: Sep. 2, 4 |
Unix
File System. Review of C. |
Ch. 10, Notes |
Week 3: Sep. 9, 11 |
Processes (states,
context switches). Process Creation and
Execution (fork, exec). |
Ch. 3 |
Week 4: Sep. 16, 18 |
||
Week 5: Sep. 23, 25 |
Introduction to
Threads. POSIX Threads. |
Ch. 4 |
Week 6: Sep. 30, Oct.
2 |
CPU Scheduling. |
Ch. 5 |
Week 7: Oct. 7, 9 |
Catching up.
|
Test 1 on Oct. 9 |
Oct. 13 – 19 |
Fall
Break – ENJOY !
|
|
Week 8: Oct. 21, 23 |
Thread Synchronization
(critical sections, semaphores). Classical synchronization problems. |
Ch. 6 |
Week 9: Oct. 28, 30 |
||
Week 10: Nov. 4, 6 |
Deadlocks. |
Ch. 7 |
Week 11: Nov. 11, 13 |
Memory Management.
Segmentation and Paging. |
Ch. 8 |
Week 12: Nov. 18, 20 |
Virtual Memory. |
Ch. 9 |
Week 13: Nov. 25 |
Test 2 |
|
Nov. 26 – 30 |
Thanksgiving Recess
– ENJOY ! |
|
Week 14: Dec. 2, 4 |
Operating System
Security. |
Ch. 15 |
Week 15: Dec. 11 |
Wrapping
up. |