Memory management in OS development

I’m not sure if this question is on-topic (and I apologize if it’s not), but I wonder how memory management can be accomplished when creating an operating system. My understanding is:

  • The OS provides the memory management.
  • Any programming language (above assembly, e.g. C) needs already managed memory (for stack frames and heap allocations).

This sounds like an oxymoron. How can a memory manager be written if the tool to write it needs a memory manager in the first place? Must it be done in assembly?

Source: c#

Leave a Reply