This repository contains my solutions to the programming assignments from the Operating Systems course at the Hebrew University of Jerusalem.
Throughout the course, we explored low-level systems programming, focusing on memory management, user-level threads, concurrency, virtual memory, and kernel concepts. Each exercise tackled a different aspect of modern operating systems through hands-on C++/C programming.
π View Course Syllabus (Shnaton)
| Exercise | Title | Description |
|---|---|---|
| Exercise 1 | Memory Access Latency Analysis | Investigate memory access patterns and their performance implications. |
| Exercise 2 | User-Level Threads | Implement user-level threading and understand low-level context switching. |
| Exercise 3 | Multi-Threaded Map/Reduce | Implement a MapReduce framework using user-managed threads. |
| Exercise 4 | Virtual Memory API | Build a custom virtual memory abstraction and implement its core operations. |
Contributions are welcome! If you plan to make significant changes, please open an issue first to discuss your ideas.
This project is licensed under the MIT License.