building an OS (all streams)

Playlist of all my kernel dev streams

Curated by: offlinemark (137 videos)


Currently Playing: building my own operating system in c++ (week 112, kernel threads)

(detailed timestamps in comments) #livecoding #operatingsystem #coding welcome: https://offlinemark.com/welcome discord: https://discord.gg/P6zQBsD2ng Welcome! I’m an aspiring systems programmer. Professionally, I used to work in infosec, but now I work on music production software & hardware. I stream OS/kernel development every week for 2 hours. (I’ve done this for over 75 weeks in a row! Sundays 10a-12 ET) From February 2024 to May 2025, I streamed myself doing all the labs for MIT’s old Operating Systems Engineering course (6.828 (2018)). Through doing this, I became very familiar with JOS, which is the x86 OS used for the course. I had almost no experience with OS development when I started, although I did have much experience with programming and low level concepts. I did the coursework because I wanted to write my own OS, but felt I wasn’t ready. Now, from May 2025 to present, I’m pursuing my own learning agenda with OS development, and starting my on own OS. If this resonates with you, please subscribe and I'll see you in a stream :) 00:00:00 Start 00:04:24 Refactoring the yield function to remove naked assembly stub 00:22:40 Eliminating global scratch buffer from yield implementation 00:26:01 Removing pointer context parameter from task creation 00:35:04 Implementing kernel thread exit functionality for task cleanup 00:51:11 Adding safety mechanisms to handle tasks that fall off the end 01:02:04 Debugging task return behavior and stack pointer issues 01:45:09 Discovering fundamental scheduler flaws with vector-based indexing 01:56:21 Learning why kernels use linked lists instead of vectors 02:01:23 Converting scheduler from vector to ETL linked list implementation


Tracks in this Playlist