Professor: Jerry Breecher
This is a design of a basic operating system for a Z502 processor, which is a hypothetical processor architecture with a simulator provided. The project consists of two part: Part I builds necessary data structures for Process Control Block, sets Memory Mapped IO and implements multi-program scheduling. Part II implements memory/disks read and write, page translation, virtual memory support, shared memory on top of part I.