diff options
author | dzwdz | 2021-07-31 14:54:09 +0200 |
---|---|---|
committer | dzwdz | 2021-07-31 14:54:09 +0200 |
commit | e56a5a519b157f62a2236c6395b45fc2d4ac7b66 (patch) | |
tree | fdd591db1fc3affad898e4857810effafbe9e38d /src/init | |
parent | 95e33f7f9362aadd9c6169b41437ca478aa3be14 (diff) |
change the syscall naming convention; same one in kernel and userland
Diffstat (limited to 'src/init')
-rw-r--r-- | src/init/main.c | 28 | ||||
-rw-r--r-- | src/init/syscalls.c | 17 |
2 files changed, 24 insertions, 21 deletions
diff --git a/src/init/main.c b/src/init/main.c index c32ac01..5615980 100644 --- a/src/init/main.c +++ b/src/init/main.c @@ -1,28 +1,14 @@ #include <kernel/syscalls.h> -#include <stddef.h> -#include <stdint.h> - -int _syscall(int, int, int, int); - -_Noreturn void exit(const char *msg, size_t len) { - _syscall(SC_EXIT, (int)msg, len, 0); - __builtin_unreachable(); -} - -int debuglog(const char *msg, size_t len) { - return _syscall(SC_DEBUGLOG, (int)msg, len, 0); -} - int main() { - debuglog("hello from init! ", - sizeof("hello from init! ") - 1); + _syscall_debuglog("hello from init! ", + sizeof("hello from init! ") - 1); - _syscall(SC_FORK, 0, 0, 0); + _syscall_fork(); - debuglog("i got forked. ", - sizeof("i got forked. ") - 1); + _syscall_debuglog("i got forked. ", + sizeof("i got forked. ") - 1); - exit( "bye from init! ", - sizeof("bye from init! ") - 1); + _syscall_exit("bye from init! ", + sizeof("bye from init! ") - 1); } diff --git a/src/init/syscalls.c b/src/init/syscalls.c new file mode 100644 index 0000000..d0da33e --- /dev/null +++ b/src/init/syscalls.c @@ -0,0 +1,17 @@ +// this file could probably just get generated by a script +#include <kernel/syscalls.h> + +int _syscall(int, int, int, int); + +_Noreturn void _syscall_exit(const char *msg, size_t len) { + _syscall(_SYSCALL_EXIT, (int)msg, len, 0); + __builtin_unreachable(); +} + +int _syscall_fork() { + return _syscall(_SYSCALL_FORK, 0, 0, 0); +} + +int _syscall_debuglog(const char *msg, size_t len) { + return _syscall(_SYSCALL_DEBUGLOG, (int)msg, len, 0); +} |