#include "types.h"#include "defs.h"#include "param.h"#include "mmu.h"#include "proc.h"#include "x86.h"#include "syscall.h"Go to the source code of this file.
Functions | |
| int | fetchint (struct proc *p, uint addr, int *ip) |
| int | fetchstr (struct proc *p, uint addr, char **pp) |
| int | argint (int n, int *ip) |
| int | argptr (int n, char **pp, int size) |
| int | argstr (int n, char **pp) |
| int | sys_chdir (void) |
| int | sys_close (void) |
| int | sys_dup (void) |
| int | sys_exec (void) |
| int | sys_exit (void) |
| int | sys_fork (void) |
| int | sys_fstat (void) |
| int | sys_getpid (void) |
| int | sys_kill (void) |
| int | sys_link (void) |
| int | sys_mkdir (void) |
| int | sys_mknod (void) |
| int | sys_open (void) |
| int | sys_pipe (void) |
| int | sys_read (void) |
| int | sys_sbrk (void) |
| int | sys_sleep (void) |
| int | sys_unlink (void) |
| int | sys_wait (void) |
| int | sys_write (void) |
| void | syscall (void) |
Variables | |
| static int(* | syscalls [])(void) |
| int argint | ( | int | n, | |
| int * | ip | |||
| ) |
Definition at line 45 of file syscall.c.
References fetchint().
Referenced by argfd(), argptr(), argstr(), sys_exec(), sys_kill(), sys_mknod(), sys_open(), sys_read(), sys_sbrk(), sys_sleep(), and sys_write().
| int argptr | ( | int | n, | |
| char ** | pp, | |||
| int | size | |||
| ) |
Definition at line 54 of file syscall.c.
References argint().
Referenced by sys_fstat(), sys_pipe(), sys_read(), and sys_write().
| int argstr | ( | int | n, | |
| char ** | pp | |||
| ) |
Definition at line 71 of file syscall.c.
References argint(), and fetchstr().
Referenced by sys_chdir(), sys_exec(), sys_link(), sys_mkdir(), sys_mknod(), sys_open(), and sys_unlink().
| int sys_chdir | ( | void | ) |
Definition at line 327 of file sysfile.c.
References argstr(), ilock(), iput(), iunlock(), iunlockput(), namei(), T_DIR, and inode::type.
| int sys_close | ( | void | ) |
| int sys_dup | ( | void | ) |
| int sys_exec | ( | void | ) |
Definition at line 346 of file sysfile.c.
References argint(), argstr(), argv, exec(), fetchint(), fetchstr(), memset(), and NELEM.
| int sys_fstat | ( | void | ) |
| int sys_link | ( | void | ) |
Definition at line 110 of file sysfile.c.
References argstr(), inode::dev, dirlink(), DIRSIZ, ilock(), inode::inum, iput(), iunlock(), iunlockput(), iupdate(), name, namei(), nameiparent(), inode::nlink, T_DIR, and inode::type.
| int sys_mkdir | ( | void | ) |
| int sys_mknod | ( | void | ) |
Definition at line 310 of file sysfile.c.
References argint(), argstr(), create(), iunlockput(), inode::major, inode::minor, and T_DEV.
| int sys_open | ( | void | ) |
Definition at line 257 of file sysfile.c.
References argint(), argstr(), create(), fdalloc(), filealloc(), fileclose(), ilock(), file::ip, iunlock(), iunlockput(), namei(), O_CREATE, O_RDONLY, O_RDWR, O_WRONLY, file::off, file::readable, T_DIR, T_FILE, file::type, inode::type, and file::writable.
| int sys_pipe | ( | void | ) |
Definition at line 371 of file sysfile.c.
References argptr(), fdalloc(), fileclose(), and pipealloc().
| int sys_read | ( | void | ) |
| int sys_sbrk | ( | void | ) |
| int sys_sleep | ( | void | ) |
| int sys_unlink | ( | void | ) |
Definition at line 164 of file sysfile.c.
References argstr(), dirlookup(), DIRSIZ, ilock(), isdirempty(), iunlockput(), iupdate(), memset(), name, namecmp(), nameiparent(), inode::nlink, panic(), T_DIR, inode::type, and writei().
| int sys_write | ( | void | ) |
| void syscall | ( | void | ) |
int(* syscalls[])(void) [static] |
Initial value:
{
[SYS_chdir] sys_chdir,
[SYS_close] sys_close,
[SYS_dup] sys_dup,
[SYS_exec] sys_exec,
[SYS_exit] sys_exit,
[SYS_fork] sys_fork,
[SYS_fstat] sys_fstat,
[SYS_getpid] sys_getpid,
[SYS_kill] sys_kill,
[SYS_link] sys_link,
[SYS_mkdir] sys_mkdir,
[SYS_mknod] sys_mknod,
[SYS_open] sys_open,
[SYS_pipe] sys_pipe,
[SYS_read] sys_read,
[SYS_sbrk] sys_sbrk,
[SYS_sleep] sys_sleep,
[SYS_unlink] sys_unlink,
[SYS_wait] sys_wait,
[SYS_write] sys_write,
}
Referenced by syscall().
1.5.6