Linux 커널: LOWMEM + HIGHMEM > 총 메모리?

Linux 커널: LOWMEM + HIGHMEM > 총 메모리?

여러분, 제가 이해하지 못하는 것이 있습니다.

저는 32비트 PAE 지원 Linux 커널을 실행하는 4GB RAM 노트북을 가지고 있습니다. 이 시스템은 통합 그래픽을 갖춘 AMD APU로 구동되며, 제가 아는 한 시스템 메모리에서 그래픽 메모리를 끌어옵니다.

이제 내 항목에는 dmesg다음이 표시됩니다.

메모리: 3574156K/3638392K 사용 가능

합리적으로 보입니다. 4GB의 메모리를 고려하면 3638392K가 합리적으로 보입니다. 그 중 약 512MB가 GPU에 사용될 것입니다. 수학이 완전히 정확하지는 않을 수도 있지만, 가설이 옳다는 것을 보여줄 만큼 충분히 가깝습니다.

GPU가 512MB를 차지한다는 것을 증명할 수 있나요? 가능: 다음 줄이 있습니다 dmesg.

radeon 0000:00:01.0: VRAM: 512M 0x0000000000000000 - 0x000000001FFFFFFF (512M used)

VRAM이 추가 메모리 전용으로 사용될 필요가 없다고 가정하면(머신에 없는 것으로 확신합니다) GPU는 실제로 시스템 메모리에서 512MB를 가져갈 수 있습니다.

지금까지는 너무 좋아서 후속 조치를 취할 수 있다고 생각했습니다. 그러나 이제 다음 줄도 살펴보십시오 dmesg.

3700MB HIGHMEM available.
891MB LOWMEM available.

와, 총 4591MB네요. 자, 4GB이면 충분하고, 추가 VRAM도 필요 없다는 점을 고려하면, HIGHMEM + LOWMEM이 어떻게 그렇게 큰 가치가 될 수 있을까요? 나는 이 두 값을 더하면 시스템의 총 메모리 양과 같을 것이라고 가정했지만 여기서는 뭔가 잘못된 가정을 하고 있을 가능성이 충분히 있습니다. 내 생각에는 일부 장치 매핑 메모리와 같은 "실제" 메모리가 아닌 메모리도 LOWMEM 및/또는 HIGHMEM에 포함되는 것 같습니다.

나는 정말로 모른다. 그러나 누군가가 나에게 이것에 대해 밝혀줄 수 있다면 나는 매우 기쁠 것이다.

dmesg아, 그리고 참고로 제가 말하는 기계의 전체 출력이 나와있어요

http://ftp.tisys.org/pub/misc/teela_dmesg.txt

다들 감사 해요! :-)

답변1

올해 이것에 대해 읽었다는 것을 알고 있지만 이것을 찾으려면 비행기를 타고 돌아가야 했습니다.https://web.archive.org/web/20130513093456/http://kerneltrap.org/node/2450

귀하의 질문에 직접적으로 답변이 되는지 확실하지 않지만 도움이 될 수 있습니다. 나는 그 중 일부를 거의 이해하지 못합니다.

관련 정보