qclib
Query Capacity library
qclib provides a C API for extraction of system information for Linux on z Systems. For instance, it will provide the number of CPUs * on the machine (CEC, Central Electronic Complex) layer * on the PR/SM (Processor Resource/Systems Manager) layer, i.e. visible to LPARs * in z/VM hosts, guests and CPU pools * in KVM hosts and guests This allows calculating the upper limit of CPU resources a highest level guest can use. E.g.: If an LPAR on a z13 provides 4 CPUs to a z/VM hypervisor, and the hypervisor provides 8 virtual CPUs to a guest, qclib can be used to retrieve all of these numbers, and it can be concluded that not more capacity than 4 CPUs can be used by the software running in the guest. qclib uses various interfaces and provides this data through a common and consistent API (Application Programming Interface), using information provided by: * STSI (Store System Information) instruction - for more details, refer to the z/Architecture Principles of Operation (SA22-7832) * STHYI (Store Hypervisor Information) instruction as provided by a z/VM hypervisor - for more information, refer to z/VM: V6R3 CP Programming Service (SC24-6179), chapter 'Store Hypervisor Information (STHYI) Instruction'. * hypfs file system - for more information, refer to 'Device Drivers, Features, and Commands', chapter 'S/390 hypervisor file system'.
BSD-3-Clause