NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | CONFORMING TO | NOTES | EXAMPLE | SEE ALSO | COLOPHON

GET_PHYS_PAGES(3)         Linux Programmer's Manual        GET_PHYS_PAGES(3)

NAME         top

       get_phys_pages,  get_avphys_pages  - get total and available physical
       page counts

SYNOPSIS         top

       #include <sys/sysinfo.h>
       long int get_phys_pages(void);
       long int get_avphys_pages(void);

DESCRIPTION         top

       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         top

       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         top

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

CONFORMING TO         top

       These functions are GNU extensions.

NOTES         top

       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         top

       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         top

       sysconf(3)

COLOPHON         top

       This page is part of release 4.12 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/.
GNU                              2015-03-02                GET_PHYS_PAGES(3)

Pages that refer to this page: undocumented(3)