week 115, streaming kernel dev right now
topic: kernel threads
continue with properly cleaning up task stacks at the end of a task lifetime, probably implementing some kind of deferred task cleanup
see ya π
youtube.com/live/eFS0hb...
Posts by Mark
week 114, streaming kernel dev right now
topic: scheduling
working more on scheduler stuff -> idle task, scheduling policies, mapping the stack, etc
see ya π
youtube.com/live/ap76Lb...
week 113, streaming kernel dev right now
topic: kernel threads
continuing with scheduling/kernel threads, working on thread exit, an idle task, and properly mapping stacks instead of using the physmap
see ya π
youtube.com/live/DM13pq...
week 112, streaming kernel dev right now
topic: scheduling
continue on scheduling, refactoring the yield path with an idea to remove the global scratch buffer. and then creating an api to allow tasks to exit
see ya π
youtube.com/live/Jtw6fD...
week 111, streaming kernel dev right now
topic: kernel threads (cooperative)
continuing with scheduler work today, will fix some interrupt-safety topics and generally continue this line of work
see ya π
youtube.com/live/VRukq7...
week 109, streaming kernel dev right now
topic: kernel threads (cooperative)
last week, we started a basic scheduler/thread implementation and got a single kernel thread running. going to work on switching between threads today
see ya π
youtube.com/live/wWDHk4...
week 104, streaming kernel dev right now
topic: x86_64 interrupts
last week we started interrupts and got the most basic divide by zero exception handler working. will continue and flesh it out with a trap frame and handling it in c++
see ya π
youtube.com/live/h6HwJD...
week 103, streaming kernel dev right now
topic: x86_64 interrupts
i'm moving on to setting up interrupts. i already did this before on JOS, but now will revisit it on 64 bit to learn how that differs, including new concepts like the IST
see ya π
youtube.com/live/vVzgOE...
week 102, streaming kernel dev right now
topic: virtual memory
last week we got the kernel running on its own page tables for the first time. will continue with fleshing out the kernel's virtual address space
see ya π
youtube.com/live/iJMQcC...
week 101, streaming kernel dev right now
topic: virtual memory
last week we got vm unmap started. might continue with this, but also might sanity check that basic mappings work within qemu. haven't done that yet, we have only used the unit tests so far
see ya π
youtube.com/live/_PH6kF...
week 100! streaming kernel dev
topic: virtual memory unmap
continuing with virtual memory, i start working on a function to unmap pages from an address space. tried using a TDD approach which worked well!
prerecorded since I'm at #39c3!
see ya π
www.youtube.com/watch?v=rqp...
week 99, streaming kernel dev right now
topic: virtual memory
last week we started implementing support for mapping memory using page tables, along with a basic unit test. will continue with this this week!
see ya π
youtube.com/live/J63PmB...
week 98, streaming kernel dev right now
topic: virtual memory
last week, we got the page table code harnessed and runnable in a unit test. still not sure that's a good idea, but will continue with implementing virtual memory
see ya π
youtube.com/live/3sWoM-...
week 97, streaming kernel dev right now
topic: virt mem/page tables
continuing with virtual memory/page tables. i'm interested to see to what extent I can make my page table code unit testable, will give this a try
see ya π
youtube.com/live/xJAo_p...
I was interviewed by @Raspberry_Pi for my dayjob embedded systems work at @Ableton!
It's about Ableton Move, which is our portable device for making music. It's powered by a Raspberry Pi Compute Module, which has been great to work with :)
Check it out:
www.youtube.com/watch?v=G85...
week 96, streaming kernel dev
topic: page tables
got started on a simple virt address class that makes it easier to extract the bits needed for page table indexing. will be useful for doing page table walks
(prerecorded since I'm away)
see ya π
youtu.be/LRZ40QCKUno...
Yes i made some!!
Long shot, but does anyone have an extra CCC ticket I could buy? Wasnβt able to get one in the open sales :/
Iβd love to organize another hobby OS dev meetup and maybe do a small kernel dev workshop for anyone interested. Could also bring some merch to sell from shop.offlinemark.com ! π
week 94, streaming kernel dev
topic: physmap
Working on some unit tests for the physmap physToVirt() and virtToPhys() functions today. Testing out LLM assisted unit test generation
(Prerecorded since I'm away)
see ya π
youtu.be/oXY1ylrW6GM
week 93, streaming kernel dev right now
topic: virtual memory
last week we finished the bitmap allocator, complete with unit tests. will continue on whatever's next, probably using that to allocate page tables and set up virtual memory
see ya π
youtube.com/live/SO7x0Z...
week 82, streaming kernel dev right now
topic: c++ STL
last week we got c++ working in the cmake build. now that we have that working, continuing today with trying out some embedded/freestanding STL options
see ya π
youtube.com/live/-ukB4U...
week 81, streaming kernel dev right now
topic: lldb, c++, STL
last week we got all the clang/llvm work ported over to cmake. will continue with using lldb instead of gdb, then moving on to c++ support (hopefully including some kind of STL to use)
see ya π
youtube.com/live/lJRi_h...
week 80, streaming kernel dev right now
topic: clang/c++ cmake
last week we got limine integrated into cmake, will continue with porting the clang/c++ support I previously worked on, into cmake
see ya π
youtube.com/live/jwvHrq...
week 66, streaming kernel dev right now
topic: networking
last week we finally got RX working and received network data into userspace. continuing with networking today and likely finish the networking lab
see ya π
youtube.com/live/7X8WKy...
week 59, streaming kernel dev right now
topic: network driver
continuing with last week's work to get the nic initialized!
see ya π
youtube.com/live/Gf6Y_Q...
week 57, streaming kernel dev right now
topic: network/NIC driver
after learning last week about qemu networking, today we're going to work on initializing the network card via PCI and accessing it via mmio
see ya π
youtube.com/live/cFfENG...
week 56, streaming kernel dev right now
topic: network driver
starting the network driver, which is the final lab of the coursework I'm following
(also, multi-streaming to twitch today for the first time)
see ya π
youtube.com/live/j4o7Km...
week 54, streaming kernel dev
topic: filesystem / process spawn
streaming some filesystem dev and debugging, then moving onto start process spawning
(prerecorded since i'm away today, back live next week - see ya π)
www.youtube.com/watch?v=E0K...
week 55, streaming kernel dev right now
topic: exec / spawn syscall
now that we have a filesystem, we can try to exec programs from disk :) working on this today
see ya π
youtube.com/live/-FeYOM...