sysinfo man page on Solaris

Man page or keyword search:  
man Server   20652 pages
apropos Keyword Search (all sections)
Output format
Solaris logo
[printable version]

sysinfo(2)			 System Calls			    sysinfo(2)

NAME
       sysinfo - get and set system information strings

SYNOPSIS
       #include <sys/systeminfo.h>

       long sysinfo(int command, char *buf, long count);

DESCRIPTION
       The  sysinfo()  function	 copies	 information relating to the operating
       system on which the process is executing into the buffer pointed to  by
       buf. It can also set certain information where appropriate commands are
       available. The count parameter indicates the size of the buffer.

       The POSIX P1003.1 interface (see standards(5)) sysconf(3C)  provides  a
       similar	class  of  configuration  information,	but returns an integer
       rather than a string.

       The values for command are as follows:

       SI_SYSNAME

	   Copy into the array pointed to by buf  the  string  that  would  be
	   returned  by	 uname(2) in the sysnamefield. This is the name of the
	   implementation of the operating system, for example, SunOS or UTS.

       SI_HOSTNAME

	   Copy into the array pointed to by  buf  a  string  that  names  the
	   present  host machine. This is the string that would be returned by
	   uname() in the nodenamefield. This hostname or  nodename  is	 often
	   the	name the machine is known by locally. The hostname is the name
	   of this machine as a node in some network. Different networks might
	   have	 different  names for the node, but presenting the nodename to
	   the appropriate network directory or name-to-address	 mapping  ser‐
	   vice	 should	 produce a transport end point address. The name might
	   not be fully qualified. Internet host names can be up to 256	 bytes
	   in length (plus the terminating null).

       SI_SET_HOSTNAME

	   Copy	 the  null-terminated  contents of the array pointed to by buf
	   into the string maintained  by  the	kernel	whose  value  will  be
	   returned by succeeding calls to sysinfo() with the command SI_HOST‐
	   NAME. This command requires that {PRIV_SYS_ADMIN}  is  asserted  in
	   the effective set of the calling process.

       SI_RELEASE

	   Copy	 into  the  array  pointed  to by buf the string that would be
	   returned by uname(2) in the release field. Typical values might  be
	   5.2 or 4.1.

       SI_VERSION

	   Copy	 into  the  array  pointed  to by buf the string that would be
	   returned by uname(2) in the versionfield. The syntax and  semantics
	   of this string are defined by the system provider.

       SI_MACHINE

	   Copy	 into  the  array  pointed  to by buf the string that would be
	   returned by uname(2) in the machine field, for example, sun4u.

       SI_ARCHITECTURE

	   Copy into the array pointed to by buf a string describing the basic
	   instruction	set  architecture  of the current system, for example,
	   sparc, mc68030, m32100, or i386. These names might not match prede‐
	   fined names in the C language compilation system.

       SI_ARCHITECTURE_64

	   Copy	 into  the  array  pointed  to	by buf a string describing the
	   64-bit instruction set architecture	of  the	 current  system,  for
	   example,  sparcv9 or amd64.	These names might not match predefined
	   names in the C language compilation system.	This  subcode  is  not
	   recognized  on  systems  that  do not allow a 64-bit application to
	   run.

       SI_ARCHITECTURE_32

	   Copy into the array pointed to  by  buf  a  string  describing  the
	   32-bit  instruction	set  architecture  of  the current system, for
	   example, sparc or i386.  These names	 might	not  match  predefined
	   names in the C language compilation system.

       SI_ARCHITECTURE_K

	   Copy	 into the array pointed to by buf a string describing the ker‐
	   nel instruction set architecture of the current system for  example
	   sparcv9  or	i386.  These names might not match predefined names in
	   the C language compilation system.

       SI_ARCHITECTURE_NATIVE

	   Copy into the array pointed to  by  buf  a  string  describing  the
	   native  instruction	set  architecture  of  the current system, for
	   example sparcv9 or i386.  These names might	not  match  predefined
	   names in the C language compilation system.

       SI_ISALIST

	   Copy	 into  the  array  pointed  to by buf the names of the variant
	   instruction set architectures executable on the current system.

	   The names are space-separated and are ordered in the sense of  best
	   performance.	 That is, earlier-named instruction sets might contain
	   more instructions than later-named instruction sets; a program that
	   is  compiled	 for an earlier-named instruction set will most likely
	   run faster on this machine than the same  program  compiled	for  a
	   later-named instruction set.

	   Programs  compiled  for  an instruction set that does not appear in
	   the list will most likely experience performance degradation or not
	   run at all on this machine.

	   The	instruction  set names known to the system are listed in isal‐
	   ist(5); these names might not match predefined  names  or  compiler
	   options in the C language compilation system.

	   See	getisax(2) and the Linker and Libraries Guide for a better way
	   to handle instruction set extensions.

       SI_PLATFORM

	   Copy into the array pointed to by buf a string describing the  spe‐
	   cific  model	 of  the  hardware  platform,  for  example, SUNW,Sun-
	   Blade-1500, SUNW,Sun-Fire-T200, or i86pc.

       SI_HW_PROVIDER

	   Copies the name of the hardware manufacturer into the array pointed
	   to by buf.

       SI_HW_SERIAL

	   Copy	 into  the array pointed to by buf a string which is the ASCII
	   representation of the hardware-specific serial number of the physi‐
	   cal machine on which the function is executed. This might be imple‐
	   mented in Read-Only	Memory,	 using	software  constants  set  when
	   building the operating system, or by other means, and might contain
	   non-numeric characters. If the function is executed within  a  non-
	   global  zone that emulates a host identifier, then the ASCII repre‐
	   sentation of the zone's host identifier is copied  into  the	 array
	   pointed  to	by  buf. It is anticipated that manufacturers will not
	   issue the same "serial number" to more than one  physical  machine.
	   The	pair of strings returned by SI_HW_PROVIDER and SI_HW_SERIAL is
	   not guaranteed to be unique across all  vendor's  SVR4  implementa‐
	   tions and could change over the lifetime of a given system.

       SI_SRPC_DOMAIN

	   Copies  the Secure Remote Procedure Call domain name into the array
	   pointed to by buf.

       SI_SET_SRPC_DOMAIN

	   Set the string to be returned by sysinfo() with the	SI_SRPC_DOMAIN
	   command to the value contained in the array pointed to by buf. This
	   command requires that {PRIV_SYS_ADMIN} is asserted in the effective
	   set of the calling process.

       SI_DHCP_CACHE

	   Copy into the array pointed to by buf an ASCII string consisting of
	   the ASCII hexidecimal encoding of the name of the interface config‐
	   ured	 by  boot(1M)  followed	 by the DHCPACK reply from the server.
	   This command is intended for use only  by  the  dhcpagent(1M)  DHCP
	   client  daemon  for the purpose of adopting the DHCP maintenance of
	   the interface configured by boot.

