I’ve always been a fan of extremely small Linux installs. Back when I first started using computers, I didn’t have access to great hardware. In the early 2000s I was using Pentium133 and eventually a Pentium III based system and I remember running floppy Linux (live boot off a floppy disk) and DSL (damn small Linux) in attempts to maximize the performance of the hardware I had.
Running Linux on a tiny ESP32 board just blows my mind!
Does Linux no longer require an MMU to work? Or do the recent ESP32 boards implement some kind of IOMMU?
This article says it works with a risc-v vm of some kind to implement an mmu.
The article OP linked uses this code which doesn’t seem to implement an emulator, though?
Afaik you can’t run a full OS so I’m not sure what OP is talking about.
I remember seeing one post of someone running Linux on an ESP32 by writing a RISC-V emulator and then using that to set up a Linux virtual machine. As usual when it comes to running Linux through forbidden black magic, it’s using a project by Fabrice Bellard. It’s super slow and practically useless, but it works.
There’s μClinux which is an old fork that does run on devices without an MMU, but that’s stuck on kernel 2.6 I believe.
For all intents and purposes, FreeRTOS is a full operating system, though.
just started using a pine time watch, freeRTOS and its derivatives are awesome.