perfstat_cpu_util 서브루틴

용도

중앙 처리 장치 이용률을 계산합니다.

라이브러리

perfstat 라이브러리 (libperfstat.a)

구문

#include <libperfstat.h>
int perfstat_cpu_util (cpustats, userbuff, sizeof_userbuff, desired_number)
perfstat_rawdata_t * cpustats;
perfstat_cpu_util_t * userbuff;
int  sizeof_userbuff ;
int  desired_number ;

설명

perfstat_cpu_util 서브루틴은 perfstat_rawdata_t 데이터 구조에 전달된 현재 및 이전 값에 대한 CPU 사용률 관련 메트릭을 계산합니다. perfstat_rawdata_t 데이터 구조의 유형 필드를 UTIL_CPU_TOTAL 또는 UTIL_CPU로 언급하여 동일한 API를 사용하여 시스템 이용률 및 CPU당 이용률 값을 둘 다 확보할 수 있습니다. UTIL_CPU_TOTALUTIL_CPUperfstat_rawdata_t 데이터 구조의 정의에서 참조할 수 있는 매크로입니다. nameuserbuff 속성이 NULL로 설정되고 sizeof_userbuff 매개변수가 0으로 설정되면 perfstat_cpu_util_t 구조의 현재 버전 크기가 리턴됩니다. desired_elements 매개변수가 0으로 설정되면 cpustats 매개변수에서 현재 요소 수가 리턴됩니다.

매개변수

항목 설명
cpustats

현재 및 이전 값에서 이용률 관련 지표를 계산합니다. cpustats 매개변수의 유형은 perfstat_rawdata_t입니다. curstatprevstat 속성은 perfstat_cpu_util_t 데이터 구조를 가리킵니다.

참고: 파티션 레벨 CPU 이용률을 계산하려면 cpustats 매개변수를 UTIL_CPU_TOTAL 로 설정하십시오. 개별 CPU 이용률의 경우 cpustats 매개변수를 UTIL_CPU로 설정하십시오. 계산할 이용률이 특정 CPU에만 적용되는 경우 개별 CPU의 ID를 cpustats 매개변수에 지정할 수도 있습니다.
사용자 버퍼 (userbuff)

하나 이상의 perfstat_cpu_util_t 구조로 채워질 메모리 영역을 지정합니다.

사용자 버퍼 크기

perfstat_cpu_util_t 구조의 크기를 지정합니다.

참고: perfstat_cpu_util_t 구조의 최신 버전 크기를 얻으려면 sizeof_userbuff 매개변수를 0으로 설정하고 nameuserbuff 매개변수를 NULL로 설정하십시오.
desired_number

userbuff 매개변수에 복사할 perfstat_cpu_util_t 구조의 수를 지정합니다.

리턴 값

perfstat_cpu_util 서브루틴을 사용하여 사용 가능한 구조 수를 검색하지 않으면 완료 시 채워진 구조 수가 리턴됩니다. 실패하면 -1 값이 반환되고 errno 전역 변수가 설정됩니다.

오류 코드

다음과 같은 경우 perfstat_cpu_util 서브루틴은 실패합니다.

항목 설명
EINVAL 매개변수 중 하나가 올바르지 않습니다.

파일

libperfstat.h 파일은 표준 매크로, 데이터 유형 및 서브루틴을 정의합니다.