CSCI4500 Operating Systems (Summer 2026)
Undergraduate course, UNO, 2026
An operating system is an abstraction of computer system hardware; it manages the sharing of various hardware and software resources among the users of the computer system. The parallel history of hardware and operating system development introduces many key concepts including, for example, processor modes, direct memory access (DMA), device controllers, and virtual memory. Basic approaches to kernel organization and implementation are considered. This is often the first course in which students encounter concurrency and concurrent programs. Additional topic areas include system performance evaluation (particularly relating to processor and memory management), security, virtualization, resource allocation and scheduling, and file systems.
Administrative Information
- Instructor: Pei-Chi Huang
- Email: phuang at unomaha dot edu
- Office Hour: via Zoom by appointment
- CSCI4500: Students will learn from the recorded videos. (Location: Totally Online)
- Course Schedule
Prerequisites:
CSCI 3710 (Introduction to Digital Design and Computer Organization), CSCI 3320 (Data Structures), and MATH 1950 (Calculus I). CSCI 4350 (Computer Architecture) is recommended; open only to students in the School of Engineering and declared Computer Science minors.
Recommended Textbook
Silberschatz, Abraham, Peter B. Galvin, and Greg Gagne. Operating System Concepts, 10e Abridged Print Companion. John Wiley & Sons, 2018.
Supplemental materials
- The online book Operating Systems: Three Easy Pieces by Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau (indicated by OSTEP; this book is available for purchase at the site above if you prefer a print copy)
- Tanenbaum and Woodhull, Operating Systems: Design and Implementation (3rd edition), Prentice-Hall (2006)
Get Odin account
You need to apply for an account at Odin: IS&T Core Linux Server to finish your programs. More details are shown below: https://www.unomaha.edu/college-of-information-science-and-technology/about/odin.php. Please email to UNO IST support (Email: uno-ist-support at unomaha dot edu) if you have any questions about Odin. **Please get one asap. Don’t wait until the last-minute, always finish ahead of deadlines. **
Grading
If you have questions regarding the grading of homework, programming assignments, midterms and final, you MUST come to see the instructor WITHIN ONE WEEK after the date your homework, programming assignments, or exams have been returned to you.
Grading Type
Letter grades will be determined using the weighted average of the various items used to evaluate students. A typical grade mapping is illustrated below.
| Range | Grade |
|---|---|
| 100% to 97% | A+ |
| <97% to 94% | A |
| <94% to 90% | A- |
| <90% to 87% | B+ |
| <87% to 84% | B |
| <84% to 80% | B- |
| <80% to 77% | C+ |
| <77% to 74% | C |
| <74% to 70% | C- |
| <70% to 67% | D+ |
| <67% to 64% | D |
| <64% to 60% | D- |
| <60% to 0% | F |
Late Policy
Homework and Programming Assignments are subject to late penalty. Here is the point deduction policy: 20% deduction (late by 1 day), 40% deduction (late by 2 days), 80% deduction (late by 3 days), and no credit if late by more than three days.
Contact the instructor in case of a medical emergency, and written proof from your doctor is required. You are allowed to extend one more day after the approval.
Academic Integrity
You may discuss the homeworks and assignments with anyone and use any reference materials but provided you do not copy any other person’s work. We will follow the University Policy on Academic Integrity regarding any cheating and plagiarism. Take the time to familiarize yourself with the contents of this page, as you are responsible for its contents.
Accommodations
Reasonable accommodations are provided for students who are registered with Accessibility Services Center (ASC) and make their requests sufficiently in advance. For more information, contact ASC (Location: 104 H&K, Phone: 402.554.2872, Email: unoaccessibility@unomaha.edu
Schedule
This schedule, and the links contained in it, are subject to change during the semester. Exam dates, however, are final. Readings from additional sources are linked from the schedule. All reading assignments are required and are expected to be completed before class on the scheduled day.
| Module | Topic | Assignment (to be completed before class) | |
|---|---|---|---|
| 0 | May 26 - May 31 | [Themes] | Reading: ch.1 Homework 1 Available Program 1 Available |
| 1 | May 26 - May 31 | [Introduction to Operating Systems & History] | Reading: ch.1 Homework 1 Due (Upload to Canvas) Homework 2 Available |
| 2 | May 26 - May 31 | [Operating Systems Structure] | Reading: ch.2 |
| 3 | June 1 - June 7 | [Processes] | Reading: ch.3 & ch.4 OSTEP: Common Concurrency Problems, pages 1-11 (stop at “Deadlock Avoidance via Scheduling”) Homework 2 Due (Upload to Canvas) Program 1 Due, 11:59pm Homework 3 Available Program 2 Available |
| 4 | June 1 - June 7 | [Threads & Concurrency] | Reading: ch.5 CPU Scheduling The Multilevel Feedback Queue |
| 5 | June 8 - June 14 | [CPU Scheduling] | Reading: ch.6 OSTEP Lock (skip 28.8-28.11) Homework 3 Due (Upload to Canvas) Homework 4 Available |
| 6 | June 8 - June 14 | [Process Synchronization] | Reading: ch.7 OSTEP: Monitors Midterm Anytime, 75 mins |
| 1-6 | June 12 | Midterm | Reading: textbook, supplemental materials, and all slides Anytime, 75 mins |
| 7 | June 15 - June 21 | [Synchronization Example] | Reading: Ch.8 Program 2 Due, 11:59pm Homework 4 Due (Upload to Canvas) Homework 5 Available |
| 8 | June 15 - June 21 | [Deadlocks] | Reading: ch.9 OSTEP Address Spaces Program 3 Available |
| 9 | June 22 - June 26 | [Main Memory] | Reading: ch.10 Homework 5 Due (Upload to Canvas) |
| 10 | June 22 – June 26 | [Virtual Memory] | Reading: ch.11 Distributed Systems for Fun and Profit, by Mikito Takada, Chapter 2 Program 3 Due at 11:59pm |
| 1-10 | June 26 | Final Exam | Reading: textbook, supplemental materials, and all slides Anytime, 120 mins |
