CSIS 460 Operating Systems

Course Description

A study of the organization and architecture of computer operating systems. The major principles of operating systems are presented, along with case studies involving actual operating systems.


Brian R. Snider
Office hours: Wood-Mar 222 (see schedule)





Students will understand:

Specific operating systems may be examined, but no particular operating system will be studied in-depth.

Course Organization

This course will include programming exercises demonstrating operating system concepts. Programming assignments will be carried out in a prescribed high-level language. Limited instruction in the use of this language will be provided. You are assumed to have previous experience with one or more high-level languages and will be expected to acquire the language skills necessary for this course with a minimum level of instruction.

The course will include regular homework and/or programming assignments. There will be no credit given for late assignments (without an excused absence)—turn in as much as you can. Unless otherwise specified, no handwritten work will be accepted.

Reading should be completed before the lecture covering the material per the provided schedule. Not all reading material will be covered in the lectures, but you will be responsible for the material on homework and exams. Quizzes over the assigned reading may be given at any time.

Collaboration and Academic Integrity

See the GFU CS/IS/Cyber policies for collaboration and discussion of collaboration and academic integrity. Most students would be surprised at how easy it is to detect collaboration or other academic integrity violations such as plagiarism in programming—please do not test us! Remember: you always have willing and legal collaborators in the faculty. We encourage you visit office hours, ask questions in class, and use the class mailing list for assistance.

Unless otherwise specified (e.g., for a group assignment or project), you are expected to do your own work. This also applies to the use of online resources (e.g., StackOverflow). Put simply: if you are representing someone else's work as your own, you are being dishonest. Any suspected incidents of academic integrity violations will be investigated and reported to the Academic Affairs Office as they arise.

Almost all of life is filled with collaboration (i.e., people working together). Yet in our academic system, we artificially limit collaboration. These limits are designed to force you to learn fundamental principles and build specific skills. It is very artificial, and you'll find that collaboration is a valuable skill in the working world. While some of you may be tempted to collaborate too much, others will collaborate too little. When appropriate, it's a good idea to make use of others—the purpose here is to learn. Be sure to make the most of this opportunity but do it earnestly and with integrity.

Online Portfolio

All students in the College of Engineering are encouraged to create and maintain an online portfolio on Portfolium to showcase their best work. Portfolium is a "cloud-based platform that empowers students with lifelong opportunities to capture, curate, and convert skills into job offers, while giving learning institutions and employers the tools they need to assess competencies and recruit talent."

Students may post portions of their coursework to Portfolium as directed by their instructor. For example, a portfolio entry might be PDF of poster or presentation content, screenshots or a video demonstration of a software or hardware project, or even an entire source code repository.

Students are encouraged to work with their faculty advisor to curate and refine their portfolios as they progress through the program. Students shall ensure that all portfolio entries are appropriate for public disclosure (i.e., they do not reveal key components of assignment solutions to current or future students).

University Resources

If you have specific physical, psychiatric, or learning disabilities and require accommodations, please contact Disability & Accessibility Services as early as possible so that your learning needs can be appropriately met. For more information, go to georgefox.edu/das or contact das@georgefox.edu).

My desire as a professor is for this course to be welcoming to, accessible to, and usable by everyone, including students who are English-language learners, have a variety of learning preferences, have disabilities, or are new to online learning systems. Be sure to let me know immediately if you encounter a required element or resource in the course that is not accessible to you. Also, let me know of changes I can make to the course so that it is more welcoming to, accessible to, or usable by students who take this course in the future.

The Academic Resource Center (ARC) on the Newberg campus provides all students with free writing consultation, academic coaching, and learning strategy review (e.g., techniques to improve reading, note-taking, study, time management). During the 2022 spring semester, the ARC is offering in-person appointments as well as virtual appointments over Zoom as needed. The ARC, located on the first floor of the Murdock Library, is open from 1:00–10:00 p.m., Monday through Thursday, and 12:00–4:00 p.m. on Friday. To schedule an appointment, go to the online schedule at arcschedule.georgefox.edu, call 503-554-2327, email the_arc@georgefox.edu, or stop by the ARC. Visit arc.georgefox.edu for information about ARC Consultants' areas of study, instructions for scheduling an appointment, learning tips, and a list of other tutoring options on campus.

