Kernel: Add PageTable stub to progress linking

This commit is contained in:
Bananymous 2024-03-22 15:13:33 +02:00
parent fe17958b9f
commit 1ab2722850
2 changed files with 145 additions and 0 deletions

View File

@ -124,6 +124,7 @@ elseif("${BANAN_ARCH}" STREQUAL "i386")
set(KERNEL_SOURCES
${KERNEL_SOURCES}
arch/i386/boot.S
arch/i386/PageTable.cpp
arch/i386/SpinLock.S
arch/i386/Syscall.S
arch/i386/Thread.S

View File

@ -0,0 +1,144 @@
#include <kernel/Memory/PageTable.h>
#include <kernel/Lock/SpinLock.h>
namespace Kernel
{
RecursiveSpinLock PageTable::s_fast_page_lock;
void PageTable::initialize()
{
ASSERT_NOT_REACHED();
}
PageTable& PageTable::kernel()
{
ASSERT_NOT_REACHED();
}
bool PageTable::is_valid_pointer(uintptr_t)
{
ASSERT_NOT_REACHED();
}
BAN::ErrorOr<PageTable*> PageTable::create_userspace()
{
ASSERT_NOT_REACHED();
}
PageTable::~PageTable()
{
ASSERT_NOT_REACHED();
}
void PageTable::unmap_page(vaddr_t)
{
ASSERT_NOT_REACHED();
}
void PageTable::unmap_range(vaddr_t, size_t)
{
ASSERT_NOT_REACHED();
}
void PageTable::map_range_at(paddr_t, vaddr_t, size_t, flags_t)
{
ASSERT_NOT_REACHED();
}
void PageTable::map_page_at(paddr_t, vaddr_t, flags_t)
{
ASSERT_NOT_REACHED();
}
paddr_t PageTable::physical_address_of(vaddr_t) const
{
ASSERT_NOT_REACHED();
}
PageTable::flags_t PageTable::get_page_flags(vaddr_t) const
{
ASSERT_NOT_REACHED();
}
bool PageTable::is_page_free(vaddr_t) const
{
ASSERT_NOT_REACHED();
}
bool PageTable::is_range_free(vaddr_t, size_t) const
{
ASSERT_NOT_REACHED();
}
bool PageTable::reserve_page(vaddr_t, bool)
{
ASSERT_NOT_REACHED();
}
bool PageTable::reserve_range(vaddr_t, size_t, bool)
{
ASSERT_NOT_REACHED();
}
vaddr_t PageTable::reserve_free_page(vaddr_t, vaddr_t)
{
ASSERT_NOT_REACHED();
}
vaddr_t PageTable::reserve_free_contiguous_pages(size_t, vaddr_t, vaddr_t)
{
ASSERT_NOT_REACHED();
}
void PageTable::load()
{
ASSERT_NOT_REACHED();
}
void PageTable::initial_load()
{
ASSERT_NOT_REACHED();
}
void PageTable::debug_dump()
{
ASSERT_NOT_REACHED();
}
uint64_t PageTable::get_page_data(vaddr_t) const
{
ASSERT_NOT_REACHED();
}
void PageTable::initialize_kernel()
{
ASSERT_NOT_REACHED();
}
void PageTable::map_kernel_memory()
{
ASSERT_NOT_REACHED();
}
void PageTable::prepare_fast_page()
{
ASSERT_NOT_REACHED();
}
void PageTable::invalidate(vaddr_t)
{
ASSERT_NOT_REACHED();
}
void PageTable::map_fast_page(paddr_t)
{
ASSERT_NOT_REACHED();
}
void PageTable::unmap_fast_page()
{
ASSERT_NOT_REACHED();
}
}