This commit is contained in:
Niklas Gollenstede
2025-10-31 22:37:36 +01:00
commit 174fe17e89
197 changed files with 79558 additions and 0 deletions

24
kernel/syscall/stub.h Normal file
View File

@@ -0,0 +1,24 @@
#pragma once
#include "types.h"
namespace Syscall {
/*! \brief Syscall IDs
* \note the syscall number must correspond to the values in the syscall stub!
*/
enum class ID : size_t {
TEST = 0,
};
} // namespace Syscall
/// \brief Syscall stub
extern "C" ssize_t sys_call(Syscall::ID id, size_t p1, size_t p2, size_t p3,
size_t p4, size_t p5);
extern "C" ssize_t sys_safe_call(Syscall::ID id, size_t p1, size_t p2,
size_t p3, size_t p4, size_t p5);
// Interrupt based syscalls
[[gnu::always_inline]] static inline ssize_t sys_test(size_t p1, size_t p2,
size_t p3, size_t p4,
size_t p5) {
return sys_call(Syscall::ID::TEST, p1, p2, p3, p4, p5);
}