RETURN VALUES
       Upon successful completion, the value  returned	indicates  the	buffer
       size  in	 bytes required to hold the complete value and the terminating
       null character. If this value is no greater than the  value  passed  in
       count,  the  entire  string  was	 copied. If this value is greater than
       count, the string copied into buf has been truncated to	count−1	 bytes
       plus a terminating null character.

       Otherwise, −1 is returned and errno is set to indicate the error.

ERRORS
       The sysinfo() function will fail if:

       EFAULT	 The buf argument does not point to a valid address.

       EINVAL	 The  count  argument  for a non-SET command is less than 0 or
		 the data for a SET command exceeds the limits established  by
		 the implementation.

       EPERM	 The {PRIV_SYS_ADMIN} was not asserted in the effective set of
		 the calling process.

USAGE
       In many cases there is no corresponding programming  interface  to  set
       these  values;  such  strings are typically settable only by the system
       administrator modifying entries in the  /etc/system  directory  or  the
       code provided by the particular OEM reading a serial number or code out
       of read-only memory, or hard-coded in the version of the operating sys‐
       tem.

       A  good	estimation  for	 count	is  257,  which is likely to cover all
       strings returned by this interface in typical installations.

SEE ALSO
       boot(1M), dhcpagent(1M), getisax(2), uname(2), gethostid(3C),  gethost‐
       name(3C),   sysconf(3C),	  isalist(5),	privileges(5),	 standards(5),
       zones(5)

       Linker and Libraries Guide

SunOS 5.10			  20 Apr 2010			    sysinfo(2)
[top]

List of man pages available for Solaris

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net