corn/include/sys/physalloc.h
2024-02-04 14:19:54 -05:00

30 lines
720 B
C

#pragma once
#ifndef MEMORY_INTERNAL
#error "Do not include headers from <sys/physalloc.h>, only use <memory.h>"
#endif
/**
* Allocates a single physical page in memory
* @preturns the physical address of the page
*/
void *alloc_phys_page(void);
/**
* Allocates count physical pages in memory
* @returns the physical address of the first page
*/
void *alloc_phys_pages(int count);
/**
* Frees a single physical page in memory
* @param ptr - the physical address of the page
*/
void free_phys_page(void *ptr);
/**
* Frees count physical pages in memory
* @param ptr - the physical address of the first page
* @param count - the number of pages in the list
*/
void free_phys_pages(void *ptr, int count);