stos: pmm: Add physical frame allocation

Signed-off-by: Chloe M. <chloe@mensia.org>
This commit is contained in:
Chloe M.
2026-06-22 06:50:36 +00:00
parent ef0588512c
commit df1719fbd0
2 changed files with 28 additions and 0 deletions
+17
View File
@@ -13,6 +13,7 @@
#include <hal/page.h>
#include <units.h>
#include <stdef.h>
#include <string.h>
#define LOAD_DELAY 128
@@ -159,6 +160,22 @@ MmLoadUpdate(VOID)
LoadIdx %= LoadMax;
}
MM_PFN
MmRequestFrame(VOID)
{
MM_PFD *Pfd;
UPTR Pma;
Pfd = MmPfdPop(&PfdList);
if (Pfd == NULL) {
return 0;
}
RtlMemSet(Pfd, 0, PAGESIZE);
Pma = VMA_TO_PMA(Pfd);
return Pma >> LOG2_PAGESIZE;
}
static VOID
MmProbeMemory(VOID)
{