diff --git a/Kernel/Userspace.cpp b/Kernel/Userspace.cpp index eee7fdde9f..944a6224ab 100644 --- a/Kernel/Userspace.cpp +++ b/Kernel/Userspace.cpp @@ -4,6 +4,14 @@ namespace Userspace { +int strlen(const char* str) +{ + int len = 0; + while (*(str++)) + ++len; + return len; +} + int open(const char* path) { return DO_SYSCALL_A2(Syscall::PosixOpen, path, strlen(path)); diff --git a/Kernel/_fs_contents b/Kernel/_fs_contents index ccb991c9bb..53da2581e1 100644 Binary files a/Kernel/_fs_contents and b/Kernel/_fs_contents differ diff --git a/Kernel/_test.cpp b/Kernel/_test.cpp new file mode 100644 index 0000000000..125020cb8c --- /dev/null +++ b/Kernel/_test.cpp @@ -0,0 +1,12 @@ +#include "Userspace.cpp" + +using namespace Userspace; + +int elf_entry() +{ + int fd = open("/Banner.txt"); + char buf[2048]; + int nread = read(fd, buf, sizeof(buf)); + buf[nread] = '\0'; + return 0; +}