CSE 420
Design of Operating Systems
Spring 2025
Announcements:
- All announcements will be posted on BlackBoard and will also be immediately emailed to you.
Technology and Logistics Requirements:
- A working computer where Ubuntu Linux (24.04 LTS) installed.
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 1:00-2:00 pm & Thu 1:00-2:00 pm in-person (DC 209), or by appointment (in-person or through MS Teams).
- Office: DC 209.
TA 1: Adam Porter - adam.porter.1@louisville.edu
- Office Hours and Method: Wed 4:00-5:00 pm & Thu 4:00-5:00 pm in-person (DC 242), or by appointment (in-person or through MS Teams).
- Office: DC 242.
TA 2: Stephanie Sithu - stephanie.sithu@louisville.edu
- Office Hours and Method: Mon 1:00-2:00 pm & Tue 4:00-5: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:
Slides and Lecture Videos
Sample Exams
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: