Skip to content

Latest commit

 

History

History
27 lines (13 loc) · 1.27 KB

README.md

File metadata and controls

27 lines (13 loc) · 1.27 KB

WELCOME!

You just found the landing page for the UVA operating system course.

If you have taken this course, you may find materials here.

Although the 1st offering was for cs6456 (grad OS), much content will stay the same for cs4414 (undergrad OS).

Rationale

Most existing OS courses and textbooks focus on kernel designs. As new systems, such as AI engines and trusted execution environments, become part of computing infrastructures, understanding them is as important as kernels. They shall enter the OS curriculum.

Philosophy

The course's first-class goal is to give you experience on software systems. While OS knowledge (e.g. "what are page tables?") is readily available from YouTube, StackOverflow, etc., the experience (e.g. "how to tinker with page tables?") is best delivered through hands-on learning with tight feedback loops.

Overview

The core parts are a series of four projects based on real hardware (ARM64): baremetal kernel, multicore, trusted execution, and filesystem forensics. To give you an idea, check out the link above.

All projects are linked as submodules here.