summaryrefslogtreecommitdiff
path: root/kernel/usermode.c
diff options
context:
space:
mode:
authorMiguel <m.i@gmx.at>2018-09-03 00:07:20 +0200
committerMiguel <m.i@gmx.at>2018-09-03 00:07:20 +0200
commit38b1273c7e3a52ae929f36fe07e29bc68ef95102 (patch)
tree16734c1c190825159f6ca9696d9c5cfb04e89c8f /kernel/usermode.c
parentfd5a9b87e47bc072aa63fcaf5735232a37338303 (diff)
clean filenames etc
Diffstat (limited to 'kernel/usermode.c')
-rw-r--r--kernel/usermode.c45
1 files changed, 0 insertions, 45 deletions
diff --git a/kernel/usermode.c b/kernel/usermode.c
deleted file mode 100644
index ee8b9db..0000000
--- a/kernel/usermode.c
+++ /dev/null
@@ -1,45 +0,0 @@
-#include "usermode.h"
-
-#include "syscalls.h"
-#include "kmalloc.h"
-
-#include "asm/usermode.h"
-#include "asm/x86.h"
-#include "scheduler.h"
-#include "kernel.h"
-#include "fs/elf.h"
-
-#include <stddef.h>
-
-void userfunc()
-{
-
- // we need enable here again (since the pushed eflags have it disabled)!
- x86_sti();
-
- // if we are pid 0, replace ourselves with /bin/init and enter usermode
- if(task_get_current_pid()==0)
- {
- uint32_t alloc;
- uint32_t entry_global=load_elf(BIN_INIT,&alloc);
- task_set_brk(alloc);
- asm_usermode(entry_global);
- }
-
- // kernel worker thread: SLEEPER
- if(task_get_current_pid()==1)
- {
- while(1)
- {
- __asm__("hlt");
- }
- }
-
- // kernel worker thread: SYSCALL CHECKER
- if(task_get_current_pid()==2)
- {
- task_syscall_worker();
- }
-}
-
-