diff --git a/kernel/CMakeLists.txt b/kernel/CMakeLists.txt index 7e25c039e..6b17bccc5 100644 --- a/kernel/CMakeLists.txt +++ b/kernel/CMakeLists.txt @@ -47,7 +47,6 @@ set(KERNEL_SOURCES kernel/Thread.cpp kernel/Terminal/TTY.cpp kernel/Terminal/VesaTerminalDriver.cpp - userspace/userspace.cpp icxxabi.cpp ) diff --git a/kernel/arch/i386/linker.ld b/kernel/arch/i386/linker.ld index 87d771499..141701924 100644 --- a/kernel/arch/i386/linker.ld +++ b/kernel/arch/i386/linker.ld @@ -25,13 +25,4 @@ SECTIONS } g_kernel_end = .; - - . = 0x00A00000; - - g_userspace_start = .; - .userspace BLOCK(4K) : ALIGN(4K) - { - *(.userspace) - } - g_userspace_end = .; } \ No newline at end of file diff --git a/kernel/arch/x86_64/linker.ld b/kernel/arch/x86_64/linker.ld index f20c05d45..5da5dc4d2 100644 --- a/kernel/arch/x86_64/linker.ld +++ b/kernel/arch/x86_64/linker.ld @@ -24,14 +24,4 @@ SECTIONS *(.bss) } g_kernel_end = .; - - . = 0x00A00000; - - g_userspace_start = .; - .userspace BLOCK(4K) : ALIGN(4K) - { - *(.userspace) - } - g_userspace_end = .; - } \ No newline at end of file diff --git a/kernel/kernel/kernel.cpp b/kernel/kernel/kernel.cpp index 042b60be9..0accceadc 100644 --- a/kernel/kernel/kernel.cpp +++ b/kernel/kernel/kernel.cpp @@ -99,9 +99,6 @@ namespace BAN::Formatter } -extern "C" uintptr_t g_userspace_start; -extern "C" uintptr_t g_userspace_end; - extern "C" uintptr_t g_kernel_start; extern "C" uintptr_t g_kernel_end; @@ -204,8 +201,7 @@ static void jump_userspace() { using namespace Kernel; - MMU::get().map_range((uintptr_t)&g_userspace_start, (uintptr_t)&g_userspace_end - (uintptr_t)&g_userspace_start, MMU::Flags::UserSupervisor | MMU::Flags::Present); - MMU::get().map_range((uintptr_t)&g_kernel_start, (uintptr_t)&g_kernel_end - (uintptr_t)&g_kernel_start, MMU::Flags::UserSupervisor | MMU::Flags::Present); + MMU::get().map_range((uintptr_t)&g_kernel_start, (uintptr_t)&g_kernel_end - (uintptr_t)&g_kernel_start, MMU::Flags::UserSupervisor | MMU::Flags::Present); MUST(Process::create_userspace("/bin/test"sv)); } diff --git a/kernel/userspace/userspace.cpp b/kernel/userspace/userspace.cpp deleted file mode 100644 index 8b585cee7..000000000 --- a/kernel/userspace/userspace.cpp +++ /dev/null @@ -1,20 +0,0 @@ -#include -#include - -#include - -#define USERSPACE __attribute__((section(".userspace"))) - -USERSPACE void userspace_entry() -{ - Kernel::syscall(SYS_WRITE, STDOUT_FILENO, "Hello World!", 12); - - char buffer[128]; - while (true) - { - long n_read = Kernel::syscall(SYS_READ, STDIN_FILENO, buffer, sizeof(buffer)); - Kernel::syscall(SYS_WRITE, STDOUT_FILENO, buffer, n_read); - } - - Kernel::syscall(SYS_EXIT); -}