zoslib
z/OS C/C++ Library
Loading...
Searching...
No Matches
Classes | Macros | Typedefs | Enumerations | Functions
zos-sys-info.h File Reference
#include "zos-macros.h"
#include <stdint.h>
#include <stdlib.h>

Go to the source code of this file.

Classes

struct  ZOSCCT
 
struct  ZOSRMCT
 
struct  ZOSRCE
 
struct  ZOSCVT
 
struct  ZOSPSA
 
struct  ZOSPCCA
 
struct  ZOSPCCAVT
 

Macros

#define ZOSCPU_MODEL_LENGTH   4
 

Typedefs

typedef struct ZOSCCT ZOSCCT_t
 
typedef struct ZOSRMCT ZOSRMCT_t
 
typedef struct ZOSRCE ZOSRCE_t
 
typedef struct ZOSCVT ZOSCVT_t
 
typedef struct ZOSPSA ZOSPSA_t
 
typedef struct ZOSPCCA ZOSPCCA
 
typedef struct ZOSPCCAVT ZOSPCCAVT
 

Enumerations

enum  oslvl_t {
  ZOSLVL_V1R13 = 0 , ZOSLVL_V2R1 , ZOSLVL_V2R2 , ZOSLVL_V2R3 ,
  ZOSLVL_V2R4 , ZOSLVL_V2R5 , ZOSLVL_V3R1 , ZOSLVL_UNKNOWN
}
 

Functions

__Z_EXPORT int __get_num_online_cpus (void)
 
__Z_EXPORT int __get_num_frames (void)
 
__Z_EXPORT oslvl_t __get_os_level (void)
 
__Z_EXPORT bool __is_os_level_at_or_above (oslvl_t level)
 
__Z_EXPORT bool __is_stfle_available ()
 
__Z_EXPORT bool __is_vxf_available ()
 
__Z_EXPORT bool __is_vef1_available ()
 
__Z_EXPORT char * __get_cpu_model (char *buffer, size_t size)
 

Macro Definition Documentation

◆ ZOSCPU_MODEL_LENGTH

#define ZOSCPU_MODEL_LENGTH   4

Typedef Documentation

◆ ZOSCCT_t

typedef struct ZOSCCT ZOSCCT_t

◆ ZOSCVT_t

typedef struct ZOSCVT ZOSCVT_t

◆ ZOSPCCA

typedef struct ZOSPCCA ZOSPCCA

◆ ZOSPCCAVT

typedef struct ZOSPCCAVT ZOSPCCAVT

◆ ZOSPSA_t

typedef struct ZOSPSA ZOSPSA_t

◆ ZOSRCE_t

typedef struct ZOSRCE ZOSRCE_t

◆ ZOSRMCT_t

typedef struct ZOSRMCT ZOSRMCT_t

Enumeration Type Documentation

◆ oslvl_t

enum oslvl_t
Enumerator
ZOSLVL_V1R13 
ZOSLVL_V2R1 
ZOSLVL_V2R2 
ZOSLVL_V2R3 
ZOSLVL_V2R4 
ZOSLVL_V2R5 
ZOSLVL_V3R1 
ZOSLVL_UNKNOWN 

Function Documentation

◆ __get_cpu_model()

__Z_EXPORT char * __get_cpu_model ( char *  buffer,
size_t  size 
)

Gets the 4 character CPU model of the system, including the null terminating character. Truncated if buffer size is too small.

Parameters
bufferpointer to the buffer where the cpu model is to be stored
sizethe size of the buffer
Returns
pointer to the buffer.

◆ __get_num_frames()

__Z_EXPORT int __get_num_frames ( void  )

Get the number of frames currently available to the system

Returns
returns the number of available frames

◆ __get_num_online_cpus()

__Z_EXPORT int __get_num_online_cpus ( void  )

Get the number of online CPUs

Returns
returns the number of online CPUs

◆ __get_os_level()

__Z_EXPORT oslvl_t __get_os_level ( void  )

Get the OS level

Returns
the OS level as ZOSLVL_V2R1/2/3/4/5 (values are in ascending order)

◆ __is_os_level_at_or_above()

__Z_EXPORT bool __is_os_level_at_or_above ( oslvl_t  level)

Check if current OS is at or above a given level

Returns
true if the current OS level is at or above the given level, and false otherwise

◆ __is_stfle_available()

__Z_EXPORT bool __is_stfle_available ( )

Check if STFLE (STORE FACILITY LIST EXTENDED) instruction is available

Returns
true if the STFLE instruction is available

◆ __is_vef1_available()

__Z_EXPORT bool __is_vef1_available ( )

Check if the current z arch includes Vector Enhancements Facility 1

Returns
true if Vector Enhancements Facility 1 instructions are available, and false otherwise

◆ __is_vxf_available()

__Z_EXPORT bool __is_vxf_available ( )

Check if the current z arch includes Vector Extension Facility

Returns
true if Vector Extension Facility instructions are available, and false otherwise