I'm trying to learn low-level development and I've been developing a bare-metal OS on the Raspberry Pi 4B. I got some of the GIC interrupts working (System Timer Interrupts and UART Interrupts). I realized that I'm only working on a single-core without a scheduler. I want to try to learn how to make a second core spin and maybe get a simple scheduler to work.
I'm confused on where to start.
I saw that people warn of cache coherency with multiple cores running. How do you handle this and memory synchronization?
Here's a link to my working repo if you want to see my code. If you do have the time, please review it. Thank you! https://github.com/alstonliu730/bare-metal-learning
I'm confused on where to start.
I saw that people warn of cache coherency with multiple cores running. How do you handle this and memory synchronization?
Here's a link to my working repo if you want to see my code. If you do have the time, please review it. Thank you! https://github.com/alstonliu730/bare-metal-learning
Statistics: Posted by aliu3912 — Fri Nov 21, 2025 7:46 pm — Replies 0 — Views 25