我有一个 android 应用程序,它仅在设备具有 512MB 或更多 RAM 时才启用某些功能。此应用程序从 /proc/meminfo(来自 Native C++ 代码)读取 memtotal 以确定设备的 RAM 大小。
我正在尝试将此应用程序安装在运行 Android 4.1 的模拟器中。我已将此模拟器的 RAM 大小设置为 1024 ,但 memtotal 仍然只显示516312 KB。我尝试将 RAM 大小增加到 1536(1.5GB),但 meminfo 文件中的 memtotal 值仍然保持不变。我知道一些内存是为内核和一些预定义的位保留的。但是缺少一整 GB 的内存让我一无所知。下面是我的 meminfo 文件。
MemTotal: 516312 kB
MemFree: 282584 kB
Buffers: 1056 kB
Cached: 105976 kB
SwapCached: 0 kB
Active: 141696 kB
Inactive: 75880 kB
Active(anon): 122328 kB
Inactive(anon): 0 kB
Active(file): 19368 kB
Inactive(file): 75880 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 0 kB
SwapFree: 0 kB
Dirty: 0 kB
Writeback: 0 kB
AnonPages: 110560 kB
Mapped: 57468 kB
Slab: 5080 kB
SReclaimable: 1568 kB
SUnreclaim: 3512 kB
PageTables: 4132 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 258156 kB
Committed_AS: 1898016 kB
VmallocTotal: 450560 kB
VmallocUsed: 20564 kB
VmallocChunk: 423940 kB