Home/MIT OpenCourseWare/Operating System Engineering (6.828)
MIT · on MIT OpenCourseWare

Operating System Engineering (6.828)

4.9(2,800)·380K enrolled
Advanced 50 hours English None CertificateFREE

About this course

MIT 6.828 is the operating systems course where students actually build one — implementing a Unix-like kernel called JOS in C, handling processes and scheduling, memory management and virtual memory, file systems, and network device drivers. Frans Kaashoek and Robert Morris teach it with the depth expected of MIT systems researchers.

This is the course for developers who want to understand what happens below the operating system abstraction — how Linux actually manages memory, what a system call does under the hood, and how file systems are structured. It's relevant for systems programmers, security researchers, embedded engineers, and anyone who wants to stop treating the OS as a black box.

What you'll learn

Implement process creation, scheduling, and context switching in C
Build virtual memory management with page tables
Implement a file system with persistence and crash recovery
Understand device driver architecture and interrupt handling
Debug low-level systems code using GDB and kernel debugging techniques

This course includes

50h
On-demand video
Yes
Mobile access
English
Language
Comparison · LBS

Compare alternatives for Operating System Engineering (6.828)

Same topic, different options. We surface the trade-offs others hide so you can pick the course that actually fits your time, budget, and goals.
MIT OpenCourseWare4.9(2,800)
Operating System Engineering (6.828)
Price
Free
Completely free, openly licensed — no certificate
Duration
50 hrs
Level
Advanced
Certificate
Coursera4.9(22,000)
Algorithms Specialization
Price
Paid
Subscription-based, free to audit
Duration
200 hrs
Level
Intermediate
Certificate
Specialization Certificate
edX4.9(18,000)
CS50's Introduction to Computer Science
Price
Free
Audit free · $199 cert
Duration
100 hrs
Level
Beginner
Certificate
Verified
Microsoft Learn4.8(4,100)
Azure Fundamentals (AZ-900) Learning Path
Price
Free
Completely free, official Microsoft content
Duration
10 hrs
Level
Beginner
Certificate
Prices & availability can change — confirm on the provider's site. We're not affiliated with any single provider.

Instructor

FK
Frans Kaashoek / Robert Morris
MIT OpenCourseWare instructor
380K+ learners6 courses4.9 instructor rating

Taught by Frans Kaashoek and Robert Morris, MIT EECS faculty who are also developers of the xv6 educational OS and recognized systems researchers.

Requirements

  • Strong C programming skills; comfort with x86 assembly helpful

Who this course is for

  • Systems programmers who want OS internals depth
  • Security researchers who need to understand kernel attack surfaces
  • CS students who want MIT-level systems implementation experience

About this provider

MO
MIT OpenCourseWare
MIT OpenCourseWare — free, openly licensed course materials from MIT's actual courses, including lecture notes, problem sets, and exams. No certificate.
Visit MIT OpenCourseWare

Frequently asked questions

Yes — it's genuinely one of the hardest courses MIT offers undergraduates. Most application developers don't need this depth. It's for those who specifically want OS internals expertise.
No — MIT OCW provides the lectures and lab materials freely with no credential.
Free
to audit
Enroll now