| 
    GATE
    
   C/C++ Framework 
   | 
 
OS information and control library. More...
#include "gate/system/gate_system_api.h"#include "gate/gatetypes.h"#include "gate/strings.h"#include "gate/versioning.h"Functions | |
| GATE_SYSTEM_API gate_result_t | gate_os_get_platform (gate_uint32_t *ptr_platform) | 
| Returns a unique platform ID.   | |
| GATE_SYSTEM_API char const * | gate_os_get_platform_label (gate_uint32_t platform) | 
| Returns a human readable string representing for the given platform ID.   | |
| GATE_SYSTEM_API gate_uint32_t | gate_os_address_space () | 
| Returns the address space bits of the platform (e.g. 16, 32, 64 bits)   | |
| GATE_SYSTEM_API gate_uint32_t | gate_os_up_time_seconds () | 
| Returns the amount of seconds the system is online.   | |
| GATE_SYSTEM_API gate_result_t | gate_os_print_osname (char *buffer, gate_size_t buffer_len, gate_size_t *buffer_used) | 
| Prints the operating system's name into a buffer (e.g. "Windows NT", "Linux")   | |
| GATE_SYSTEM_API gate_result_t | gate_os_print_productname (char *buffer, gate_size_t buffer_len, gate_size_t *buffer_used) | 
| Prints the operating system's product name into a buffer (e.g. "Windows 10", "Debian Linux")   | |
| GATE_SYSTEM_API gate_result_t | gate_os_get_version (gate_version_t *ptr_version) | 
| Retrieves the internal version of the operating system.   | |
| GATE_SYSTEM_API gate_result_t | gate_os_get_hostname_str (char *buffer, gate_size_t buffer_len, gate_size_t *buffer_used) | 
| Prints the system's hostname into a buffer.   | |
| GATE_SYSTEM_API gate_result_t | gate_os_get_hostname (gate_string_t *hostname) | 
| Returns the system's hostname as a string.   | |
| GATE_SYSTEM_API gate_result_t | gate_os_set_hostname (gate_string_t const *hostname) | 
| Sets a new value to the system's hostname.   | |
| GATE_SYSTEM_API gate_result_t | gate_os_get_hostdomainname_str (char *buffer, gate_size_t buffer_len, gate_size_t *buffer_used) | 
| Prints the current system's domain name into a buffer.   | |
| GATE_SYSTEM_API gate_result_t | gate_os_get_hostdomainname (gate_string_t *domainname) | 
| Returns the system's domain name as a string.   | |
| GATE_SYSTEM_API gate_result_t | gate_os_set_hostdomainname (gate_string_t const *domainname) | 
| Sets a new value for the system's domain name.   | |
| GATE_SYSTEM_API gate_result_t | gate_os_get_uid (gate_uint8_t *buffer, gate_size_t buffer_len, gate_size_t *buffer_used) | 
| Prints the user ID the current process is running as into a buffer.   | |
| GATE_SYSTEM_API gate_result_t | gate_os_shutdown () | 
| Initiates a system shutdown.   | |
| GATE_SYSTEM_API gate_result_t | gate_os_reboot () | 
| Initiates a system reboot.   | |
| GATE_SYSTEM_API gate_result_t | gate_os_get_cpu_architecture (gate_enumint_t *ptr_arch) | 
| Returns the running CPU architecture type.   | |
| GATE_SYSTEM_API char const * | gate_os_get_cpu_architecture_label (gate_enumint_t arch) | 
| Returns a readable string for the given CPU architecture identifier.   | |
| GATE_SYSTEM_API gate_result_t | gate_os_get_cpu_info (gate_os_cpuinfo_t *info) | 
| Fills a CPU info structure with data about the operating CPU.   | |
| GATE_SYSTEM_API gate_result_t | gate_os_enum_cpu_features (gate_os_cpu_feature_callback_t callback, void *param) | 
| Enumerates all CPU features and calls a callback function for each detected feature.   | |
| GATE_SYSTEM_API gate_bool_t | gate_os_cpu_get_activation (gate_os_cpu_activation_t const *activation, gate_size_t id) | 
| Returns true if a CPU identified by an ID is activated for running tasks.   | |
| GATE_SYSTEM_API gate_result_t | gate_os_cpu_set_activation (gate_os_cpu_activation_t *activation, gate_size_t id, gate_bool_t activated) | 
| Sets on CPU activation bit.   | |
| GATE_SYSTEM_API gate_result_t | gate_os_get_process_cpu_affinity (gate_os_cpu_activation_t *affinity) | 
| Returns current process CPU afinity activation data.   | |
| GATE_SYSTEM_API gate_result_t | gate_os_set_process_cpu_affinity (gate_os_cpu_activation_t const *affinity) | 
| Changes the current process CPU afinitiy activation data.   | |
| GATE_SYSTEM_API gate_result_t | gate_os_cpu_load_init (gate_os_cpu_load_state_t *state) | 
| Initializes the CPU load state record structure.   | |
| GATE_SYSTEM_API gate_result_t | gate_os_cpu_load_update (gate_os_cpu_load_state_t *state, gate_uint16_t *load65535) | 
| Updates the CPU load state record and returns the current calculated CPU load.   | |
| GATE_SYSTEM_API gate_result_t | gate_os_cpu_load_uninit (gate_os_cpu_load_state_t *state) | 
| Releases resources from the CPU load state record structure.   | |
| GATE_SYSTEM_API gate_result_t | gate_os_get_physical_memory (gate_uint64_t *ptr_total, gate_uint64_t *ptr_available) | 
| Returns current global physical system memory status.   | |
| GATE_SYSTEM_API gate_result_t | gate_os_get_virtual_memory (gate_uint64_t *ptr_total, gate_uint64_t *ptr_available) | 
| Returns current global virtual system memory status.   | |
OS information and control library.
| GATE_SYSTEM_API gate_result_t gate_os_get_platform | ( | gate_uint32_t * | ptr_platform | ) | 
Returns a unique platform ID.
| [out] | ptr_platform | Pointer to variable that receives the platform ID | 
| GATE_SYSTEM_API char const * gate_os_get_platform_label | ( | gate_uint32_t | platform | ) | 
Returns a human readable string representing for the given platform ID.
| [in] | platform | A platform ID to be translated into a string | 
| GATE_SYSTEM_API gate_uint32_t gate_os_address_space | ( | ) | 
Returns the address space bits of the platform (e.g. 16, 32, 64 bits)
| GATE_SYSTEM_API gate_uint32_t gate_os_up_time_seconds | ( | ) | 
Returns the amount of seconds the system is online.
| GATE_SYSTEM_API gate_result_t gate_os_print_osname | ( | char * | buffer, | 
| gate_size_t | buffer_len, | ||
| gate_size_t * | buffer_used ) | 
Prints the operating system's name into a buffer (e.g. "Windows NT", "Linux")
| [in] | buffer | Pointer to buffer to be filled | 
| [in] | buffer_len | Maximum capacity of buffer | 
| [out] | buffer_used | Pointer to variable that receives the amount of filled bytes in the buffer | 
| GATE_SYSTEM_API gate_result_t gate_os_print_productname | ( | char * | buffer, | 
| gate_size_t | buffer_len, | ||
| gate_size_t * | buffer_used ) | 
Prints the operating system's product name into a buffer (e.g. "Windows 10", "Debian Linux")
| [in] | buffer | Pointer to buffer to be filled | 
| [in] | buffer_len | Maximum capacity of buffer | 
| [out] | buffer_used | Pointer to variable that receives the amount of filled bytes in the buffer | 
| GATE_SYSTEM_API gate_result_t gate_os_get_version | ( | gate_version_t * | ptr_version | ) | 
Retrieves the internal version of the operating system.
| [out] | ptr_version | Pointer to version to be filled | 
| GATE_SYSTEM_API gate_result_t gate_os_get_hostname_str | ( | char * | buffer, | 
| gate_size_t | buffer_len, | ||
| gate_size_t * | buffer_used ) | 
Prints the system's hostname into a buffer.
| [in] | buffer | Pointer to buffer to be filled | 
| [in] | buffer_len | Maximum capacity of buffer | 
| [out] | buffer_used | Pointer to variable that receives the amount of filled bytes in the buffer | 
| GATE_SYSTEM_API gate_result_t gate_os_get_hostname | ( | gate_string_t * | hostname | ) | 
Returns the system's hostname as a string.
| [out] | hostname | Pointer to string to be initialized with the hostname | 
| GATE_SYSTEM_API gate_result_t gate_os_set_hostname | ( | gate_string_t const * | hostname | ) | 
Sets a new value to the system's hostname.
| [in] | hostname | Pointer to string with new hostname | 
| GATE_SYSTEM_API gate_result_t gate_os_get_hostdomainname_str | ( | char * | buffer, | 
| gate_size_t | buffer_len, | ||
| gate_size_t * | buffer_used ) | 
Prints the current system's domain name into a buffer.
| [in] | buffer | Pointer to buffer to be filled | 
| [in] | buffer_len | Maximum capacity of buffer | 
| [out] | buffer_used | Pointer to variable that receives the amount of filled bytes in the buffer | 
| GATE_SYSTEM_API gate_result_t gate_os_get_hostdomainname | ( | gate_string_t * | domainname | ) | 
Returns the system's domain name as a string.
| [out] | domainname | Pointer to string that is initialized with the system's domain name | 
| GATE_SYSTEM_API gate_result_t gate_os_set_hostdomainname | ( | gate_string_t const * | domainname | ) | 
Sets a new value for the system's domain name.
| [in] | domainname | Pointer to string with new domain name | 
| GATE_SYSTEM_API gate_result_t gate_os_get_uid | ( | gate_uint8_t * | buffer, | 
| gate_size_t | buffer_len, | ||
| gate_size_t * | buffer_used ) | 
Prints the user ID the current process is running as into a buffer.
| [in] | buffer | Pointer to buffer to be filled | 
| [in] | buffer_len | Maximum capacity of buffer | 
| [out] | buffer_used | Pointer to variable that receives the amount of filled bytes in the buffer | 
| GATE_SYSTEM_API gate_result_t gate_os_shutdown | ( | ) | 
Initiates a system shutdown.
| GATE_SYSTEM_API gate_result_t gate_os_reboot | ( | ) | 
Initiates a system reboot.
| GATE_SYSTEM_API gate_result_t gate_os_get_cpu_architecture | ( | gate_enumint_t * | ptr_arch | ) | 
Returns the running CPU architecture type.
| [out] | ptr_arch | Pointer to variable that receives a GATE_OS_ARCH_* identifier | 
| GATE_SYSTEM_API char const * gate_os_get_cpu_architecture_label | ( | gate_enumint_t | arch | ) | 
Returns a readable string for the given CPU architecture identifier.
| [in] | arch | GATE_OS_ARCH_* identifier | 
| GATE_SYSTEM_API gate_result_t gate_os_get_cpu_info | ( | gate_os_cpuinfo_t * | info | ) | 
Fills a CPU info structure with data about the operating CPU.
| [out] | info | Pointer to variable that receives CPU data | 
| GATE_SYSTEM_API gate_result_t gate_os_enum_cpu_features | ( | gate_os_cpu_feature_callback_t | callback, | 
| void * | param ) | 
Enumerates all CPU features and calls a callback function for each detected feature.
| [in] | callback | Callback function | 
| [in] | param | User parameter added to the callback function call | 
| GATE_SYSTEM_API gate_bool_t gate_os_cpu_get_activation | ( | gate_os_cpu_activation_t const * | activation, | 
| gate_size_t | id ) | 
Returns true if a CPU identified by an ID is activated for running tasks.
| [in] | activation | Pointer to structure with activated CPU cores | 
| [in] | id | CPU core to query | 
| GATE_SYSTEM_API gate_result_t gate_os_cpu_set_activation | ( | gate_os_cpu_activation_t * | activation, | 
| gate_size_t | id, | ||
| gate_bool_t | activated ) | 
Sets on CPU activation bit.
| [in] | activation | Pointer to activation structure | 
| [in] | id | CPU core to be modified | 
| [out] | activated | true enables the CPU core, false disables it | 
| GATE_SYSTEM_API gate_result_t gate_os_get_process_cpu_affinity | ( | gate_os_cpu_activation_t * | affinity | ) | 
Returns current process CPU afinity activation data.
| [out] | affinity | Pointer to CPU activation structure to be filled | 
| GATE_SYSTEM_API gate_result_t gate_os_set_process_cpu_affinity | ( | gate_os_cpu_activation_t const * | affinity | ) | 
Changes the current process CPU afinitiy activation data.
| [in] | affinity | Pointer to CPU activation structure to be applied | 
| GATE_SYSTEM_API gate_result_t gate_os_cpu_load_init | ( | gate_os_cpu_load_state_t * | state | ) | 
Initializes the CPU load state record structure.
| [out] | state | Pointer to cpu-load record | 
| GATE_SYSTEM_API gate_result_t gate_os_cpu_load_update | ( | gate_os_cpu_load_state_t * | state, | 
| gate_uint16_t * | load65535 ) | 
Updates the CPU load state record and returns the current calculated CPU load.
| [in] | buffer | Pointer to cpu-load record | 
| [out] | load65535 | Pointer to 16-bit value indicating the CPU load between 0 (no load) and 65535 (full load) | 
| GATE_SYSTEM_API gate_result_t gate_os_cpu_load_uninit | ( | gate_os_cpu_load_state_t * | state | ) | 
Releases resources from the CPU load state record structure.
| [in] | state | Pointer to cpu-load record | 
| GATE_SYSTEM_API gate_result_t gate_os_get_physical_memory | ( | gate_uint64_t * | ptr_total, | 
| gate_uint64_t * | ptr_available ) | 
Returns current global physical system memory status.
| [out] | ptr_total | Pointer to variable to be set to total installed memory in bytes | 
| [out] | ptr_available | Pointer to variable to be set to available (free) memory in bytes | 
| GATE_SYSTEM_API gate_result_t gate_os_get_virtual_memory | ( | gate_uint64_t * | ptr_total, | 
| gate_uint64_t * | ptr_available ) | 
Returns current global virtual system memory status.
| [out] | ptr_total | Pointer to variable to be set to total virtual memory in bytes | 
| [out] | ptr_available | Pointer to variable to be set to available (free) virtual memory in bytes |