CMSI 3510: Operating Systems
Loyola Marymount University | Fall 2025
Course Information
Instructor: Professor Julian Gonzalez
Office: Foley Annex 139
Email: Julian.Gonzalez@lmu.edu
Office Hours: By appointment
Prerequisites: CMSI 2210 and/or CMSI 284 or EECE 3140
Section:
Section 1: Pereira 127, 1:45 PM – 3:25 PM
Email is the preferred contact method. If my office door is open, feel free to stop by.
Course Description
This 4-unit course combines the modern development of Operating Systems with practical application in Rust. Topics include Concurrent and Parallel Programming, investigations of computer hardware architecture, Scheduling, Memory Management, I/O management, and other concepts relevant to the view of Kernel Systems.
This course is offered in a synchronous, lecture-based format, meeting in person. Recordings of all lectures will be uploaded to the course site for asynchronous access, typically after class. You are encouraged to ask questions at any time during lectures.
Coursework consists of programming assignments, mandatory in-class activities, as well as optional creative projects and optional midterm and final assessments for additional credit. Collaboration is encouraged, but all submitted work must be your own original work. If you work with others or use outside sources, cite them appropriately so I can accurately assess each student's understanding.
This 4-unit course requires a minimum of 12 hours of work per week, in accordance with University policy. I encourage students to work consistently in manageable segments ("chiseling") to avoid last-minute stress. Homework assignments include checkpoints to help track progress and reinforce understanding.
Learning Outcomes
Modern computing often conceals its complexity behind layers of abstraction, allowing software engineers to treat systems as if they operate by "magic." In this course, we will strip away that sense of mystery by examining the principles and mechanisms that make modern computing possible. While the breadth of operating systems cannot be fully covered in a single semester, you will develop the following core competencies:
- Model and implement concurrent systems in Rust, explain the representations of concurrency (threads, processes, and tasks), and use synchronization primitives (e.g., mutexes, semaphores, channels) to coordinate concurrent execution.
- Analyze and explain computer hardware architecture at the level relevant to OS development, including memory hierarchies, processor modes, and I/O systems.
- Design and evaluate process scheduling algorithms, understanding trade-offs between throughput, response time, and fairness.
- Implement and reason about memory management systems, including virtual memory, paging, and allocation strategies.
- Develop system-level programs in Rust that interact with OS APIs, manage resources safely, and handle errors appropriately.
- Articulate the design principles and trade-offs that shape modern operating systems, including security, performance, and abstraction.
- Apply Rust to implement low-level system components and understand its advantages in systems programming.
Required Materials
This course does not require students to purchase textbooks, subscriptions, paid web tools, or lab fees. You will need:
- A laptop/desktop with unrestricted terminal access
- Rust and an IDE (e.g., VSCode)
- Reliable internet access
All reading materials, including textbooks, articles, videos, and other media, will be available on the course site. Primary references include:
- The Rust Programming Language Book (free online at doc.rust-lang.org/book/)
- Operating Systems and Middleware: Supporting Controlled Interaction by Max Hailperin (available on course site)
Grading & Standards-Based System
This course uses a standards-based grading system. Grades are earned additively rather than averaged. You can recover points later if needed, ensuring early struggles do not lock in a lower grade.
CMSI 3510: Operating Systems
T: 240
Syllabus
00HW 0
P: 3
OHW 0
P: 1
EX S0
P: 1
Concurrent Programming
T: 80
HW 1
P: 30
HW 2
P: 30
AC 1
P: 30
Computer Hardware
T: 80
HW 3
P: 30
HW 4
P: 30
AC 2
P: 30
OHW 1
P: 20
Operating Systems
T: 80
HW 5
P: 30
HW 6
P: 30
AC 3
P: 30
OHW 2
P: 20
Final
OHW 3
P: 20
OEX S1
P: 10
OEX S2
P: 10
OEX S3
P: 10
Course Structure
The course is divided into three standards (modules), each worth 80 points (total: 240). Assignments are organized as follows:
| Standard | Assignments | Points |
|---|---|---|
| Syllabus | HW0 (3 pts), OHW0 (1 pt), EX S0 (1 pt) | 5 (bonus) |
| Concurrent Programming | HW1 (30 pts), HW2 (30 pts), AC1 (30 pts) | 80 needed |
| Computer Hardware | HW3 (30 pts), HW4 (30 pts), AC2 (30 pts), OHW1 (20 pts) | 80 needed |
| Operating Systems | HW5 (30 pts), HW6 (30 pts), AC3 (30 pts), OHW2 (20 pts) | 80 needed |
Optional exams (Final) and homework (OHW3) provide additional opportunities to recover points in earlier standards. Activities (AC) are mandatory in-class participation days.
Assignments & Policies
Homework
Each standard has a primary homework (HW) and an optional homework (OHW) targeting the previous standard. Homeworks consist of hands-on Rust programming assignments that apply course concepts. All homework, optional or otherwise, is due on Fridays.
Activities
Activities (AC) are mandatory in-class participation days that provide hands-on experience with course concepts. These are graded on attendance and participation. Dates will be announced well in advance.
Unexcused Extensions
Automatic, unexcused extensions are available: turning in a homework on Saturday results in a 5pt deduction. Turning it in on Sunday gives you the previous 5-point penalty and an additional 10-point deduction. Submitting after Sunday without an excuse results in the loss of all points.
Excused Extensions
Medical or personal emergencies can receive additional extensions with email communication requesting it.
Exams
The Final is optional. It provides focused opportunities to boost scores in prior standards. If you have reached the point total required to pass a standard (80pts), then it is optional.
Submission
Assignments and exams are submitted through Brightspace. Grades and private materials will be posted there as well.
Student Responsibilities
This section summarizes the University rules that relate to this course and our in-person classroom environment.
Academic Honesty Policy
"Loyola Marymount University is a community dedicated to academic excellence. Academic honesty in scholarship and creative work stands at the center of LMU's academic life, and is essential for true learning and creation of knowledge to take place. As a university in the Jesuit and Marymount traditions, this community expects its members to act in accordance with the highest standards of honesty and ethics at all times. Violations of academic honesty undermine the fundamental educational mission of the University and cannot be tolerated. Students are responsible for understanding the standards of academic honesty and determining how they apply to their academic work and behavior."
Academic Honesty Policy Website →Disability Support Services
"The mission of the Disability Support Services (DSS) Office at LMU is to provide equal access and opportunities for students with established disabilities. We are committed to promoting and celebrating the diversity of our students, staff, and faculty and work to eliminate systemic barriers, address individual bias, and maintain a respectful and equitable working environment."
Disability Support Services Website →LMU Expectation for Classroom Behavior
"Disruptive behavior which is persistent or significantly interferes with classroom activities may be subject to disciplinary action. A student may be referred to the Office of Student Conduct and Community Responsibility if their behavior constitutes a violation of the conduct code."
OSCCR Website →Reporting of Sexual or Interpersonal Misconduct
"Loyola Marymount University ("LMU") recognizes the significant, unacceptable and nationwide existence of Sexual and Interpersonal Misconduct on college campuses. LMU is dedicated to the prevention of such misconduct and to providing a caring, supportive and effective response when such misconduct occurs."
Misconduct Reporting Information →Communication Expectations
Official communication must occur through LMU-approved channels (student email, Department Teams/Slack, or letters on official LMU letterhead). Students are responsible for regularly checking their LMU email. Other official channels may be audited in cases of misconduct.
Emergency Preparedness
"Building a more resilient LMU is a shared responsibility among all students, faculty, and staff. Emergency Management serves as an all-encompassing tool for campus emergency information, disaster readiness events at LMU, and tips on how to prepare for and respond to various emergencies."
Emergency Preparedness Website →Student Services
As a student at LMU you have access to many services that you may not be aware of! I have linked as many as I can think of here to provide you with an easy way to find these services. You'll also find a small paragraph of the mission statement from each of these services.
(COC) Community of Care
"The mission of the Loyola Marymount University Community of Care (COC) — a collaborative case-management program — is to enhance community safety and student well-being. The Community of Care provides prevention, assessment, and intervention for and with students as they navigate the challenges that stand in their way of academic and personal success."
Learn More →LION Connect
"LionConnect is a comprehensive portal designed to empower students to take control of their academic journey to achieve their goals. By offering a personalized dashboard, seamless scheduling, and direct access to dedicated support staff, LionConnect enhances communication and collaboration between students and the Web of Support staff. This innovative approach leverages technology and real-time data to provide personalized and timely interventions, ensuring students receive the support they need to succeed."
Learn More →(EIS) Ethnic and Intercultural Services
"The mission of the department of Ethnic and Intercultural Services (EIS) is to support the intercultural learning and development of students, specifically those from historically underrepresented backgrounds at LMU. This area has played a central role to support the personal and academic success of students through programs and services focused on identity development, community building, and advocacy."
Learn More →Center for Student Collegiate Recovery
"Loyola Marymount University's Center for Student Collegiate Recovery, located on the first floor of Malone (Malone 113), provides a comfortable space and supportive community for students in recovery or seeking to create and sustain improvements in their wellness. Students will be empowered to take individual responsibility for their own health and well-being while belonging to a community of support."
Learn More →(OISS) Office for International Students and Scholars
"The Office for International Students and Scholars (OISS) serves as a resource to the University by ensuring regulatory compliance. OISS provides programs and services that support international students' and scholars' social, educational and professional success, thereby, creating an engaged global community."
Learn More →(OSCCR) Office of Student Conduct and Community Responsibility
"Loyola Marymount University's Office of Student Conduct & Community Responsibility (OSCCR) is committed to fostering an environment conducive to the pursuit of knowledge. Such an environment is based upon respect, trust, integrity and accountability. Through education and by upholding community standards detailed in the Student Conduct Code, OSCCR holds LMU students accountable for their violations and helps them grow into more responsible and community-minded persons."
Learn More →(CSA) Pam Rector Center for Service and Action
"The Pam Rector Center for Service and Action at LMU offers students and graduates a range of opportunities to volunteer their time serving those disadvantaged or oppressed. Service opportunities are available on campus, locally in the Los Angeles area, and abroad through dedicated service groups or special events."
Learn More →(SES) Student Employment Services
"Student Employment Services (SES) at LMU provides part-time employment opportunities, workshops, and services to further students' professional development and post-graduate success. More than 3,400 LMU students work in more than 5,300 positions across campus."
Learn More →(SHS) Student Health Services
"Student Health Services (SHS) remains committed to the health and safety of our campus community. We are a full-service medical office that is accredited by the Accreditation Association for Ambulatory Health Care (AAAHC). Our health care team includes physicians, nurse practitioners, registered nurses, and trained support staff."
Learn More →(SPS) Student Psychological Services
"Student Psychological Services is committed to facilitating student growth and development of the whole person by providing high quality, confidential psychological services that is social justice oriented, ethical and culturally informed, to ensure the inclusivity and safety for students."
Learn More →(ARC) Academic Resource Center
"The Academic Resource Center (ARC) provides Course Tutoring, Writing Tutoring, and Academic Coaching. Our services are designed as a complement to the curriculum with the intentions of fostering academic success."
Learn More →(ITS) Information Technology Services
"ITS enables technologically-rich learning environments, provides effective teaching and scholarship resources and maintains reliable, accessible, and integrated information systems. Information Technology Services (ITS) provides management and services in support of the University's information technology resources."
Learn More →(FERPA) Family Education Rights and Privacy Act
"FERPA stands for the Family Education Rights and Privacy Act of 1974. This law protects the privacy of student education records from kindergarten through graduate school. FERPA applies to all schools that receive funds through an applicable program of the U.S. Department of Education."
Learn More →(ASLMU) Associated Students of LMU
"ASLMU, in keeping with the Jesuit and Marymount tradition, empowers the voice of the students and actively promotes a vibrant campus life. Driven by integrity, we devote ourselves to being persons for and with others."
Learn More →Professor Julian Gonzalez (ME)
This one, surprisingly, is not an acronym! It's literally referring to me, Professor Julian Gonzalez. If this is overwhelming and you are unsure where to go or what to do, you can talk to me personally as a guide through your resources! Feel free to email me to make a private appointment with me in my office for a private space to discuss your thoughts.
However, these services are not free (you are paying for them after all!). You keep access to these services by maintaining and upholding the Lion Code, which can be found below.
Lion Code
"I am a Lion. Courageous of mind, charitable of heart, I stand in faith. I will own the actions of my mind, hand, and heart, and build the community that sustains us. The respect and support that nurtures me is born of my respect for others. The dignity of the other, the stranger, grants me dignity. The expectations of my community are my own, and I will discover how I may be more fully alive. I will join the discourse of the academy with honesty of voice and integrity of scholarship. Respecting peers, professionals, professors, and students, I will embrace the diverse perspectives, arts, and sciences to discover what it means to be human. I will shelter and support the intellectual adventures of others. In this tradition, within my community, a part of this academy, I stand in faith, prepared to learn to be one for others, ready to take up responsibility in the world."
Lion Code Website →Golden Rule: "Don't Disturb the Learning of Others."
Frequently Asked Questions
What if I miss the exam due date?â–¼
Unlike the assignments, which have an optional unexcused extension you can take for a point-loss, if you miss the due date for an exam that's just it. I made the exams purposefully straightforward and non-time consuming to avoid any scheduling issues.
Due to the University handling the assignment of Finals during the last week of the semester, does that change how exams are administered?â–¼
No, they will still be over Brightspace digitally to be taken anytime during the week. However, since I am required to be in those assigned rooms for 2 hours I will provide them as open study days for help during finals week.
Are AI tools allowed in your course?â–¼
Yes! I'd rather you know the appropriate use of a tool rather than trying to use it behind my back to disastrous results. What you shouldn't try to do is make it do all your HW. It is tempting, but I already know that AI tools perform poorly on our course material. However, AI tools are great at the comprehension of the topics! So don't ask ChatGPT to do the problem, ask it for ideas on what to do instead!
Is participation mandatory?â–¼
Nope. If you are the type of learner that performs better just listening quietly feel free to do so! However, don't ever be afraid to ask questions! We are covering hard material (Because I adapted course materials from graduate level work from many colleges like Cornell, Carnegie Mellon, Stanford, and others) so don't just "bask", ask!
Are the workload expectations the same as in other courses?â–¼
Great question! I actually want to encourage "less" work by getting you all to work sooner in small chunks. Think about my grading system, if you do well on the homework by chiseling away at it early, you will avoid more than half of all the assignments and still get an A! So it might feel like the workload is higher, but really I just want it more often and for less time.
Am I allowed to have my computer/phone out and open during class?â–¼
Yes. I'll be honest, the old system of keeping your tech out of sight so that I can monopolize your attention is pretty draconian (Old and reminiscent of Vampires). If a message that YOU think is important comes up and you feel you need to answer it, go ahead, just don't disrupt others is all. Also this is a computer science course, bit odd to have a policy against tech right?
Can I eat in class?â–¼
This is a bit of a loaded question. My big rule is not to disrupt anyone. If you can eat it without bothering those in your immediate area, then you are good to go. Foods that emit an "area of effect" so to speak are not allowed as they may be disruptive to others. I also retain the ability to stop anyone from eating at any time for the purposes of class activities or enforcing other university policies.
Can I ask for extra-credit?â–¼
While it may seem harsh, no. The course is made to provide all the opportunity necessary to succeed up front. If by the very end there is a serious issue we will work on it together, but if you are sitting at a B+ right on the edge of an A-, I will not invent work to boost your grade as it would be unfair to other students.
Am I required to show up to class?â–¼
No, you are all adult enough by now to make that decision for yourself. I'd highly recommend showing up because I constructed this class to center around the in-person experience. But I will not be docking your grade if you do not attend. The only detriment you will receive is from the awkwardness that arises from missing material.
This list is subject to expand.
This syllabus is tentative and subject to change. Updates will be communicated promptly via email.