kstat_write(3kstat) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

kstat_write(3kstat)

Kernel Statistics Library Functions                         kstat_read(3KSTAT)



NAME
       kstat_read, kstat_write - read or write kstat data

SYNOPSIS
       cc [ flag... ] file... -lkstat [ library... ]
       #include <kstat.h>

       kid_t kstat_read(kstat_ctl_t *kc, kstat_t *ksp, void *buf);


       kid_t kstat_write(kstat_ctl_t *kc, kstat_t *ksp, void *buf);

DESCRIPTION
       The  kstat_read()  function  gets  data  from  the kernel for the kstat
       pointed to by ksp. The ksp->ks_data field  is  automatically  allocated
       (or  reallocated)  to  be  large  enough  to  hold all of the data. The
       ksp->ks_ndata  field  is  set   to   the   number   of   data   fields,
       ksp->ks_data_size   is   set  to  the  total  size  of  the  data,  and
       ksp->ks_snaptime is set to the high-resolution time at which  the  data
       snapshot  was  taken.  If  buf  is  non-null,  the  data is copied from
       ksp->ks_data to buf.


       The kstat_write() function writes data from buf, or  from  ksp->ks_data
       if  buf  is  NULL,  to  the  corresponding  kstat  in  the  kernel. The
       {PRIV_SYS_CONFIG} privilege is required to use the kstat_write()  func‐
       tion.

RETURN VALUES
       Upon  successful  completion,  the kstat_read() and kstat_write() func‐
       tions return the current kstat chain ID (KCID). Otherwise, they  return
       −1 and set errno to indicate the error.

ERRORS
       The kstat_read() and kstat_write() functions will fail if:

       EACCES       An attempt was made to write to a non-writable kstat.


       EAGAIN       The kstat was temporarily unavailable for reading or writ‐
                    ing.


       EINVAL       An attempt was made to write data to a kstat, but the num‐
                    ber of elements or the data size does not match.


       ENOMEM       Insufficient storage space is available.


       ENXIO        The  given kstat could not be located for reading or writ‐
                    ing.


       EOVERFLOW    The data for the given kstat was too large to be stored in
                    the structure.


       EPERM        An   attempt   was   made   to   write  to  a  kstat,  but
                    {PRIV_SYS_CONFIG} was not asserted in the effective privi‐
                    lege set.


FILES
       /dev/kstat    kernel statistics driver


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       tab()  box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE TYPEAT‐
       TRIBUTE VALUE _  Interface  StabilityObsolete  _  MT-LevelMT-Safe  with
       exceptions



       The  kstat_read()  function is MT-Safe with the exception that only one
       thread may actively use a kstat_ctl_t * value at any time. Synchroniza‐
       tion is left to the application.

SEE ALSO
       kstat(3KSTAT),     kstat_chain_update(3KSTAT),    kstat_lookup(3KSTAT),
       kstat_open(3KSTAT),       kstat2(3KSTAT2),        kstat2_open(3KSTAT2),
       kstat2_close(3KSTAT2),                      kstat2_lookup_map(3KSTAT2),
       kstat2_map_get(3KSTAT2), attributes(7), privileges(7)

NOTES
       The kstat_read() and kstat_write() functions are deprecated.  They  may
       be   removed   in   a   future  release  of  Oracle  Solaris.  Use  the
       kstat2_lookup_map() and kstat2_map_get() functions to read a statistic.
       There will be no functional replacement for the kstat_write() function.
       Kstats v2 does not support writing data-values into  kstats.  For  more
       information,      see      the      kstat2_lookup_map(3KSTAT2)      and
       kstat2_map_get(3KSTAT2) man pages.



Oracle Solaris 11.4               3 Nov 2021                kstat_read(3KSTAT)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3