Compare commits

..

No commits in common. "a1eca479d551482a630a64efae19f12198fb1a3a" and "7e62ee66be6ff0b273db304d190920377abd076a" have entirely different histories.

4 changed files with 2 additions and 20 deletions

View File

@ -32,6 +32,4 @@ namespace MMU
Result<PageDirectory*> create_page_directory_for_userspace();
void setup_initial_page_directory();
PageDirectory* kernel_page_directory();
}

View File

@ -7,8 +7,6 @@
#pragma GCC push_options
#pragma GCC diagnostic ignored "-Wconversion"
PageDirectory* g_kernel_directory;
void PageTableEntry::set_address(u64 addr)
{
this->address = (addr >> 12);
@ -261,7 +259,6 @@ namespace MMU
void setup_initial_page_directory()
{
PageDirectory* const dir = get_page_directory();
g_kernel_directory = dir;
const u64 paddr = (u64)dir;
PageTableEntry& recursive_entry = dir->entries[rindex];
recursive_entry.read_write = true;
@ -269,9 +266,4 @@ namespace MMU
recursive_entry.set_address(paddr);
flush_all();
}
PageDirectory* kernel_page_directory()
{
return g_kernel_directory;
}
}

View File

@ -34,14 +34,6 @@ void Thread::init_regs_kernel()
regs.rflags = 1 << 9; // IF (Interrupt enable flag)
}
void Thread::init_regs_user()
{
memset(&regs, 0, sizeof(Registers));
regs.cs = 0x18 | 3;
regs.ss = 0x20 | 3;
regs.rflags = 1 << 9; // IF (Interrupt enable flag)
}
void Thread::set_arguments(u64 arg1, u64 arg2, u64 arg3, u64 arg4)
{
regs.rdi = arg1;

View File

@ -41,8 +41,8 @@ template <typename T> class LinkedListNode
void detach_from_list()
{
if (m_next_node) m_next_node->m_last_node = m_last_node;
if (m_last_node) m_last_node->m_next_node = m_next_node;
m_next_node->m_last_node = m_last_node;
m_last_node->m_next_node = m_next_node;
}
void append_to_list(SelfType* end_node)