Linux 内存优化
内存使用情况分析
DRAM 大小
硬件上 DDR 确定之后, DRAM 大小就已经确定。
uboot 会根据 DRAM 驱动提供的接口获取 DRAM 的大小,然后修改 dts 中的 memory 节点,Linux 启动时解析 dts 获取 DRAM 的大小。 uboot 启动 log 中会打印 dram 的大小。比如 R329 方案 uboot 启动时会有如下 log:
1 | [01.300]DRAM: 128 MiB |
执行:
1 | root@TinaLinux:/# hexdump -C /sys/firmware/devicetree/base/memory@40000000/reg |
也可以获取 dram 的起始地址与大小。如下面 R329 例子所示,其中 0x40000000 为起始地址, 0x08000000 为 dram 的 size.