Introduction to fundamental concepts underlying the design and

advertisement
CS350/CS311 Operating Systems
Department of Computer Science
Syllabus
Instructor:
Dr. Dennis Foreman, room Q19, Watson School (3rd floor), x74162, foreman@binghamton.edu.
Office hours: see my website for more information
Teaching Assistant:
See my website for TA/CA information
Required text (Fall 2014):
 Operating Systems, Internals & Principles, Stallings, 8th Edition, ISBN: 0-978-13-380591-8.
CAUTION: Do NOT buy the “International” edition. It is NOT the same and the homework
problems do not match.
Recommended texts (helpful, but NOT required):
o
o
Linux Kernel Programming, Beck, et al, Addison-Wesley, ISBN: 0-201-71975-4
Either of the following (or both, depending on your wallet) can be helpful:


Butenhof, Programming with POSIX Threads; Addison-Wesley
Lewis, Berg, Multithreaded Programming with Pthreads; Prentice Hall
Required software:
 Microsoft Visual Studio 2013 (available on all Windows machines in the PODS). This software is
available FREE for any student registered in a Watson school course AFTER the course drop deadline.
See my website for the link.
General Goals:
 To provide the necessary general knowledge of the fundamental concepts underlying the design and
implementation of operating systems. The concepts of mutual exclusion, processes and threads,
deadlock, processor and memory management, context switching, file systems, input/output
subsystems, protection and security issues.
Specific goals:
 Ability to describe an O/S as an abstract machine
 Ability to describe privileged & user states and how they are accessed and controlled
 Ability to use and explain the semantics and operation of semaphores, condition variables, monitors
and critical sections
 Ability to explain the consequences of various page replacement algorithms
 Ability to implement programs using processes and threads
 Ability to explain the hardware architecture requirements supporting any O/S
Both Microsoft Windows and Linux will be used for assignments.
This course is a 4-credit course, which means that in addition to the scheduled meeting times, students
are expected to do at least 9.5 hours of course-related work outside of class each week during the
semester. This includes time spent completing assigned readings, participating in lab sessions (not for
CS311), studying for tests and examinations, preparing written assignments, and other course-related
tasks.
Download