Strona 1 z 1

[+] Gdzie podziało się 129MB ramu?

: 19 maja 2009, 10:15
autor: lis6502
No właśnie. Niedawno postawiłem conky'ego i zastanowiła mnie ilość widzianej przez niego pamięci.
W komputerze mam jedną kość pamięci 1GB ale zawsze, każdy system nie widział całej ilości. Czasami było to 1018MB, czasem 1010MB. Tłumaczyłem sobie, że gdzieś musi siedzieć kernel itp, ale dzisiaj to już przegięcie:

Kod: Zaznacz cały

             total       used       free     shared    buffers     cached
Mem:        894104     320204     573900          0      17248     156836
Low:        894104     320204     573900
High:            0          0          0
Tak, niecałe 900 MB. Pierwsza myśl - co dobrego w dmesg. No i sprawdzam:
[ 0.000000] AMI BIOS detected: BIOS may corrupt low RAM, working it around.
[ 0.000000] last_pfn = 0x3ffc0 max_arch_pfn = 0x1000000
[ 0.000000] Warning only 895MB will be used.
[ 0.000000] Use a HIGHMEM enabled kernel.
[ 0.000000] kernel direct mapping tables up to 37feb000 @ 10000-16000

Kernel
Linux version 2.6.28-gentoo-r5 (root@Nexus) (gcc version 4.3.3 (Gentoo 4.3.3-r2 p1.1, pie-10.1.5) ) #3 Mon May 18 00:25:49 CEST 2009
ręcznie kompilowany. Zaraz sprawdzę jeszcze na 2.6.27, ale już teraz zapytam czy ktoś się z tym spotkał i wie jak to obejść?

Na 2.6.27 widziany jest cały gigabajt. W takim razie co skopałem w konfiguracji kernela? Ustawienia biosu także odpadają.
Dorzucę

Kod: Zaznacz cały

lis6502@Nexus ~ $ cat /proc/mtrr
reg00: base=0x000000000 (    0MB), size= 1024MB, count=1: write-back
Rozwiązanie: Wybrana opcja w kernelu:

Kod: Zaznacz cały

NOHIGHMEM
jednak nie jest dobrym pomysłem.

Ustawienie:

Kod: Zaznacz cały

HIGHMEM4G
i

Kod: Zaznacz cały

lis6502@Nexus ~ $ free -l
             total       used       free     shared    buffers     cached
Mem:       1025016     631024     393992          0      26184     303548
Low:        886000     492260     393740
High:       139016     138764        252

: 21 maja 2009, 20:57
autor: gielo
Jaką masz kartę grafiki? Jak zintegrowaną z płytą to może nie ma własnej pamięci ram tylko korzysta właśnie z tego 1GB.

Jak masz na płycie kartę 128MB to tyle pamięci zabierze ci system na jej potrzeby z ramu.