summaryrefslogtreecommitdiff
path: root/src/init
diff options
context:
space:
mode:
authordzwdz2021-07-31 14:54:09 +0200
committerdzwdz2021-07-31 14:54:09 +0200
commite56a5a519b157f62a2236c6395b45fc2d4ac7b66 (patch)
treefdd591db1fc3affad898e4857810effafbe9e38d /src/init
parent95e33f7f9362aadd9c6169b41437ca478aa3be14 (diff)
change the syscall naming convention; same one in kernel and userland
Diffstat (limited to 'src/init')
-rw-r--r--src/init/main.c28
-rw-r--r--src/init/syscalls.c17
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);
+}