Zircon System Calls

Life of a Fuchsia syscall

Handles

Objects

Threads

Processes

Jobs

Tasks (Thread, Process, or Job)

Profiles

Exceptions

Channels

Sockets

Stream

Fifos

Events and Event Pairs

Ports

Futexes

Virtual Memory Objects (VMOs)

Virtual Memory Address Regions (VMARs)

Userspace Pagers

Cryptographically Secure RNG

Time

Timers

Hypervisor guests

Virtual CPUs

Global system information

Debug Logging

Multi-function

System

DDK

Display drivers

Tracing

Restricted Mode (Work in progress)

Others/Work in progress

Syscall generation

The system call markdown documentation is generated from the syscall definitions in //zircon/vdso by the script //zircon/scripts/update-docs-from-fidl. This is done manually and the generated results are checked in.

The system call definitions are generated by kazoo which produces output for both the kernel and userspace in a variety of languages. This output includes C or C++ headers for both the kernel and userspace, syscall entry points, other language bindings, and so on. This tool is invoked as a part of the build, rather than checking in its output.