CSE 420
Design of Operating Systems
Spring 2026
Announcements:
- All announcements will be posted on BlackBoard and will also be immediately emailed to you.
Technology and Logistics Requirements:
- For projects:
- A working computer with Ubuntu Linux (24.04 LTS) installed on bare metal (preferred) or virtually.
- For exams:
- A working computer equipped with a webcam, speakers, microphone, and a stable Internet connection.
- UofL’s version of the Respondus LockDown Browser software installed on the computer. This software works only on Windows 10 or 11, macOS 10.13 or later, or Chromebook (not Ubuntu). Phones, Linux OS, and iPads are not supported. Check the Respondus website or UofL’s support page for the latest compatibility information.
- A desk located in a private room, where you can be alone by yourself and close the door.
Use of Generative AI:
- The use of Generative AI is not permitted in this course for any exam or assignment.
MS Teams:
- This course will be utilizing MS Teams to facilitate class discussion.
- Rather than emailing your questions to the course staff, please post them on MS Teams by making sure that they do not reveal your solution.
- All registered students are automatically signed up at the beginning of the semester. If you are not on MS Teams until the first class, then please let the instructor know after the class.
Instructor: Dr. Nihat Altiparmak - nihat.altiparmak@louisville.edu
- Office Hours and Method: Tue & Thu 1:00 PM - 2:00 PM in-person (DC 209), or by appointment (in-person or through MS Teams).
- Office: DC 209.
TA 1: Stephanie Sithu - stephanie.sithu@louisville.edu
- Office Hours and Method: Tue & Thu 10:00 AM - 11:00 AM in-person (DC 242), or by appointment (in-person or through MS Teams).
- Office: DC 242.
TA 2: Rinku Deuja - rinku.deuja@louisville.edu
- Office Hours and Method: Mon & Wed 12:00 PM - 1:00 PM in-person (DC 242), or by appointment (in-person or through MS Teams).
- Office: DC 242.
Please direct your grading-related questions to the TAs.
Useful Textbooks and Their Web Materials
Schedule:
Lecture Materials
Projects
- Project descriptions and necessary files are posted on BlackBoard.
- How to run Black-Box tests when provided:
- Unzip the provided BlackBoxTesting.zip file
- Copy your C file(s) inside the unzipped BlackBoxTesting folder
- Using the command prompt, change the current directory to the unzipped BlackBoxTesting folder and run the test.sh script (./test.sh)
Source Code Examples
- 3: Processes
- Fork
- POSIX Shared Memory
- System V Message Queues (See this for a tutorial on message queues.)
- A Bash Script to Clean the Unclosed Shared Memories, Message Queues, and Semaphores in the OS
- 4: Threads
- 6: Synchronization
Useful Links and Resources
Last modified on: