get_mempolicy(2) System Calls Manual get_mempolicy(2) get_mempolicy - NUMA NUMA ( ) (libnuma -lnuma) #include long get_mempolicy(unsigned long maxnode; int *mode, unsigned long nodemask[(maxnode + ULONG_WIDTH - 1) / ULONG_WIDTH], unsigned long maxnode, void *addr, unsigned long flags); get_mempolicy() NUMA flags. NUMA (CPUs) . . flags 0 ( set_mempolicy(2)) mode nodemask. get_mempolicy() set_mempolicy(2). flags 0 addr NULL. flags MPOL_F_MEMS_ALLOWED ( Linux 2.6.24) mode () mbind(2) set_mempolicy(2) ( mode flags) nodemask. MPOL_F_MEMS_ALLOWED MPOL_F_ADDR MPOL_F_NODE. flags MPOL_F_ADDR addr. mbind(2) numa(3) addr. mode NULL get_mempolicy() mode flags NUMA . nodemask NULL . maxnode nodemask-- . maxnode sizeof(unsigned long)*8. flags MPOL_F_NODE MPOL_F_ADDR get_mempolicy() addr mode. get_mempolicy() () . flags MPOL_F_NODE MPOL_F_ADDR MPOL_INTERLEAVE MPOL_WEIGHTED_INTERLEAVE get_mempolicy() mode NULL kernel . mmap(2) MAP_PRIVATE MAP_SHARED . . set_mempolicy(2). get_mempolicy() 0 -1 errno . EFAULT nodemask maxnode . EINVAL maxnode . flags MPOL_F_NODE MPOL_F_ADDR flags MPOL_F_ADDR addr NULL flags MPOL_F_ADDR addr NULL. flags MPOL_F_NODE MPOL_F_ADDR MPOL_INTERLEAVE MPOL_WEIGHTED_INTERLEAVE. flags MPOL_F_MEMS_ALLOWED MPOL_F_ADDR MPOL_F_NODE. ( EINVAL .) . 2.6.7. numa(7). getcpu(2), mbind(2), mmap(2), set_mempolicy(2), numa(3), numa(7), numactl(8) 3 . . : . 6.18 8 2026 get_mempolicy(2)