From e90b72ec3082588b296956730bd2930cf8d5d671 Mon Sep 17 00:00:00 2001 From: Richard Qin Date: Fri, 10 Jul 2026 11:31:46 +0800 Subject: refactor: promote new architecture to repository root Archive the deprecated implementation under lume-legacy, make the new kernel the default root-level build, and update repository entry points without changing kernel behavior. --- src/ulib/syscalls.c | 153 ---------------------------------------------------- 1 file changed, 153 deletions(-) delete mode 100644 src/ulib/syscalls.c (limited to 'src/ulib/syscalls.c') diff --git a/src/ulib/syscalls.c b/src/ulib/syscalls.c deleted file mode 100644 index 676bf18..0000000 --- a/src/ulib/syscalls.c +++ /dev/null @@ -1,153 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later -/* - * Copyright (C) 2026 Richard Qin - * Libc Syscall Shims - */ - -#include "common/types.h" -#include "user/user.h" - -// Define external raw syscalls from usys.S -extern int sys_openat(int dfd, const char *filename, int flags, int mode); -extern int sys_mknodat(int dfd, const char *filename, int mode, int dev); -extern int sys_mkdirat(int dfd, const char *path, int mode); -extern int sys_unlinkat(int dfd, const char *path, int flags); -extern int sys_linkat(int olddfd, const char *oldpath, int newdfd, const char *newpath, int flags); -extern int sys_chdir(const char *path); -extern int sys_dup(int oldfd); -extern int sys_fstat(int fd, void *statbuf); -extern int sys_read(int fd, void *buf, int count); -extern int sys_write(int fd, const void *buf, int count); -extern int sys_close(int fd); -extern int sys_pipe2(int pipefd[2], int flags); -extern int sys_clone(unsigned long flags, void *stack, int *ptid, void *tls, int *ctid); -extern int sys_execve(const char *path, char *const argv[], char *const envp[]); -extern int sys_wait4(int pid, int *status, int options, void *rusage); -extern int sys_exit(int status); -extern int sys_getpid(); -extern int sys_brk(int n); -extern int sys_kill(int pid, int sig); -extern int sys_nanosleep(void *req, void *rem); -extern int sys_reboot(int magic1, int magic2, int cmd, void *arg); -extern int sys_lseek(int fd, int offset, int whence); -extern void sys_putc(char c); -extern int sys_disk_test(); - -// --- POSIX Implementation --- - -int open(const char *path, int flags) -{ - return sys_openat(AT_FDCWD, path, flags, 0); -} - -int mknod(const char *path, short major, short minor) -{ - // Pack major/minor into simplified dev_t (major << 20 | minor) - int dev = (major << 20) | (minor & 0xFFFFF); - return sys_mknodat(AT_FDCWD, path, 0, dev); -} - -int mkdir(const char *path) -{ - return sys_mkdirat(AT_FDCWD, path, 0); -} - -int unlink(const char *path) -{ - return sys_unlinkat(AT_FDCWD, path, 0); -} - -int link(const char *oldpath, const char *newpath) -{ - return sys_linkat(AT_FDCWD, oldpath, AT_FDCWD, newpath, 0); -} - -int chdir(const char *path) -{ - return sys_chdir(path); -} - -int fork() -{ - return sys_clone(0, 0, 0, 0, 0); -} - -int exec(char *path, char **argv) -{ - return sys_execve(path, argv, 0); -} - -int wait(uint64 status_addr) -{ - return sys_wait4(-1, (int *)status_addr, 0, 0); -} - -int pipe(int p[]) -{ - return sys_pipe2(p, 0); -} - -int read(int fd, void *buf, int n) -{ - return sys_read(fd, buf, n); -} - -int write(int fd, const void *buf, int n) -{ - return sys_write(fd, buf, n); -} - -int close(int fd) -{ - return sys_close(fd); -} - -int fstat(int fd, void *st) -{ - return sys_fstat(fd, st); -} - -int dup(int fd) -{ - return sys_dup(fd); -} - -int getpid() -{ - return sys_getpid(); -} - -char *sbrk(int n) -{ - return (char *)(long)sys_brk(n); -} - -int kill(int pid) -{ - return sys_kill(pid, 0); -} - -int sleep(int ticks) -{ - return sys_nanosleep((void *)(long)ticks, 0); -} - -int shutdown() -{ - return sys_reboot(0, 0, 0, 0); -} - -void putc(char c) -{ - sys_putc(c); -} - -int disk_test() -{ - return sys_disk_test(); -} - -int lseek(int fd, int offset, int whence) -{ - return sys_lseek(fd, offset, whence); -} \ No newline at end of file -- cgit v1.2.3