Re: Neuer Rechner mit FreeNAS - 2 Fragen

From: Oliver Fromme <oliver(at)fromme.com>
Date: Thu, 4 Apr 2019 13:14:16 +0200 (CEST)

hallo Peter,

Peter Ross wrote:
> Erste Ueberraschung war eine Warnung, dass der Rechner keine 8 GB hat.
> Nachgucken:
>
> real memory = 8589934592 (8192 MB)
> avail memory = 6073331712 (5791 MB)
>
> Okay, der Rechner hat keine Grafikkarte, aber mehr als 2 GB "weg"?
>
> Gibt es dafuer eine Erklaerung? Wie kann ich da mehr Details erfahren?

Was sagen denn bei Dir die drei sysctls hw.realmem, hw.physmem
und hw.usermem? Aus der Manpage (wurde kürzlich präzisiert):

HW_REALMEM
        Amount of memory (in bytes) reported by the firmware.
        That value is sometimes not sane; in that case, the
        kernel reports the max memory address instead.

HW_PHYSMEM
        Amount of physical memory (in bytes), minus the amount
        used by the kernel, pre-loaded modules, and (on x86)
        the dcons buffer.

HW_USERMEM
        Amount of memory (in bytes) which is not wired.

Interessant wäre jetzt erstmal, wie sich bei Dir der Wert von
„avail memory“ aus der Bootmeldung zu hw.physmem verhält.
In der Regel ist letzterer etwas höher (typischerweise beträgt
die Differenz etwa 3 bis 4 Prozent von realmem, in Deinem Fall
wäre also eine Differenz von ca. 300 MB zu erwarten).

Wenn physmem auffallend gering ist, kann das im wesentlichen
zwei Ursachen habe: Erstens wird Speicher abgezogen, den
das BIOS für verschiedene Zwecke reserviert. Typisch ist
hier der Graphikspeicher, den eine Onboard-Graphikkarte für
sich beansprucht. Dies kann man ggf. im BIOS- / UEFI-Setup
reduzieren oder ganz abschalten.

Zweitens kann es sein, dass der Kernel sehr viel Speicher
beansprucht. Das kann verschiedene Ursachen haben. Als
erstes kannst Du mit „kldstat -h“ mal nachsehen, welche
Module geladen sind und wie groß die sind. Dann würde ich
mal die Kernel-Konfiguration genauer unter die Lupe nehmen.

Anekdote: Ich hatte einmal (vermutlich unter Einfluss von
Koffeinmangel) SC_HISTORY_SIZE viel zu hoch angesetzt, da
ich vergessen hatte, dass der Wert in Zeilen angegeben wird,
nicht in Bytes. Zusammen mit MAXCONS=16 sorgte das dafür,
dass der Kernel 500 MB allein für die Syscons-History
verbriet. Die Moral von der Geschichte: Man muss immer
genau aufpassen, in welcher Einheit die diversen Werte
anzugeben sind (Bytes, Zeilen, KB, Pages, ...). Wenn man
sich da vertut, kann man sich schnell ins Knie schießen.

Allerdings sind 2,5 GB von 8 GB wirklich schon ziemlich viel.
Ich kann mir nicht vorstellen, dass der Kernel allein dafür
verantwortlich ist.

Gruß
 ― Olli

-- 
Oliver Fromme, München   --   FreeBSD + DragonFly BSD
``We are all but compressed light'' - Albert Einstein
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Thu 04 Apr 2019 - 13:14:21 CEST

search this site