flaming pile of shit

This commit is contained in:
user
2026-02-17 21:05:17 +01:00
parent e1d99d5129
commit d2d9712cdd
4 changed files with 80 additions and 6 deletions

View File

@@ -16,7 +16,9 @@ enum class ID : size_t {
SEM_SIGNAL=7,
SYS_GETPID = 8,
SYS_EXIT = 9,
SYS_KILL = 10
SYS_KILL = 10,
MAP = 11,
UNMAP = 12
};
} // namespace Syscall
@@ -64,10 +66,18 @@ extern "C" ssize_t sys_safe_call(Syscall::ID id, size_t p1, size_t p2,
}
[[gnu::always_inline]] static inline void sys_exit(){
sys_call(Syscall::ID::SYS_EXIT, 0, 0, 0, 0, 0);
sys_call(Syscall::ID::SYS_EXIT, 0, 0, 0, 0, 0);
}
[[gnu::always_inline]] static inline void sys_kill(size_t pid){
sys_call(Syscall::ID::SYS_KILL, pid, 0, 0, 0, 0);
sys_call(Syscall::ID::SYS_KILL, pid, 0, 0, 0, 0);
}
[[gnu::always_inline]] static inline void* map(size_t size) {
return (void*) sys_call(Syscall::ID::MAP, size,0,0,0,0);
}
[[gnu::always_inline]] static inline int unmap(void* start, size_t size) {
return sys_call(Syscall::ID::UNMAP, (size_t) start, size,0,0,0);
}