X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Kernel%2Fsyscalls.c;h=8790be767e6c4d365b7cd65f923408bb66ed70b2;hb=4d166a859db826e94382e6222d5aa4d14ef1d3be;hp=47200c62846d2b7cd0a62c129ff5e3239e61bee0;hpb=f119d0e5b18b7286d04fc536a94e0f96e3c51714;p=tpg%2Facess2.git diff --git a/Kernel/syscalls.c b/Kernel/syscalls.c index 47200c62..8790be76 100644 --- a/Kernel/syscalls.c +++ b/Kernel/syscalls.c @@ -65,19 +65,24 @@ void SyscallHandler(tSyscallRegs *Regs) ret = Threads_WaitTID(Regs->Arg1, (void*)Regs->Arg2); break; + // -- Get the physical address of a page case SYS_GETPHYS: ret = MM_GetPhysAddr(Regs->Arg1); break; + // -- Map an address case SYS_MAP: MM_Map(Regs->Arg1, Regs->Arg2); break; + // -- Allocate an address case SYS_ALLOCATE: ret = MM_Allocate(Regs->Arg1); break; + // -- Unmap an address case SYS_UNMAP: MM_Deallocate(Regs->Arg1); break; // -- Get Thread/Process IDs case SYS_GETTID: ret = Threads_GetTID(); break; case SYS_GETPID: ret = Threads_GetPID(); break; + // -- Get User/Group IDs case SYS_GETUID: ret = Threads_GetUID(); break; case SYS_GETGID: ret = Threads_GetGID(); break; @@ -138,6 +143,10 @@ void SyscallHandler(tSyscallRegs *Regs) case SYS_FINFO: ret = VFS_FInfo( Regs->Arg1, (void*)Regs->Arg2, Regs->Arg3 ); break; + + case SYS_READDIR: + ret = VFS_ReadDir( Regs->Arg1, (void*)Regs->Arg2 ); + break; // -- Debug case SYS_DEBUG: