Provided by: manpages-dev_4.15-1_all bug

NAME

       get_phys_pages, get_avphys_pages - get total and available physical page counts

SYNOPSIS

       #include <sys/sysinfo.h>

       long int get_phys_pages(void);
       long int get_avphys_pages(void);

DESCRIPTION

       The  function  get_phys_pages()  returns  the  total  number  of  physical pages of memory
       available on the system.

       The function get_avphys_pages() returns the number of currently available  physical  pages
       of memory on the system.

RETURN VALUE

       On  success,  these  functions  return  a  nonnegative  value as given in DESCRIPTION.  On
       failure, they return -1 and set errno to indicate the cause of the error.

ERRORS

       ENOSYS The system could not provide the required information (possibly because  the  /proc
              filesystem was not mounted).

CONFORMING TO

       These functions are GNU extensions.

NOTES

       These  functions  obtain  the  required  information  by scanning the MemTotal and MemFree
       fields of /proc/meminfo.

       The following sysconf(3) calls provide a portable means of obtaining the same  information
       as the functions described on this page.

           total_pages = sysconf(_SC_PHYS_PAGES);    /* total pages */
           avl_pages = sysconf(_SC_AVPHYS_PAGES);    /* available pages */

EXAMPLE

       The following example shows how get_phys_pages() and get_avphys_pages() can be used.

       #include <stdio.h>
       #include <stdlib.h>
       #include <sys/sysinfo.h>

       int
       main(int argc, char *argv[])
       {
           printf("This system has %ld pages of physical memory and "
                   "%ld pages of physical memory available.\n",
                   get_phys_pages(), get_avphys_pages());
           exit(EXIT_SUCCESS);
       }

SEE ALSO

       sysconf(3)

COLOPHON

       This  page  is  part of release 4.15 of the Linux man-pages project.  A description of the
       project, information about reporting bugs, and the latest version of  this  page,  can  be
       found at https://www.kernel.org/doc/man-pages/.