openwrt - RAM内存分配

openwrt - RAM内存分配

寻找有关 OpenWRT 系统的一些内存建议。

我有一个 SKW71 模块(ar9331 cpu)。它有 16Mb 闪存和 512Mb ddr2 RAM。该系统的图像不存在。因此,我通常为 WR703N(4Mb 闪存,32Mb RAM)安装了 OpenWRT 映像。一切似乎都运作良好。尽管我意识到我可能需要在某个时候构建一个专用图像。

现在我想验证操作系统是否正在使用所有可用的硬件资源。

从 mtd 分区中我可以看到闪存已被完全使用。请参阅下面的命令。我确实获得了总计 16Mb 的 art + 固件 + u-boot。很好。

我对 RAM 有更多的好奇。这一页指出 /tmp 最多为 ram 大小的 50%。然而根据 df 命令我只达到了 30Mb 左右。这与我预期的 256Mb 相差甚远。

如何检查 RAM 的分配和使用情况?

我应该能够为我的 /tmp 申请更多内存吗?

如果是这样我该如何改变这个?

下面的一些命令。 df / mtd / 内存信息

root@OpenWrt:~# df -h
Filesystem                Size      Used Available Use% Mounted on
rootfs                   12.6M    812.0K     11.8M   6% /
/dev/root                 2.3M      2.3M         0 100% /rom
tmpfs                    29.9M    152.0K     29.7M   0% /tmp
/dev/mtdblock3           12.6M    812.0K     11.8M   6% /overlay
overlayfs:/overlay       12.6M    812.0K     11.8M   6% /
tmpfs                   512.0K         0    512.0K   0% /dev

root@OpenWrt:~# cat /proc/mtd 
dev:    size   erasesize  name
mtd0: 00020000 00010000 "u-boot"
mtd1: 0010c4d0 00010000 "kernel"
mtd2: 00ec3b30 00010000 "rootfs"
mtd3: 00c90000 00010000 "rootfs_data"
mtd4: 00010000 00010000 "art"
mtd5: 00fd0000 00010000 "firmware"

root@OpenWrt:~# cat /proc/meminfo | head
MemTotal:          61228 kB
MemFree:           41472 kB
MemAvailable:      47576 kB
Buffers:            1880 kB
Cached:             6224 kB
SwapCached:            0 kB
Active:             6172 kB
Inactive:           3948 kB
Active(anon):       2120 kB
Inactive(anon):       48 kB

7个月后编辑。仍在寻找解决方案。我进入 uboot 并可以清楚地看到它使用 64MB RAM。看来现在就只能用这种方式来调查了。

  BOARD: TP-Link TL-WR703N v1
    SOC: AR9330 rev. 1
    CPU: MIPS 24Kc
    RAM: 64 MB DDR2 16-bit CL3-4-4-10
  FLASH: 16 MB Winbond W25Q128
    MAC: 28:A1:EB:FD:1A:FF
 CLOCKS: CPU/RAM/AHB/SPI/REF
         400/400/200/ 25/ 25 MHz

答案1

从你的 meminfo 来看,MemTotal 是 61228kB,OpenWRT 只能识别 64kB。我怀疑 64kB 是经过编码的,RAM 没有被扫描到。

相关内容