Main index | Section 3 | Options |
#include <sys/param.h>
#include <sys/pcpu.h>
#include <sys/sysctl.h>
#include <kvm.h>
The kvm_getmaxcpu() function returns the maximum number of CPUs supported by the kernel.
The kvm_getncpus() function returns the current number of CPUs in the kernel.
The kvm_getpcpu() function returns a buffer holding the per-CPU data for a single CPU. This buffer is described by the struct pcpu type. The caller is responsible for releasing the buffer via a call to free(3) when it is no longer needed. If cpu is not active, then NULL is returned instead.
The kvm_read_zpcpu() function is used to obtain private per-CPU copy from a UMA_ZONE_PCPU zone(9). It takes base argument as base address of an allocation and copyies size bytes into buf from the part of allocation that is private to cpu.
The kvm_counter_u64_fetch() function fetches value of a counter(9) pointed by base address.
Symbols for dynamic per-CPU data are accessed via kvm_nlist(3) as with other symbols. libkvm maintains a notion of the "current CPU", set by kvm_dpcpu_setcpu(), which defaults to 0. Once another CPU is selected, kvm_nlist(3) will return pointers to that data on the appropriate CPU.
On success, the kvm_getpcpu() function returns a pointer to an allocated buffer or NULL. If an error occurs, it returns -1 instead.
On success, the kvm_dpcpu_setcpu() call returns 0; if an error occurs, it returns -1 instead.
On success, the kvm_read_zpcpu() function returns number of bytes copied. If an error occurs, it returns -1 instead.
If any function encounters an error, then an error message may be retrieved via kvm_geterr(3).
KVM_GETPCPU (3) | March 15, 2017 |
Main index | Section 3 | Options |
Please direct any comments about this manual page service to Ben Bullock. Privacy policy.
“ | "I liken starting one's computing career with Unix, say as an undergraduate, to being born in East Africa. It is intolerably hot, your body is covered with lice and flies, you are malnourished and you suffer from numerous curable diseases. But, as far as young East Africans can tell, this is simply the natural condition and they live within it. By the time they find out differently, it is too late. They already think that the writing of shell scripts is a natural act." | ” |
— Ken Pier, Xerox PARC |