get_phys_pages(3) — Linux manual page

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | CONFORMING TO | NOTES | EXAMPLES | 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 get_phys_pages(void);
       long 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 */

EXAMPLES         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 5.10 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                            2020-11-01              GET_PHYS_PAGES(3)

Pages that refer to this page: undocumented(3)