---
name: "sysarch"
section: "2"
platform: "freebsd"
package: "base"
version: "16.0-CURRENT-20261027-61c70dc16a79"
release: "FreeBSD 16.0-CURRENT (2026-10-27)"
platforms: ["linux", "freebsd"]
url: "https://new.carta.tech/sysarch"
---

# sysarch(2)

architecture-dependent system call

## NAME

**sysarch** – architecture-dependent system call

## LIBRARY

Standard C Library (libc, -lc)

## SYNOPSIS

**#include \<machine/sysarch.h\>**

*int*\

**sysarch**(*int number*, *void \*args*);

## DESCRIPTION

The **sysarch**() system call performs the architecture-dependent function specified by *number* with the arguments specified by the *args* pointer. The *args* argument is a pointer to a structure defining the actual arguments of the function. Symbolic constants and argument structures for the architecture-dependent functions can be found in the header file ⟨machine/sysarch.h⟩.

The **sysarch**() system call should never be called directly by user programs. Instead, they should access its functions using the architecture-dependent library.

## RETURN VALUES

See the manual pages for specific architecture-dependent system calls for information about their return values.

## SEE ALSO

[i386\_get\_ioperm(2)](/i386_get_ioperm/2.md), [i386\_get\_ldt(2)](/i386_get_ldt/2.md), [i386\_vm86(2)](/i386_vm86/2.md), [sysarch.x86(2)](/sysarch.x86/2.md)

## HISTORY

This manual page was taken from NetBSD.
