Syllabus
Course:
CSCI-640 Operating Systems Theory
Prerequisite:
CSCI-340 Operating Systems
Instructor:
Ralph Hilzer, Retired
Units: 3
Contact Information: Since I am retired and no longer on campus, contact me only through
e-mail at rhilzer@csuchico.edu.
Web Site:
You will find the CSCI-640 link at my website http://www.ecst.csuchico.edu/~hilzer
very useful.
Office Hours: I hold no office hours, but am willing to
respond to reasonable questions via e-mail.
Text: UNIX
Systems Programming, Steven and Kay Robbins, Prentice Hall, ISBN:
0-13-042411-0.
Text Website:
http://usp.cs.utsa.edu/usp
Course Description: An in-depth study of operating systems concepts. Topics include processes, threads, virtual
memory, file systems, process synchronization, distributed
computing, protection, and network protocols.
Chapters 1 through 18 and queuing theory form the basis of the course
with other topics selected by the instructor.
Exams: Two
exams will be administered, one midterm and one final exam. The midterm covers material through chapter
11, Cracking Shells. Questions are
simple program specifications which require the writing of writing a short program
segment. A sample midterm is provided at
my web page. The final exam also
contains programming questions, similar to those on the midterm. These questions stress but are not limited to
concepts covered after the midterm. The final
also contains questions relating to queuing theory. When you are ready for an exam, send an e-mail
requesting it to the instructor.
Projects: Three projects are assigned by the
instructor. Each time you are ready for
a new project, you should request it by sending e-mail to the instructor. The projects are intended to give you systems
programming experience. I encourage you
to put a lot of thought into your projects.
A project that limps along doing only basically what the specifications
require will not necessarily earn an A grade.
I expect more in terms of error routines to keep the user out of
trouble, good modularity and documentation that makes the code easily
maintainable, logical code segments that are consistent with what is being
taught in the book. You should pour over
your projects before ever turning them in to me, seeking in advance every
practical way that your program can be improved. If I find obvious problems with your program,
your grade starts with a B and goes down from there depending on what else I
find in terms of problems. By now you
should be comfortable with programming.
If you approach them in the right way, my programs can be fun. I want them to be done well with no excuses.
Policy:
Cheating on any exam or project will at least result in failure of the course.
Grading Policy:
Midterm 30%
Projects 40%
Final Exam 30%
Total 100%