如何计算开机之后留给Linux Kernel可用的总内存
时间:10-02
整理:3721RD
点击:
[DESCRIPTION]
众所周知,RAM的Layout里面会包含Modem 以及 framebuffer部分,那如何计算剩余
留给linux kernel的内存呢?
[SOLUTION]
请首先抓一份开机的UART log
1、搜索“available”,你会看到memory:xxxxx/xxxxx available,这个xxxxx就是
linux kernel可用总内存
[ 0.000000]-(0)[0:swapper]Memory: 954092k/954092k available, 27924k
reserved, 467968K highmem
2、如何计算的呢?
1) 搜索“PHY layout”,得到total ram size,modem size,以及framebuffer
size
[ 0.000000]-(0)[0:swapper][PHY layout]avaiable DRAM size = 0x40000000
[ 0.000000]-(0)[0:swapper][PHY layout]FB : 0xbfb00000 - 0xc0000000
(0x00500000)
[ 0.000000]-(0)[0:swapper][PHY layout]MD : 0xbc000000 - 0xbe000000
(0x02000000)
[ 0.000000]-(0)[0:swapper][PHY layout]MD : 0xba000000 - 0xbbc00000
(0x01c00000)
2) memory avaliable = total ram size - (modem size + framebuffer size +
reserved)
= 0x40000000 - (0x02000000 +0x01c00000 + 0x00500000 + 27924k)
//本例有两个modem
= 954092k
众所周知,RAM的Layout里面会包含Modem 以及 framebuffer部分,那如何计算剩余
留给linux kernel的内存呢?
[SOLUTION]
请首先抓一份开机的UART log
1、搜索“available”,你会看到memory:xxxxx/xxxxx available,这个xxxxx就是
linux kernel可用总内存
[ 0.000000]-(0)[0:swapper]Memory: 954092k/954092k available, 27924k
reserved, 467968K highmem
2、如何计算的呢?
1) 搜索“PHY layout”,得到total ram size,modem size,以及framebuffer
size
[ 0.000000]-(0)[0:swapper][PHY layout]avaiable DRAM size = 0x40000000
[ 0.000000]-(0)[0:swapper][PHY layout]FB : 0xbfb00000 - 0xc0000000
(0x00500000)
[ 0.000000]-(0)[0:swapper][PHY layout]MD : 0xbc000000 - 0xbe000000
(0x02000000)
[ 0.000000]-(0)[0:swapper][PHY layout]MD : 0xba000000 - 0xbbc00000
(0x01c00000)
2) memory avaliable = total ram size - (modem size + framebuffer size +
reserved)
= 0x40000000 - (0x02000000 +0x01c00000 + 0x00500000 + 27924k)
//本例有两个modem
= 954092k
