- 论坛徽章:
- 0
|
本帖最后由 pywj777 于 2012-05-28 17:27 编辑
下面通过几个实例来看一下在2G物理内存平台上,进行不同的线性地址空间划分对物理内存管理区的影响。
1G/3G user/kernel splitit (__VMALLOC_RESERVE = 128M)
0MB HIGHMEM available.
2047MB LOWMEM available.
mapped low ram: 0 - 7ffd0000
low ram: 0 - 7ffd0000
node 0 low ram: 00000000 - 7ffd0000
node 0 bootmap 00008000 - 00017ffc
Memory: 2071924k/2096960k available (2801k kernel code, 24644k reserved, 1065k data, 328k init, 0k highmem)
virtual kernel memory layout:
fixmap : 0xfff17000 - 0xfffff000 ( 928 kB)
pkmap : 0xff800000 - 0xffc00000 (4096 kB)
vmalloc : 0xc07d0000 - 0xff7fe000 (1008 MB)
lowmem : 0x40000000 - 0xbffd0000 (2047 MB)
.init : 0x413c7000 - 0x41419000 ( 328 kB)
.data : 0x412bc701 - 0x413c6e64 (1065 kB)
.text : 0x41000000 - 0x412bc701 (2801 kB)
物理内存管理区的划分:HIGHMEM物理内存大小为0M,LOWMEM物理内存是2047M。
线性地址空间的划分:内核为VMALLOC预留的线性地址空间大小是1008M(vmalloc),内核直接映射的线性地址空间大小是2047M(lowmem)。
1G/3G user/kernel splitit (__VMALLOC_RESERVE = 128M, vmalloc=1512M)
527MB HIGHMEM available.
1519MB LOWMEM available.
mapped low ram: 0 - 5effe000
low ram: 0 - 5effe000
node 0 low ram: 00000000 - 5effe000
node 0 bootmap 00008000 - 00013e00
Memory: 2071912k/2096960k available (2801k kernel code, 24656k reserved, 1065k data, 328k init, 540488k highmem)
virtual kernel memory layout:
fixmap : 0xfff17000 - 0xfffff000 ( 928 kB)
pkmap : 0xff800000 - 0xffc00000 (4096 kB)
vmalloc : 0x9f7fe000 - 0xff7fe000 (1536 MB)
lowmem : 0x40000000 - 0x9effe000 (1519 MB)
.init : 0x413c7000 - 0x41419000 ( 328 kB)
.data : 0x412bc701 - 0x413c6e64 (1065 kB)
.text : 0x41000000 - 0x412bc701 (2801 kB)
物理内存管理区的划分:HIGHMEM物理内存大小为527M,LOWMEM物理内存是1519M。
线性地址空间的划分:内核为VMALLOC预留的线性地址空间大小是1536M(vmalloc),内核直接映射的线性地址空间大小是1519M(lowmem)。
2G/2G user/kernel split (__VMALLOC_RESERVE = 128M)
135MB HIGHMEM available.
1911MB LOWMEM available.
mapped low ram: 0 - 777fe000
low ram: 0 - 777fe000
node 0 low ram: 00000000 - 777fe000
node 0 bootmap 00008000 - 00016f00
Memory: 2071924k/2096960k available (2801k kernel code, 24644k reserved, 1065k data, 328k init, 139080k highmem)
virtual kernel memory layout:
fixmap : 0xfff17000 - 0xfffff000 ( 928 kB)
pkmap : 0xff800000 - 0xffc00000 (4096 kB)
vmalloc : 0xf7ffe000 - 0xff7fe000 ( 120 MB)
lowmem : 0x80000000 - 0xf77fe000 (1911 MB)
.init : 0x813c7000 - 0x81419000 ( 328 kB)
.data : 0x812bc6b1 - 0x813c6e64 (1065 kB)
.text : 0x81000000 - 0x812bc6b1 (2801 kB)
物理内存管理区的划分:HIGHMEM物理内存大小为135M,LOWMEM物理内存是1911M。
线性地址空间的划分:内核为VMALLOC预留的线性地址空间大小是120M(vmalloc),内核直接映射的线性地址空间大小是1911M(lowmem)。
3G/1G user/kernel split (__VMALLOC_RESERVE = 128M)
1159MB HIGHMEM available.
887MB LOWMEM available.
mapped low ram: 0 - 377fe000
low ram: 0 - 377fe000
node 0 low ram: 00000000 - 377fe000
node 0 bootmap 00008000 - 0000ef00
Memory: 2072684k/2096960k available (2801k kernel code, 23884k reserved, 1065k data, 328k init, 1187656k highmem)
virtual kernel memory layout:
fixmap : 0xfff17000 - 0xfffff000 ( 928 kB)
pkmap : 0xff800000 - 0xffc00000 (4096 kB)
vmalloc : 0xf7ffe000 - 0xff7fe000 ( 120 MB)
lowmem : 0xc0000000 - 0xf77fe000 ( 887 MB)
.init : 0xc13c7000 - 0xc1419000 ( 328 kB)
.data : 0xc12bc701 - 0xc13c6e64 (1065 kB)
.text : 0xc1000000 - 0xc12bc701 (2801 kB)
物理内存管理区的划分:HIGHMEM物理内存大小为1159M,LOWMEM物理内存是887M。
线性地址空间的划分:内核为VMALLOC预留的线性地址空间大小是120M(vmalloc),内核直接映射的线性地址空间大小是887M(lowmem)。
|
|