62 lines
1.1 KiB
Markdown
62 lines
1.1 KiB
Markdown
## Name
|
|
|
|
syscall - test a system call
|
|
|
|
## Synopsis
|
|
|
|
```**sh
|
|
$ syscall [-o] [-l] [-h] <syscall-name> <args...> [buf==BUFSIZ buffer]`
|
|
```
|
|
|
|
## Description
|
|
|
|
The `syscall` utility can be used to invoke a system call with the given arguments.
|
|
|
|
## Options
|
|
|
|
* `-o`: Output the contents of the buffer argument specified as buf to stdout.
|
|
* `-l`: Print a space separated list of all the Serenity system calls and exit. Note that not all the system calls can be invoked using this tool.
|
|
* `-h`: Print a help message and exit.
|
|
|
|
## Examples
|
|
|
|
Write a string to standard output:
|
|
|
|
```sh
|
|
$ syscall write 1 hello 5
|
|
```
|
|
|
|
Read a string from the standard input into a buffer and output the buffer contents to stdout:
|
|
|
|
```sh
|
|
$ syscall -o read 0 buf 3
|
|
```
|
|
|
|
Get the pid of the current running process:
|
|
|
|
```sh
|
|
$ syscall getpid
|
|
```
|
|
|
|
Sleep for 3 seconds:
|
|
|
|
```sh
|
|
$ syscall sleep 3
|
|
```
|
|
|
|
Create a directory:
|
|
|
|
```sh
|
|
$ syscall mkdir my-dir 0755
|
|
```
|
|
|
|
Exit the program with status 2:
|
|
|
|
```sh
|
|
$ syscall exit 2
|
|
```
|
|
|
|
## History
|
|
|
|
This is a direct port of a utility with the same name originated from the Plan 9 operating system.
|
|
|