Operating Systems

CMPU-334 Section 01

Vassar College, Spring, 2022

Syllabus & Course Wiki

Welcome to the main section of our course wiki. Use this as a starting point to access the weekly course schedule, lectures, labs, resources, etc. etc. etc.

Contact Information

Class sessions

Text

Grades:

Course Description:

Operating systems manage the resources of a computer. In this course, you will learn about the theory behind how operating systems manage resources and the implementation of operating systems. Topics that are covered are processes and threads, context switching, synchronization, scheduling, deadlock, linking, dynamic memory allocation, dynamic address translation, virtual memory, demand paging, storage devices, disk management/file systems and virtual machines (including the Java Virtual Machine). == Computing Environment == We will mostly use Linux as our exemplar operating system and we will use the Linux command line interface to perform most of our work. As someone who has worked on the Transaction Processing Facility for many years, I will also talk about some of the inner workings of this operating system & the associated z/Architecture upon which it is based.

Class attendance

Class attendance is required. I will take attendance regularly. If you are unable to attend a class or lab session, please let me know as soon as possible; a simple email will suffice. Even if you happen to miss a class session, you are still responsible for all of the information given in class, no matter the form in which it is given.

Consult this wiki and classmates to find out about any administrative/academic/other information you may have missed.

Use of electronic devices in class

Homework/Programming Assignments will require the use of a computer. Students may elect to use the computers provided by the College or their own if they so prefer.

Even when not required, students may elect to use computers or other electronic devices for class-related purposes such as note taking.

The use of electronic devices for non-class related purposes is prohibited. Also, devices (phones) must be in silent mode at all times so as to not disturb the class.

Homework projects

Homework projects shall be used to consolidate and expand upon concepts introduced in class. They will consist of C/C++/Java/Linux programming assignments.

You can expect a total of 4 programming assignments and there may be more than that. Expect that each project will be of increasing size and complexity. I may choose to assign an additional final project. The contribution of each homework assignment to the final grade will be proportional to its size and complexity.

Policy on collaboration and academic integrity

All homework assignments/projects, and exams should be completed by each student by themselves.

Please do not cheat. If you haven't done so, please take the time to read our [[https://www.cs.vassar.edu/integrity|Integrity Policy]]. As a matter of school policy, instructors must report all suspected incidents of cheating to their department chair. That is very painful for everyone involved. So if in doubt, talk to me before seeking any help from another source.

Certainly, general discussions of approaches and techniques are allowed.

Useful student resources

Accessibility and educational opportunity

Academic accommodations are available for students registered with the Office for Accessibility and Educational Opportunity. Students in need of ADA/504 accommodations should schedule an appointment with the professor early in the semester to arrange for said accommodations.

Learning environment

Vassar College is committed to providing a safe and respectful learning environment for all students. An environment free of all forms of discrimination and harassment, including sexual assault, domestic violence, dating violence, and stalking. Vassar College has staff members trained to support students in navigating campus life, accessing health and counseling services, providing academic and housing accommodations, helping with legal protective orders, and more:

Acknowledgements

I would like to thank Professor Jason Waterman for his help in setting the parameters for this course and for use of his presentation materials.