void
pmm_mark_chunk_occupied(pid_t owner,
- uint32_t start_ppn,
+ u32_t start_ppn,
size_t page_count,
pp_attr_t attr)
{
// 我们跳过位于0x0的页。我们不希望空指针是指向一个有效的内存空间。
#define LOOKUP_START 1
-size_t pg_lookup_ptr;
+volatile size_t pg_lookup_ptr;
void
pmm_init(uintptr_t mem_upper_lim)
{
(void*)owner; // TODO: do smth with owner
- uint32_t ppn = (uintptr_t)page >> 12;
+ u32_t ppn = (uintptr_t)page >> 12;
if (ppn >= PM_BMP_MAX_SIZE) {
return 0;
struct pp_struct*
pmm_query(void* pa)
{
- uint32_t ppn = (uintptr_t)pa >> 12;
+ u32_t ppn = (uintptr_t)pa >> 12;
if (ppn >= PM_BMP_MAX_SIZE) {
return NULL;