Health and Safety Considerations

Please review the entirety of the university's official COVID-19 web page for the most up-to-date community guidance, including specific policies that all individuals are required to adhere to, as we attempt to return to face-to-face instruction on campus.

Please be aware of the following specific guidance for the instructional setting, subject to change at any time:

I, as one of many whom your families have entrusted with your care, will err on the side of caution, and continue to follow the latest evidence-based, peer-reviewed science—even if it is inconvenient, requires me to put the needs of others before my own just as Christ did for us, or goes beyond what others on campus are doing—and encourage you to do the same for the sake of those amongst us on campus or at home who are immunocompromised, unable to be vaccinated yet, or otherwise considered at elevated risk. Furthermore, due to my training at a world-class healthcare institution as a research-oriented member of the medical profession, I am also bound by the Declaration of Geneva.

If you feel you are unable to comply with the policies for any reason, please contact Disability & Accessibility Services (or other student services, as appropriate) as early as possible so that your learning needs can be appropriately met. I as a faculty instructor am not authorized to approve any accommodations that minimize or eliminate the established guidelines set forth by the university or rules enacted by the state, but fully support those who do receive official approval for any such accommodation.


Grading Scale

The final course grade will be based on:

Graded course activities will be posted to Canvas. Take care to read the specifications carefully and proceed as directed. Failure to pay attention to detail will often result in few to zero points being awarded on a given activity.

Grades will be updated as often as possible; you are encouraged to use the "What-If" functionality to calculate your total grade by entering hypothetical scores for various items.

Note that some graded activities in this course will be submitted via GitLab.

Tentative Schedule

Week 1 · 1/11

Introduction & History

Reading: Ch. 1.1–1.2

Week 1 · 1/13

System Concepts

Reading: Ch. 1.3–1.5

Week 2 · 1/18

System Services

Reading: Ch. 1.6

Week 2 · 1/20

System Structure

Reading: Ch. 1.7–1.12

Week 3 · 1/25


Reading: Ch. 2.1

Week 3 · 1/27


Reading: Ch. 2.2

Week 4 · 2/1

Interprocess Communication

Reading: Ch. 2.3

Week 4 · 2/3


Reading: Ch. 2.4–2.7

Week 5 · 2/8

Memory Abstraction

Reading: Ch. 3.1–3.2

Week 5 · 2/10

Virtual Memory & Paging

Reading: Ch. 3.3

Week 6 · 2/15

Page Replacement Algorithms

Reading: Ch. 3.4

Week 6 · 2/17

Paging System Issues

Reading: Ch. 3.5–3.6

Week 7 · 2/22


Reading: Ch. 3.7–3.9

Week 7 · 2/24

Midterm exam

Reading: Ch. 1–3

Week 8 · 3/1

Files & Directories

Reading: Ch. 4.1–4.2

Week 8 · 3/3

File System Implementation

Reading: Ch. 4.3

Week 9 · 3/8

File System Management

Reading: Ch. 4.4

Week 9 · 3/10

Example File Systems

Reading: Ch. 4.5–4.7; ext4; Btrfs

Week 10 · 3/15

I/O Hardware

Reading: Ch. 5.1

Week 10 · 3/17

I/O Software

Reading: Ch. 5.2–5.3

Week 11 · 3/21–3/25

Spring break — no classes

Week 12 · 3/29

Disks & Clocks

Reading: Ch. 5.4–5.5

Week 12 · 3/31

User I/O Devices & Power Management

Reading: Ch. 5.6–5.10

Week 13 · 4/5

Deadlock Detection & Recovery

Reading: Ch. 6.1–6.4

Week 13 · 4/7

Deadlock Avoidance & Prevention

Reading: Ch. 6.5–6.9

Week 14 · 4/12


Reading: Ch. 7.1–7.10

Week 14 · 4/14

Multiprocessor Systems

Reading: Ch. 8.1

Week 15 · 4/19


Reading: Ch. 9.1–9.2

Week 15 · 4/21

Case Studies

Reading: Ch. 10.1–10.2; 11.1; 11.3

Week 16 · TBD

Final exam

Reading: *

This page was last modified on 2022-04-07 at 16:35:29.

Copyright © 2015–2022 George Fox University. All rights reserved.