Syllabus
COP-5611 Operating Systems Design Principles
Table of Contents
COP-5611 Operating Systems Design Principles
- Spring 2021
- Section 1
- University of Central Florida
- Prerequisite(s): COP-4600
Personnel
- Instructor: Paul Gazzillo paul.gazzillo@ucf.edu
Course Schedule
- Fridays 1:00pm-3:30pm 01/15-04/23 (inclusive)
- Final exam period: 04/30 1:00pm-3:30 (tentative)
- No class 04/16 (spring break)
Course Description
In this course, we will cover classic operating system (OS) design principles, including history, structure, abstractions (processes, virtual memory), concurrency, I/O, as well as broader and more recent areas including distributed systems, security, configuration, and persistent memory.
The course is designed to be a blend of traditional lecture-driven coverage of classic OS combined with an exploration of the academic history of OS with a discussion-based format. To this end, attendance is required (the course is fully prepared for virtual attendance). The learning outcomes are both an understanding of OS design principles as well as technical reading and writing experience.
- Each meeting will cover (i) a textbook topic and (ii) classic papers related to that history. There will be a blend of traditional lecture, class discussion, and student presentations.
- Please be sure to read the textbook chapter(s) and paper(s) before coming to lecture. All students are required to submit paper summaries the evening before lecture to give time for instructor review and grading.
- Homeworks (when assigned) are assigned on the day on of the lecture and are due the evening before the following lecture
- Each student will lead at least one class discussion during the semester.
- The final consists of a student-chosen project that they will propose around the middle of the semester and complete by the end of the semester. Students will give a final presentation in lieu of an exam on their project. Projects are individual, except in compelling cases.
Topic Schedule
# | Date | Topic | Readings Due? | Homework Assigned? |
---|---|---|---|---|
1 | 01/15 | Introduction | no | no |
2 | 01/22 | History | yes | no |
3 | 01/29 | Processes and Scheduling | yes | yes |
4 | 02/05 | Virtual Memory | yes | yes |
5 | 02/12 | Memory Allocation | yes | yes |
6 | 02/19 | Virtual Machines | yes | yes |
7 | 02/26 | Concurrency | yes | yes |
8 | 03/05 | I/O and File Systems | yes | yes |
9 | 03/12 | Distributed Systems | yes | yes |
10 | 03/19 | System Security | yes | yes |
11 | 03/26 | Information Security | yes | no |
12 | 04/02 | Software configuration | yes | no |
13 | 04/09 | Persistent memory | yes | no |
Break | 04/16 | (no class, spring break) | n/a | n/a |
14 | 04/23 | Final presentations | no | no |
Final | 04/30 | Final presentations | no | no |
Coursework
- 25% Attendance and class participation
- Attend class (we are prepared for fully virtual participation)
- Participate in class discussion
- Lead (at least) one class discussion
- Notify instructor about any excused absence ahead of time (except of course due to emergencies)
- 25% Paper readings and summaries
- Weekly readings
- Write a brief of the paper(s) per the critical reading guidelines from class
- Submit by 11:59pm Thursdays, the day before the lecture covering the paper(s)
- 25% Homework
- Weekly homework assignments and coding projects
- Submit by 11:59pm Thursdays, the day before lecture
- 25% Final project and presentation
- Propose a project by 03/19 and get instructor approval
- Complete the project by 11:59pm Friday 04/30
Grading
- The lowest grades for attendance, paper summaries, and homeworks will be dropped
- No late assignments will be accepted, since class participation depends on the assignment
- Unless otherwise notified, all coursework (assignments, projects, readings, presentations, etc) should be done individually.
- Letter grades: A >= 90%, B+ >= 87%, B >= 80%, C+ >= 77%, C >= 70%, D >= 60%, F < 60%. (minuses may be used in some cases)
Textbook
Operating Systems: Three Easy Pieces (OSTEP), a free online textbook by Remzi H. Arpaci-Dusseau, Andrea C. Arpaci-Dusseau, and Peter Reiher.
Other Useful Course Material
- Remzi Arpaci-Dusseau, Undergrad OS
- Robert Grimm, Honors OS
- Jinyang Li, Distributed Systems
- James Mickens, Operating Systems
Core Policy Statements
Unauthorized Assistance with Coursework
Receiving a work product (e.g., a homework paper or code submitted in response to an assignment) from other individuals (other students in the course, former students, tutors, etc.) is considered "Unauthorized assistance". Giving such a work product to other individuals, either willfully or through negligence, is considered "Helping another violate academic behavior standards." Copying a work product from submissions from past semesters, or copying from an online repository is considered "Plagiarism." You are allowed to discuss class materials and high level concepts related to the assignment with others. However, you must work individually when creating the work product. For programming assignments, you must design algorithms, data structures, and develop code individually. Any violation to the above is considered Academic Integrity Violation. Students found to be in violation of academic integrity will be reported to the Office of Integrity and Ethical Development, in addition to receiving a zero grade on their assignments. Following the report, The Office may conduct hearing, and if found in violation, a student may receive penalties, up to and including dismissal from the university. Unless stated explicitly as team/group assignments, students should assume that assignments are to be performed individually, or ask the instructor for explicit clarification.
Academic Integrity
The Center for Academic Integrity (CAI) defines academic integrity as a commitment, even in the face of adversity, to five fundamental values: honesty, trust, fairness, respect, and responsibility. From these values flow principles of behavior that enable academic communities to translate ideals into action.
UCF Creed: Integrity, scholarship, community, creativity, and excellence are the core values that guide our conduct, performance, and decisions.
- Integrity: I will practice and defend academic and personal honesty.
- Scholarship: I will cherish and honor learning as a fundamental purpose of my membership in the UCF community.
- Community: I will promote an open and supportive campus environment by respecting the rights and contributions of every individual.
- Creativity: I will use my talents to enrich the human experience.
- Excellence: I will strive toward the highest standards of performance in any endeavor I undertake.
The following definitions of plagiarism and misuse of sources come from the Council of Writing Program Administrators and have been adopted by UCF's Department of Writing & Rhetoric.
- Plagiarism
In an instructional setting, plagiarism occurs when a writer deliberately uses someone else's language, ideas, or other original (not common-knowledge) material without acknowledging its source. This definition applies to texts published in print or on-line, to manuscripts, and to the work of other student writers.
- Misuse of Sources
A student who attempts (even if clumsily) to identify and credit his or her source, but who misuses a specific citation format or incorrectly uses quotation marks or other forms of identifying material taken from other sources, has not plagiarized. Instead, such a student should be considered to have failed to cite and document sources appropriately.
- Responses to Academic Dishonesty, Plagiarism, or Cheating
UCF faculty members have a responsibility for your education and the value of a UCF degree, and so seek to prevent unethical behavior and when necessary respond to infringements of academic integrity. Penalties can include a failing grade in an assignment or in the course, suspension or expulsion from the university, and/or a "Z Designation" on a student's official transcript indicating academic dishonesty, where the final grade for this course will be preceded by the letter Z. For more information about the Z Designation, see here.
For more information about UCF's Rules of Conduct, see here.
- Unauthorized Use of Class Materials
There are many fraudulent websites claiming to offer study aids to students but are actually cheat sites. They encourage students to upload course materials, such as test questions, individual assignments, and examples of graded material. Such materials are the intellectual property of instructors, the university, or publishers and may not be distributed without prior authorization. Students who engage in such activity are in violation of academic conduct standards and may face penalties.
- Unauthorized Use of Class Notes
Third parties may be selling class notes from this class without my authorization. Please be aware that such class materials may contain errors, which could affect your performance or grade. Use these materials at your own risk.
- In-Class Recording Policy
Outside of the notetaking and recording services offered by Student Accessibility Services, the creation of an audio or video recording of all or part of a class for personal use is allowed only with the advance and explicit written consent of the instructor. Such recordings are only acceptable in the context of personal, private studying and notetaking and are not authorized to be shared with anyone without the separate written approval of the instructor.
Course Accessibility Statement
The University of Central Florida is committed to providing access and inclusion for all persons with disabilities. This syllabus is available in alternate formats upon request. Students with disabilities who need specific access in this course, such as accommodations, should contact the professor as soon as possible to discuss various access options. Students should also connect with Student Accessibility Services (Ferrell Commons, 7F, Room 185, sas@ucf.edu, phone (407) 823-2371). Through Student Accessibility Services, a Course Accessibility Letter may be created and sent to professors, which informs faculty of potential access and accommodations that might be reasonable.
Campus Safety Statement
Emergencies on campus are rare, but if one should arise in our class, we will all need to work together. Everyone should be aware of the surroundings and familiar with some basic safety and security concepts.
- In case of an emergency, dial 911 for assistance.
- Every UCF classroom contains an emergency procedure guide posted on a wall near the door. Please make a note of the guide's physical location and consider reviewing the online version.
- Familiarize yourself with evacuation routes from each of your classrooms and have a plan for finding safety in case of an emergency. (Insert class-specific details if appropriate)
- If there is a medical emergency during class, we may need to access a first aid kit or AED (Automated External Defibrillator). To learn where those items are located in this building, see here (click on link from menu on left). (insert class specific information if appropriate)
- To stay informed about emergency situations, sign up to receive UCF text alerts by going to my.ucf.edu and logging in. Click on "Student Self Service" located on the left side of the screen in the tool bar, scroll down to the blue "Personal Information" heading on your Student Center screen, click on "UCF Alert", fill out the information, including your e-mail address, cell phone number, and cell phone provider, click "Apply" to save the changes, and then click "OK."
- If you have a special need related to emergency situations, please speak with me during office hours.
- Consider viewing this video about how to manage an active shooter situation on campus or elsewhere.
Statement Regarding COVID-19
University-Wide Face Covering Policy for Common Spaces and Face-to-Face Classes
To protect members of our community, everyone is required to wear a facial covering inside all common spaces including classrooms. Students who choose not to wear facial coverings will be asked to leave the classroom by the instructor. If they refuse to leave the classroom or put on a facial covering, they may be considered disruptive (please see the Golden Rule for student behavior expectations). Faculty have the right to cancel class if the safety and well-being of class members are in jeopardy. Students will be responsible for the material that would have been covered in class as provided by the instructor.
Notifications in Case of Changes to Course Modality
Depending on the course of the pandemic during the semester, the university may make changes to the way classes are offered. If that happens, please look for announcements or messages in Webcourses@UCF or Knights email about changes specific to this course.
COVID-19 and Illness Notification
Students who believe they may have a COVID-19 diagnosis should contact UCF Student Health Services (407-823-2509) so proper contact tracing procedures can take place.
Students should not come to campus if they are ill, are experiencing any symptoms of COVID-19, have tested positive for COVID, or if anyone living in their residence has tested positive or is sick with COVID-19 symptoms. CDC guidance for COVID-19 symptoms is located here.
Students should contact their instructor(s) as soon as possible if they miss class for any illness reason to discuss reasonable adjustments that might need to be made. When possible, students should contact their instructor(s) before missing class.
In Case of Faculty Illness
If the instructor falls ill during the semester, there may be changes to this course, including having a backup instructor take over the course. Please look for announcements or mail in Webcourses@UCF or Knights email for any alterations to this course.
Course Accessibility and Disability COVID-19 Supplemental Statement
Accommodations may need to be added or adjusted should this course shift from an on-campus to a remote format. Students with disabilities should speak with their instructor and should contact sas@ucf.edu to discuss specific accommodations for this or other courses.