Reference

sg_get_host_info(3)

get general operating system statistics

NAME

sg_get_host_info, sg_get_host_info_r, sg_free_host_info - get general operating system statistics

SYNOPSIS

FC#include <statgrab.h>F[0]

FCsg_host_info *sg_get_host_infoF[0] FC(size_t *entries);F[0]

FCsg_host_info *sg_get_host_info_rF[0] FC(size_t *entries);F[0]

FCsg_error sg_free_host_infoF[0] FC(sg_host_info *data);F[0]

DESCRIPTION

These calls return details on the operating system and the machine it's running on.

API Shortcut

functionreturnsdata owner
sg_get_host_infoFCsg_host_infoF[0] *libstatgrab (thread local)
sg_get_host_info_rFCsg_host_infoF[0] *caller

The FCsg_host_infoF[0] buffer received from FCsg_get_host_info_rF[0]() must be freed using FCsg_free_host_infoF[0]() when not needed any more. The caller is responsible for doing it.

RETURN VALUES

The structure returned is of type FCsg_host_infoF[0].

FC
typedef enum {
        sg_unknown_configuration = 0,
        sg_physical_host,
        sg_virtual_machine,
        sg_paravirtual_machine,
        sg_hardware_virtualized
} sg_host_state;
    F[0]

FC
typedef struct{
        char *os_name;
        char *os_release;
        char *os_version;
        char *platform;
        char *hostname;
        unsigned bitwidth;
        sg_host_state host_state;
        unsigned ncpus;
        unsigned maxcpus;
        time_t uptime;
        time_t systime;
}sg_host_info;
    F[0]

FCos_nameF[0]

The operating system name. (eg. SunOS or Linux)

FCos_releaseF[0]

The operating system release. (eg. 5.8 or 5.9 or Solaris)

FCos_versionF[0]

The version level of the OS.

FCplatformF[0]

The hardware platform (architecture) the OS runs on.

FChostnameF[0]

The name of the machine.

FCuptimeF[0]

The uptime of the machine in seconds.

FCsystimeF[0]

The timestamp when the above stats where collected in seconds since epoch

SEE ALSO

statgrab(3)

WEBSITE

⟨https://libstatgrab.org/⟩

History