MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


System Calls                                           sysinfo(2)



NAME
     sysinfo - get and set system information strings

SYNOPSIS
     #include 

     int 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  informa-
     tion  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:

     SISYSNAME

         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  sys-
         tem, for example, SunOS or UTS.


     SIHOSTNAME

         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 service should produce  a  tran-
         sport  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).


     SISETHOSTNAME

         Copy the null-terminated contents of the  array  pointed
         to by buf into the string maintained by the kernel whose



SunOS 5.11          Last change: 29 Jan 2009                    1






System Calls                                           sysinfo(2)



         value will be returned by succeeding calls to  sysinfo()
         with the command SIHOSTNAME. This command requires that
         {PRIVSYSADMIN} is asserted in the effective set of the
         calling process.


     SIRELEASE

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


     SIVERSION

         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.


     SIMACHINE

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


     SIARCHITECTURE

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


     SIARCHITECTURE64

         Copy into the array pointed to by buf a string  describ-
         ing  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.


     SIARCHITECTURE32

         Copy into the array pointed to by buf a string  describ-
         ing  the  32-bit  instruction  set  architecture  of the
         current system, for example, sparc or i386.  These names



SunOS 5.11          Last change: 29 Jan 2009                    2






System Calls                                           sysinfo(2)



         might  not match predefined names in the C language com-
         pilation system.


     SIARCHITECTUREK

         Copy into the array pointed to by buf a string  describ-
         ing  the  kernel  instruction  set  architecture  of the
         current system for example sparcv9 or i386.  These names
         might  not match predefined names in the C language com-
         pilation system.


     SIARCHITECTURENATIVE

         Copy into the array pointed to by buf a string  describ-
         ing  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.


     SISALIST

         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 com-
         piled for a later-named instruction set.

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

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

         This command is obsolete  and  might  be  removed  in  a
         future  release.  See  getisax(2)  and  the  Linker  and
         Libraries Guide for a better way to  handle  instruction
         set extensions.






SunOS 5.11          Last change: 29 Jan 2009                    3






System Calls                                           sysinfo(2)



     SIPLATFORM

         Copy into the array pointed to by buf a string  describ-
         ing  the  specific  model  of the hardware platform, for
         example,  SUNW,Sun-Blade-1500,  SUNW,Sun-Fire-T200,   or
         i86pc.


     SIHWPROVIDER

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


     SIHWSERIAL

         Copy into the array pointed to by buf a string which  is
         the ASCI representation of the hardware-specific serial
         number of the physical machine on which the function  is
         executed. This might be implemented 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
         ASCI representation of the zone's  host  identifier  is
         copied  into  the array pointed to by buf. It is antici-
         pated that manufacturers will not issue the same "serial
         number"  to  more than one physical machine. The pair of
         strings returned by SIHWPROVIDER and  SIHWSERIAL  is
         not  guaranteed  to  be  unique across all vendor's SVR4
         implementations and could change over the lifetime of  a
         given system.


     SISRPCDOMAIN

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


     SISETSRPCDOMAIN

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


     SIDHCPCACHE

         Copy into the array pointed to by buf  an  ASCI  string



SunOS 5.11          Last change: 29 Jan 2009                    4






System Calls                                           sysinfo(2)



         consisting of the ASCI hexidecimal encoding of the name
         of the interface configured 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.

ERORS
     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  {PRIVSYSADMIN}  was  not  asserted  in  the
               effective set of the calling process.


USAGE
     In many cases there is no corresponding  programming  inter-
     face  to  set these values; such strings are typically sett-
     able only by the system administrator modifying  entries  in
     the  /etc/system  directory or the code provided by the par-
     ticular 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 installa-
     tions.





SunOS 5.11          Last change: 29 Jan 2009                    5






System Calls                                           sysinfo(2)



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


     Linker and Libraries Guide
















































SunOS 5.11          Last change: 29 Jan 2009                    6



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™