1
CSC 452 – Principles of Operating Systems
Summer 2021
Lecture: Tuesdays and Thursdays from 1:00–2:55pm
Description of Course
Modern computer software can run without specific knowledge of the underlying components of
the physical machine. For instance, a program such as Microsoft Word can run on computers with
varying amounts of RAM and can print a document without needing to know the make and model
of the target printer. Physical resources such as memory and peripheral hardware are managed
by the computer’s Operating System software. This course examines the abstractions that an
Operating System provides to user-level software, and how to most efficiently allocate resources
between competing programs. Specifically, we will examine how to share and manage the CPU,
memory, persistent storage, I/O devices, and communications.
Description from the course catalog:
Concepts of modern operating systems; concurrent processes; process synchronization and
communication; resource allocation; kernels; deadlock; memory management; file systems
Course Prerequisites or Co-requisites
Successful completion of CSC 252 – Computer Organization, CSC 345 - Analysis of Discrete
Structures, and CSC 352 – Systems Programming & UNIX are required to enroll in CSC 452. If
you have any questions about the prerequisite material for the course, please ask at the
beginning of the term.
Instructor and Contact Information
Instructor: Jonathan Misurda
Email: jmisurda@cs.arizona.edu
Office Hours: Tuesday/Thursday: 11:00am to noon
Wednesday: 1:00pm to 3:00pm
https://arizona.zoom.us/j/248939301
Website: http://www.u.arizona.edu/~jmisurda
Teaching Assistant Email Office Hours
Yangzi Lu yangzilu@email.arizona.edu Mon, Fri 9:00AM - 10:30AM https://arizona.zoom.us/j/84060297499
CSC COVID 19 Policy:
All Summer 2021 CSC courses, whether In-Person, In-Person Flex, or Live Online, will provide
recorded lectures for students along with office hour accommodations via Zoom. Additionally,
In-Person and In-Person Flex courses will accommodate students who cannot attend class to
take midterm exams and attendance will not be factored into final grades.
Course Format and Teaching Methods
This class is scheduled to be taught in the LIVE ONLINE modality which means that you are
expected to join via Zoom during the class times whenever possible. I will be doing my best to
teach with an interactive lecture style. This means students are expected to ask and answer
2
questions during the class.
● Meeting Times: The class will meet Tuesdays and Thursdays from 1:00pm to 2:55pm via
Zoom. Our synchronous meetings will give us the opportunity to cover new material, review
previous material, and interact in a style that mimics to a reasonable level an in-person class.
We will have opportunities to do activities, ask questions, and for me to ask you questions to
engage with the material.
● Class attendance:
● If you feel sick, or may have been in contact with someone who is infectious, stay
home. Except for seeking medical care, avoid contact with others and do not travel.
● Campus Health is testing for COVID-19. Please call (520) 621-9202 before you visit in
person.
● Visit the UArizona COVID-19 page for regular updates.
Pandemic-Related Information for All Modalities
● Academic advising: If you have questions about your academic progress this semester, or
your chosen degree program, consider contacting your department’s academic advisor(s).
Your academic advisor and the Advising Resource Center can guide you toward university
resources to help you succeed. Computer Science major students are encouraged to
email advising@cs.arizona.edu for academic advising related questions.
● Life challenges: If you are experiencing unexpected barriers to your success in your
courses, please note the Dean of Students Office is a central support resource for all students
and may be helpful. The Dean of Students Office can be reached at 520-621-2057 or DOS-
deanofstudents@email.arizona.edu.
● Physical and mental-health challenges: If you are facing physical or mental health
challenges this semester, please note that Campus Health provides quality medical and
mental health care. For medical appointments, call (520-621-9202. For After Hours care, call
(520) 570-7898. For the Counseling & Psych Services (CAPS) 24/7 hotline, call (520) 621-
3334.
● Exams: Exams will be administered via D2L as “quizzes”. They will be available at normal
class time and will be open for the length of the class (75 minutes for the midterm and two
hours for the final.) If you are ill or otherwise unable to take the exams at the appointed
time, let me know prior to the exam opening. Excused absences from the exam will be
handled via a makeup exam that may vary in the questions or format from the original exam.
● Equipment and software requirements: For this class you will need daily access to the
following hardware: laptop or web-enabled device with microphone; regular access to reliable
internet signal; ability to download and run the following software: web browser and the
QEMU and VirtualBox VM software (links and instructions to be provided).
● Class Recordings:
● Lectures are recorded and posted to D2L (and automatically to Panopto). If you do not
wish to be identified by name in those recordings, please email me at the start of the
term to discuss ways to avoid this.
● For lecture recordings, students must access content in D2L only. Students may not
modify content or re-use content for any purpose other than personal educational
reasons. All recordings are subject to government and university regulations.
Therefore, students accessing unauthorized recordings or using them in a manner
inconsistent with UArizona values and educational policies are subject to suspension or
3
civil action.
Course Objectives
This course is intended to introduce the fundamental concepts that modern operating systems
use to manage the physical computer. Beyond the concepts introduced in lecture, course projects
will take one such operating system, Linux, and examine source code. Students will be asked to
implement additional features into the core of the operating system, known as the kernel.
Expected Learning Outcomes
By the end of the course, students will be able to:
Explain the fundamental challenges of resource management
Motivate and use various data structures and algorithms with which to solve those challenges
Weigh the advantages and disadvantages of the different management schemes/algorithms
Modify the Linux kernel and write userspace programs to demonstrate mastery of those
techniques
Absence and Class Participation Policy
The UA’s policy concerning Class Attendance, Participation, and Administrative Drops is available
at http://catalog.arizona.edu/policy/class-attendance-participation-and-administrative-drop
The UA policy regarding absences for any sincerely held religious belief, observance or practice
will be accommodated where reasonable: http://policy.arizona.edu/human-resources/religious-
accommodation-policy.
Absences preapproved by the UA Dean of Students (or dean’s designee) will be honored. See
https://deanofstudents.arizona.edu/absences
Course Communications
Most announcements for the course will be posted to the D2L. This is where projects and related
materials will be posted, as well as slides when we are done covering them in class.
Urgent announcements will be made by announcements via D2L and/or emailing your university
email account.
D2L will hold the zoom link and password and be used to administer quizzes and exams.
Required Textbook
While we will not be doing assigned exercises from the chapters, you should have access to this
textbook for supplementary readings throughout the term:
A. Tanenbaum and H. Bos, Modern Operating Systems (4th Edition), Pearson, 2014.
ISBN: 9780133591620
Old editions may have chapters that don’t line up, but the material is otherwise very similar.
Assignments and Examinations
Projects: There will be five out-of-class assignments given. These are to be completed in the
given time (no extensions will be given without a valid excuse. LATE WORK IS NOT
4
ACCEPTED. Contact me before the deadline for clarifications.) These are meant to be your own
work; anyone found to be collaborating will be disciplined in accordance to University
policy. Cheating means (but is not limited to): using code from previous terms, other
universities, your friends, finding it on the Internet, getting help from unapproved forums, or
outsourcing it.
We will be using Moss, a tool from Stanford to help catch unauthorized collaboration this term.
Quizzes: There will be short quizzes to make sure you are keeping up with the class material.
Exams: There will be a midterm and a final. Both will be given on D2L during class time. The
exams will be closed book/notes/internet/other people.
Final Examination
The final exam is Tuesday, August 10, 2021, during the normal class meeting time on
D2L
Final Exam Regulations https://www.registrar.arizona.edu/courses/final-examination-
regulations-and-information,
Final Exam Schedule: http://www.registrar.arizona.edu/schedules/finals.htm
Grading Scale and Policies
University policy regarding grades and grading systems is available at
http://catalog.arizona.edu/policy/grades-and-grading-system
Your grade will be based upon 2 exams, 5 projects, and quizzes (the lowest one quiz will be
dropped):
Midterm Exam 20%
Final Exam 20%
Project 1 10%
Project 2 10%
Project 3 10%
Project 4 10%
Project 5 10%
Quizzes 10%
Total 100%
Unexcused late submissions of projects are not accepted for a grade. An unexcused missed quiz
will be the lowest one and dropped. Exams may only be made up with an excused absence and
notification at least 24 hours in advance. Your grade will be computed from the points earned on
the above coursework, there will not be any extra credit.
The grading scale for the term is:
>= 89.5 >= 79.5 >= 69.5 >= 59.5 < 59.5
A B C D E
Requests for incomplete (I) or withdrawal (W) must be made in accordance with University
policies, which are available at http://catalog.arizona.edu/policy/grades-and-grading-
system#incomplete and http://catalog.arizona.edu/policy/grades-and-grading-
system#Withdrawal, respectively.
Dispute of Grade Policy: Disputes must be brought within one week of the grade being
returned.
5
Scheduled Topics/Activities
Week 1: 6/8/2021 - 6/10/2021
Readings for this week: Chapter 1
Topics:
History of OS
System Calls
Week 2: 6/15/2021 - 6/17/2021
Readings for this week: Sections 2.1-2.2, 2.4
Topics:
Processes and Threads
Scheduling
Week 3: 6/22/2021 - 6/24/2021
Readings for this week: Sections 2.3 and 2.5
Topics:
Interprocess Communication
Race conditions
Synchronization
Week 4: 6/29/2021 - 7/1/2021
Readings for this week: Chapter 6, Sections 3.1-3.2
Topics:
Deadlocks
Basic memory management
Week 5: 7/6/2021 - 7/8/2021
Readings for this week: Section 3.3
Thursday, July 8, 2021 –Midterm Exam
Topics:
Virtual Memory
Week 6: 7/13/2021 - 7/15/2021
Readings for this week: Section 3.3 (still)
Topics:
Virtual Memory (continued)
Week 7: 7/20/2021 - 7/22/2021
Readings for this week: Sections 3.4-3.6
Topics:
Page replacement
Miscellaneous memory management topics
6
Week 8: 7/27/2021 - 7/29/2021
Readings for this week: Sections 5.1-5.6
Topics:
I/O Devices
Disks and Disk arm scheduling
Week 9: 8/3/2021 – 8/5/2021
Readings for this week: Sections 4.1-4.2
Topics:
Files and Directories
File system implementation
Week 10: 8/10/2021
Readings for this week: Review
Tuesday, August 10, 2021 – Final Exam
Topics:
Review for the final exam
Department of Computer Science Code of Conduct
The Department of Computer Science is committed to providing and maintaining a supportive
educational environment for all. We strive to be welcoming and inclusive, respect privacy and
confidentiality, behave respectfully and courteously, and practice intellectual honesty. Disruptive
behaviors (such as physical or emotional harassment, dismissive attitudes, and abuse of
department resources) will not be tolerated. The complete Code of Conduct is available on our
department web site. We expect that you will adhere to this code, as well as the UA Student
Code of Conduct, while you are a member of this class.
Classroom Behavior Policy
To foster a positive learning environment, students and instructors have a shared responsibility.
We want a safe, welcoming, and inclusive environment where all of us feel comfortable with each
other and where we can challenge ourselves to succeed. To that end, our focus is on the tasks at
hand and not on extraneous activities (e.g., texting, chatting, reading a newspaper, making
phone calls, web surfing, etc.).
Students are asked to refrain from disruptive conversations with people sitting around them
during lecture. Students observed engaging in disruptive activity will be asked to cease this
behavior. Those who continue to disrupt the class will be asked to leave lecture or discussion and
may be reported to the Dean of Students.
Threatening Behavior Policy
The UA Threatening Behavior by Students Policy prohibits threats of physical harm to any
member of the University community, including to oneself. See
http://policy.arizona.edu/education-and-student-affairs/threatening-behavior-students.
Accessibility and Accommodations
The Disability Resources Offices provides guidelines regarding accessibility and accommodations:
http://drc.arizona.edu/instructors/syllabus-statement.
7
Code of Academic Integrity
Students are encouraged to share intellectual views and discuss freely the principles and
applications of course materials. However, graded work/exercises must be the product of
independent effort unless otherwise instructed. Students are expected to adhere to the UA Code
of Academic Integrity as described in the UA General Catalog. See
http://deanofstudents.arizona.edu/academic-integrity/students/academic-integrity.
Selling class notes and/or other course materials to other students or to a third party for resale is
not permitted without the instructor’s express written consent. Violations to this and other course
rules are subject to the Code of Academic Integrity and may result in course sanctions.
Additionally, students who use D2L or UA e-mail to sell or buy these copyrighted materials are
subject to Code of Conduct Violations for misuse of student e-mail addresses. This conduct may
also constitute copyright infringement.
UA Nondiscrimination and Anti-harassment Policy
The University of Arizona is committed to creating and maintaining an environment free of
discrimination. In support of this commitment, the University prohibits discrimination, including
harassment and retaliation, based on a protected classification, including race, color, religion,
sex, national origin, age, disability, veteran status, sexual orientation, gender identity, or genetic
information. For more information, including how to report a concern, please see
http://policy.arizona.edu/human-resources/nondiscrimination-and-anti-harassment-policy
Additional Resources for Students
UA Academic policies and procedures are available at http://catalog.arizona.edu/policies
Campus Health
http://www.health.arizona.edu/
Campus Health provides quality medical and mental health care services through virtual and
in-person care.
Phone: 520-621-9202
Counseling and Psych Services (CAPS)
https://health.arizona.edu/counseling-psych-services
CAPS provides mental health care, including short-term counseling services.
Phone: 520-621-3334
The Dean of Students Office’s Student Assistance Program
http://deanofstudents.arizona.edu/student-assistance/students/student-assistance
Student Assistance helps students manage crises, life traumas, and other barriers that
impede success. The staff addresses the needs of students who experience issues related to
social adjustment, academic challenges, psychological health, physical health, victimization,
and relationship issues, through a variety of interventions, referrals, and follow up services.
Email: DOS-deanofstudents@email.arizona.edu
Phone: 520-621-7057
Survivor Advocacy Program
https://survivoradvocacy.arizona.edu/
The Survivor Advocacy Program provides confidential support and advocacy services to
student survivors of sexual and gender-based violence. The Program can also advise students
about relevant non-UA resources available within the local community for support.
Email: survivoradvocacy@email.arizona.edu
Phone: 520-621-5767
Campus Pantry
Any student who has difficulty affording groceries or accessing sufficient food to eat every day,
8
or who lacks a safe and stable place to live and believes this may affect their performance in
the course, is urged to contact the Dean of Students for support. In addition, the University of
Arizona Campus Pantry is open for students to receive supplemental groceries at no cost.
Please see their website at: campuspantry.arizona.edu for open times.
Furthermore, please notify me if you are comfortable in doing so. This will enable me to
provide any resources that I may possess.
Preferred Gender Pronoun
This course affirms people of all gender expressions and gender identities. If you prefer to be
called a different name than what is on the class roster, please let me know. Feel free to
correct instructors on your preferred gender pronoun. If you have any questions or concerns,
please do not hesitate to contact me directly in class or via email (instructor email). If you wish
to change your preferred name or pronoun in the UAccess system, please use the following
guidelines:
Preferred name: University of Arizona students may choose to identify themselves within the
University community using a preferred first name that differs from their official/legal name. A
student’s preferred name will appear instead of the person’s official/legal first name in select
University-related systems and documents, provided that the name is not being used for the
purpose of misrepresentation. Students are able to update their preferred names in UAccess.
Pronouns: Students may designate pronouns they use to identify themselves. Instructors and
staff are encouraged to use pronouns for people that they use for themselves as a sign of
respect and inclusion. Students are able to update and edit their pronouns in UAccess.
More information on updating your preferred name and pronouns is available on the Office of
the Registrar site at https://www.registrar.arizona.edu/.
Confidentiality of Student Records
http://www.registrar.arizona.edu/personal-information/family-educational-rights-and-
privacy-act-1974-ferpa?topic=ferpa
Subject to Change Statement
Information contained in the course syllabus, other than the grade and absence policy, may be
subject to change with advance notice, as deemed appropriate by the instructor.
Land Acknowledgement Statement
The University of Arizona sits on the original homelands of indigenous peoples who have
stewarded this land since time immemorial. Aligning with the university’s core value of a diverse
and inclusive community, it is an institutional responsibility to recognize and acknowledge the
people, culture, and history that make up the Wildcat community. At the institutional level, it is
important to be proactive in broadening awareness throughout campus to ensure our students
feel represented and valued.
学霸联盟