SMAPS_ACCOUNTED/SMAPS_UNACCOUNTED Flags to differentiate memory that can already be accounted for in /proc/<pid>/smaps , (Shared_Clean + Shared_Dirty + Private_Clean + Private_Dirty = Size). In general, memory mapped in to a userspace process is accounted unless it was mapped with remap_pfn_range.Exactly one of these must be set.
SHARED/SHARED_PSS/PRIVATE Flags to differentiate memory shared across multiple processes vs.memory used by a single process.If SHARED_PSS flags is used, the memory must be divided by the number of processes holding reference to it(shared / num_processes). Only zero or one of these may be set in a record.If none are set, record is assumed to count shared + private memory.
SYSTEM/DEDICATED Flags to differentiate memory taken from the kernel's allocation pool vs.memory that is dedicated to non-kernel allocations, for example a carveout or separate video memory.Only zero or one of these may be set in a record.If none are set, record is assumed to count system + dedicated memory.
NONSECURE/SECURE Flags to differentiate memory accessible by the CPU in non-secure mode vs.memory that is protected.Only zero or one of these may be set in a record.If none are set, record is assumed to count secure + nonsecure memory.