This repository contains projects developed for the Operating Systems course of The Hebrew University of Jerusalem. The projects focus on key concepts of modern operating systems, including multi-threaded programming, MapReduce, and virtual memory management.
-
Multi-threaded MapReduce Framework:
- Implements a multi-threaded MapReduce framework using pthreads and atomic operations.
- Focuses on performance optimization and thread safety.
-
Virtual Memory Management:
- Simulates a virtual memory system using hierarchical page tables.
- Implements address translation, page swapping, and page fault handling.
- C/C++ for system-level programming.
- pthreads for multi-threaded operations.
- Simulated Physical Memory for virtual memory management.