[PATCH v2 10/10] Documentation: um: document nommu UML

Hajime Tazaki thehajime at gmail.com
Thu Jul 23 23:53:55 PDT 2026


On Fri, 24 Jul 2026 15:49:08 +0900,
Johannes Berg wrote:
> 
> On Fri, 2026-07-24 at 15:20 +0900, Hajime Tazaki wrote:
> > > UML models this with
> > > +a **userspace runner** - an ordinary uml-userspace stub host process, started
> > > +exactly like an MMU userspace process, but with the whole of "physical" memory
> > > +(the physmem file) mapped into it at the kernel's addresses:
> > > +
> > > +- The runner ``exec()``'s the stub just like the MMU case.  The only extra step
> > > +  is that, once it is up, the kernel maps the entire physmem file into it in one
> > > +  go, at the same addresses the kernel uses.
> > > +- Because NOMMU never remaps, that single mapping is all a runner ever needs:
> > 
> > I was actually not sure what you mean here: "NOMMU never remaps".
> > could you care to elaborate ?
> > the subsequent parts are clear to me.
> 
> Yeah maybe, that's a bit cryptic. I mean, we have an MMU-less base
> kernel, so there's never any request to remap for anything, so
> 
> > > +  there is no per-mm host process, no TLB sync and no ``mmap()`` of individual
> > > +  page-table entries into a child.  Userspace code and data - placed in memory
> > > +  by the loader - are directly executable and accessible.
> 
> the original mapping that we make into that process is left alone
> forever. The map machinery in the stub is used only exactly once.

make sense to me, thanks.

> > For the alpine packages, I'll contact the distribution once this UML
> > is upstreamed.  And update this part with more proper information
> > rather than my personal repository.
> 
> Sure. It seemed far simpler to point to it than to try to have
> instructions on how to build it (I didn't even try), and I'm assuming
> you don't plan to remove it :)

I will keep this image location but using version number will easily
outdate while it's useful to present a snapshot for users.

-- Hajime





More information about the linux-um mailing list