[ 0.000000] Memory: 256MB = 256MB total
[ 0.000000] Memory: 171736k/171736k available, 90408k reserved, 0K highmem
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
[ 0.000000] vmalloc : 0xd0800000 - 0xff000000 ( 744 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xd0000000 ( 256 MB)
[ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
[ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
[ 0.000000] .text : 0xc0008000 - 0xc048d000 (4628 kB)
[ 0.000000] .init : 0xc048d000 - 0xc04b2000 ( 148 kB)
[ 0.000000] .data : 0xc04b2000 - 0xc04f7400 ( 277 kB)
[ 0.000000] .bss : 0xc04f7424 - 0xc0593f68 ( 627 kB)
3.4.39 커널을 사용하는 arm sun8i 장치가 있습니다. 사용 가능한 메모리는 256MB에 불과하지만 보드에 탑재된 칩 크기는 2GB다. highmem=y를 활성화하여 커널을 부팅했지만 문제가 지속됩니다. 여기서 무슨 일이 일어나고 있는 걸까요? Lomem의 최대 용량은 256MB입니다. 700MB 블록까지 할당할 수 있나요? 나는 lomem에 vmalloc 블록이 포함되어야 한다고 생각합니다.
답변1
귀하의 의견에서 언급한 칩을 검색해 보면 H5TQ2G63FFR은 2Gb(기가비트) 칩이므로 메모리가 256MB(메가바이트)에 불과합니다.
H5TQ2G83FFR-xxC, H5TQ2G63FFR-xxC,[...] 2,147,483,648-입니다.소량CMOS DDR3(Double Data Rate III) 동기식 DRAM,[...]
(에서 인용이 PDF. )
8개의 메모리 칩을 결합하여 2GB 메모리 스틱을 만들 수 있으므로 메모리 칩이 비트 단위로 측정되는 것은 드문 일이 아닙니다. (시스템/프로세서의 너비에 따라 더 많은 칩이 더 넓은 데이터 경로를 만들 수 있습니다.)