summaryrefslogtreecommitdiff
path: root/cpu/cpu-syscalls.h
diff options
context:
space:
mode:
authorkx <kx@radix-linux.su>2026-10-09 18:00:15 +0300
committerkx <kx@radix-linux.su>2026-10-09 18:00:15 +0300
commit065da3509019b15dd0e678072e6be629e5330bef (patch)
tree69c934c9e786ac048b4fbe8f4c4c5571661521f4 /cpu/cpu-syscalls.h
parentd130fe27fa753be02ed76fd9b277aa3c3d928eb9 (diff)
downloadlibmcpu-0.4.0.tar.xz
Version 0.4.00.4.0
Diffstat (limited to 'cpu/cpu-syscalls.h')
-rw-r--r--cpu/cpu-syscalls.h59
1 files changed, 59 insertions, 0 deletions
diff --git a/cpu/cpu-syscalls.h b/cpu/cpu-syscalls.h
new file mode 100644
index 0000000..636c0e7
--- /dev/null
+++ b/cpu/cpu-syscalls.h
@@ -0,0 +1,59 @@
+/***************************************************************
+ __CPU_SYSCALLS.H
+
+ This file contains CPU SYSCALL operation functions & data
+ declarations.
+
+ PART OF : CPU - library .
+
+ USAGE : Internal only .
+
+ NOTE : Include "libmcpu.h" before this FILE .
+
+ Copyright (C) 2026 by Andrew V.Kosteltsev.
+ All Rights Reserved.
+ ***************************************************************/
+
+#ifndef __CPU_SYSCALLS_H
+#define __CPU_SYSCALLS_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+typedef __mpu_uint64_t (*__cpu_syscall_handler_t)( __mpu_uint32_t sysno );
+
+extern void __cpu_fd_context_init( void );
+extern void __cpu_fd_context_free( void );
+extern void __cpu_cwd_context_init( void );
+extern void __cpu_cwd_context_free( void );
+
+extern __mpu_uint64_t __cpu_SYS_brk( __mpu_uint32_t sysno );
+extern __mpu_uint64_t __cpu_SYS_gettimeofday( __mpu_uint32_t sysno );
+extern __mpu_uint64_t __cpu_SYS_clock_getres( __mpu_uint32_t sysno );
+extern __mpu_uint64_t __cpu_SYS_clock_gettime( __mpu_uint32_t sysno );
+extern __mpu_uint64_t __cpu_SYS_nanosleep( __mpu_uint32_t sysno );
+extern __mpu_uint64_t __cpu_SYS_clock_nanosleep( __mpu_uint32_t sysno );
+extern __mpu_uint64_t __cpu_SYS_open ( __mpu_uint32_t sysno );
+extern __mpu_uint64_t __cpu_SYS_close( __mpu_uint32_t sysno );
+extern __mpu_uint64_t __cpu_SYS_dup ( __mpu_uint32_t sysno );
+extern __mpu_uint64_t __cpu_SYS_dup2 ( __mpu_uint32_t sysno );
+extern __mpu_uint64_t __cpu_SYS_read ( __mpu_uint32_t sysno );
+extern __mpu_uint64_t __cpu_SYS_write( __mpu_uint32_t sysno );
+extern __mpu_uint64_t __cpu_SYS_lseek( __mpu_uint32_t sysno );
+extern __mpu_uint64_t __cpu_SYS_chdir( __mpu_uint32_t sysno );
+extern __mpu_uint64_t __cpu_SYS_fchdir( __mpu_uint32_t sysno );
+extern __mpu_uint64_t __cpu_SYS_stat ( __mpu_uint32_t sysno );
+extern __mpu_uint64_t __cpu_SYS_fstat( __mpu_uint32_t sysno );
+extern __mpu_uint64_t __cpu_SYS_lstat( __mpu_uint32_t sysno );
+extern __mpu_uint64_t __cpu_SYS_fcntl( __mpu_uint32_t sysno );
+extern __mpu_uint64_t __cpu_SYS_pipe2( __mpu_uint32_t sysno );
+extern __mpu_uint64_t __cpu_syscall_dispatch( void );
+
+
+#ifdef __cplusplus
+} /* ... extern "C" */
+#endif
+
+#endif /* __CPU_SYSCALLS_H */