This directory contains the C++ projects I created for the labs within the NYU Operating Systems classes. Each lab folder contains an assignment to simiulate some portion of a unix operating system using C++.
Each of these assignments and the included lab descriptions were created by NYU Professor Hubertus Franke.
This lab simulated the creation of a linker to link relative memory locations of multiple modules into a single executable. linker.cpp
contains the C++ code and lab1-linker-spring20.pdf
explains the assignment in detail.
This lab simulated an operating system's thread/process scheduler using an array of different scheduling schemes. scheduler.cpp
contains the C++ code and lab2-sched-spring20.pdf
explains the assignment in detail.
This lab simulated an operating system's virtual memory management unit. mmu.cpp
contains the C++ code and lab3-mmu-spring20.pdf
explains the assignment in detail.
This lab simulated an operating system's IO scheduler of reading blocks from a disk. iosched.cpp
contains the C++ code and lab4-iosched-spring20.pdf
explains the assignment in detail.