isainfo(1) on Solnix vs Linux and the BSDs
isainfo is the illumos command at /usr/bin/isainfo that reports which instruction sets and address-space widths the running system supports. Linux and the BSDs have no command by that name in the bundle. uname -m or -p gives the nearest information, but the pages do not describe it as an instruction-set report.
The manual pages
- Solnix: isainfo(1) from
pkgs.solnix.illumos-world-man· illumos.org - Linux: uname(1) coreutils-full-9.11 (different command, similar job)
- FreeBSD: uname(1) 15.1-RELEASE (different command, similar job)
- OpenBSD: uname(1) 8.0 (different command, similar job)
- NetBSD: uname(1) 11.0 (different command, similar job)
What Solnix runs
A default Solnix system runs the illumos isainfo at /usr/bin/isainfo. No other variants are shipped. The page's SEE ALSO lists isalist(1), uname(1) and psrinfo(8). isalist(1) gives the full list of which isainfo prints a subset.
Differences
| Compared with | Topic | What differs |
|---|---|---|
| all four | no same-name command | The bundle has no isainfo page for Linux, FreeBSD, OpenBSD or NetBSD. The counterpart is uname(1), which prints system names and versions. It has no option for address-space bits, kernel instruction sets or ISA extensions. Source: Solnix isainfo(1) SYNOPSIS, OPTIONS; Linux/FreeBSD/OpenBSD/NetBSD uname(1) SYNOPSIS |
| all four | address-space width | Solnix isainfo -b prints the number of bits in the address space of the native instruction set. No uname page in the bundle documents an option that prints this. uname -m and -p print names of hardware or processor types.Source: Solnix isainfo(1) -b; Linux uname(1) -m, -p; FreeBSD uname(1) -m, -p; OpenBSD uname(1) -m, -p; NetBSD uname(1) -m, -p |
| all four | kernel instruction set | Solnix isainfo -k prints the instruction set(s) used by kernel components such as device drivers and STREAMS modules. The uname pages do not document a way to query this.Source: Solnix isainfo(1) -k; uname(1) pages for Linux, FreeBSD, OpenBSD and NetBSD |
| all four | instruction extensions | Solnix isainfo -x lists instruction extensions to the native ABI that the platform supports. None of the uname pages in the bundle documents an equivalent.Source: Solnix isainfo(1) -x; uname(1) pages for Linux, FreeBSD, OpenBSD and NetBSD |
| all four | default output | With no options, isainfo prints the names of the native instruction sets for applications, a subset of isalist(1). With no options, uname prints only the operating system name, as with -s.Source: Solnix isainfo(1) DESCRIPTION; Linux uname(1) DESCRIPTION; OpenBSD uname(1) DESCRIPTION; NetBSD uname(1) DESCRIPTION; FreeBSD uname(1) DESCRIPTION |
| all four | -v and -n meaning | On Solnix, -v adds detail to -b, -k or -n, and -n prints the native instruction set name. In uname, -v prints the OS version and -n prints the node (host) name. Do not reuse uname flags with isainfo.Source: Solnix isainfo(1) -n, -v; Linux uname(1) -n, -v; FreeBSD uname(1) -n, -v; OpenBSD uname(1) -n, -v; NetBSD uname(1) -n, -v |
| FreeBSD | -b and -k letters | FreeBSD uname -b writes the kernel's build-id, and uname -K writes the kernel's FreeBSD version. Solnix isainfo -b prints address-space bits, and -k prints kernel instruction sets.Source: FreeBSD uname(1) -b, -K; Solnix isainfo(1) -b, -k |
| all four | error exit status | isainfo exits non-zero if options are wrong or if it cannot recognize attributes of the system, and prints a message to stderr. The uname pages for FreeBSD, OpenBSD and NetBSD say 0 on success and >0 on error. The Linux page gives no exit status. Source: Solnix isainfo(1) EXIT STATUS; FreeBSD/OpenBSD uname(1) EXIT STATUS; Linux uname(1) (no EXIT STATUS section) |
| FreeBSD | environment override | FreeBSD uname reads UNAME_ environment variables that override the data it prints. The isainfo page documents no environment variables. Source: FreeBSD uname(1) ENVIRONMENT; Solnix isainfo(1) (no ENVIRONMENT section) |
Everyday tasks
| Task | Solnix | Linux | FreeBSD | OpenBSD | NetBSD |
|---|---|---|---|---|---|
| show native instruction set names | isainfo | — | — | — | — |
| show address-space bits (32 or 64) | isainfo -b | — | — | — | — |
| show kernel instruction set | isainfo -k | — | — | — | — |
| show machine hardware name | see uname(1) | uname -m | uname -m | uname -m | uname -m |
| show processor architecture name | see uname(1) | uname -p | uname -p | uname -p | uname -p |
Standards
- POSIX: isainfo is not a POSIX.1-2024 utility.
- OpenBSD: uname is compliant with the IEEE Std 1003.1-2008 (“POSIX.1”) specification. The
-pflag is an extension. - NetBSD: uname conforms to IEEE Std 1003.2-1992 (“POSIX.2”). The
-poption is an extension to the standard. - FreeBSD: uname is expected to conform to the IEEE Std 1003.2 (“POSIX.2”) specification.
Writing portable scripts
- Do not call isainfo in a portable script: it exists only on illumos-family systems. Test for it with command
-visainfo and fall back to uname-m. - Treat uname
-mand uname-poutput as system-specific names. The pages call-pnon-portable (Linux) or an extension (OpenBSD, NetBSD).
Every difference here is taken from the manual pages linked above: Solnix's published page, Linux (man-pages and the GNU and util-linux manuals), FreeBSD, OpenBSD and NetBSD. Each row names its source. Where a manual is silent, this page is too. Compiled 2026-10-26. Found a mistake? Mail hackers@lists.solnix.io.