git: 9front

ref: 3d0e38de431f43d5482f95131f402021a5af95c9
dir: /sys/man/1/syscall/

View raw version
.TH SYSCALL 1 
.SH NAME
syscall \- test a system call
.SH SYNOPSIS
.B syscall
[
.B -osx
]
.I entry
[
.I arg ...
]
.SH DESCRIPTION
.I Syscall
invokes the system call
.I entry
with the given arguments.
(Some functions, such as
.I write
and
.IR read (2),
although not strictly system calls, are valid
.IR entries .)
It prints the return value and the error string, if there was an error.
An argument is either an integer constant as in C (its value is passed),
a string (its address is passed),
or the literal
.B buf
(a pointer to a 1MB buffer is passed).
.PP
If
.B -o
is given, the contents of the 1MB buffer are printed as a zero-terminated string
after the system call is done.
The
.B -x
and
.B -s
options are similar, but
.B -x
formats the data as hexadecimal bytes, while
.B -s
interprets the data as a
.IR stat (5)
message and formats it similar to the style of
.B ls
.B -lqm
(see
.IR ls (1)),
with extra detail about the modify and access times.
.SH EXAMPLES
Write a string to standard output:
.IP
.EX
syscall write 1 hello 5
.EE
.PP
Print information about the file connected to standard input:
.IP
.EX
syscall -s fstat 0 buf 1024
.EE
.SH SOURCE
.B /sys/src/cmd/syscall
.SH "SEE ALSO"
Section 2 of this manual.
.SH DIAGNOSTICS
If
.I entry
is not known to
.IR syscall ,
the exit status is
.LR unknown .
If the system call succeeds, the exit status is null;
otherwise the exit status is the string that
.IR errstr (2)
returns.