CHMEM(8)

NAZWA
chmem - konfiguruje pamięć

SKŁADNIA

chmem [-h] [-V*] [-v] [-e|-d] [ROZMIAR|ZAKRES -b ZAKRES-BLOKÓW] [-z STREFA]

OPIS

Polecenie chmem może ustawić dany rozmiar lub zakres pamięci jako aktywną lub nieaktywną.

    • ROZMIAR nelaży podać jako <rozmiar>[m|M|g|G]. Z przyrostkiem m lub M, <rozmiar> określa rozmiar pamięci w MiB (1024 x 1024 bajtów). Z przyrostkiem g lub G, <rozmiar> określa rozmiar pamięci w GiB (1024 x 1024 x 1024 bajtów). Domyślną jednostką są MiB.

    • ZAKRES należy podać w postaci 0x<początek>-0x<koniec>, tak jak wyświetla go wynik polecenia lsmem(1). <Początek> jest szesnastkowym adresem pierwszego bajtu, a <koniec> jest szesnastkowym adresem ostatniego bajtu w danym zakresie pamięci.

    • ZAKRES-BLOKÓW należy podać w postaci <pierwszy>-<ostatni> lub <blok>, tak jak wyświetla go polecenie lsmem(1). <Pierwszy> to numer pierwszego bloku pamięci, a <ostatni> to numer ostatniego bloku pamięci w danym zakresie pamięci. Alternatywnie można podać pojedynczy <blok>. ZAKRES-BLOKÓW wymaga opcji --blocks.

    • STREFĘ należy podać jako nazwę strefy pamięci, tak jak wyświetla ją polecenie lsmem -o +ZONES. Wyjście pokaże jedną lub więcej prawidłowych stref dla każdego zakresu pamięci. Jeśli wyświetli się kilka stref, to dany zakres pamięci obecnie należy do pierwszej strefy. Domyślnie, chmem ustawi pamięć online do strefy Movable, jeśli taka istnieje wśród prawidłowych stref. To domyślne zachowanie można zmienić podając opcję --zone z inną prawidłową strefą. Przy balonikowaniu pamięci, zaleca się wybierać strefę Movable dla pamięci aktywnej i nieaktywnej, jeśli tylko jest dostępna. Pamięć w tej strefie ma znacznie większe prawdopodobieństwo ponownego zdezaktywowania, lecz nie może być stosowana do dowolnych przydziałów jądra, tylko dla migrowalnych stron (np. stron buforowanych i anonimowych). Wszystkie dostępne strefy pokaże opcja --help.

ROZMIAR i ZAKRES muszą być wyrównane do rozmiaru bloku pamięci Linuksa, zgodnie z wynikiem polecenia lsmem(1).

Ustawienie pamięci jako aktywną może się nie powieść z wielu powodów. W systemach wirtualizowanych może się tak zdarzyć, gdy nadzorca nie będzie miał odpowiednio dużo pamięci, np. z powodu przydziału ponad stan faktyczny (overcommit). Ustawienie pamięci jako nieaktywną może zawieść, gdy Linux nie może zwolnić pamięci. Jeśli jedynie część żądanej pamięci może zostać aktywowana lub zdezaktywowana, odpowiedni komunikat poinformuje, jak wiele z żądanej wielkości udało się aktywować lub zdezaktywować.

Przy aktywowaniu pamięci chmem rozpoczyna od najniższych numerów bloków pamięci. Przy dezaktywowaniu pamięci chmem rozpoczyna od najwyższych numerów bloków pamięci.

OPCJE

-b, --blocks
    Korzysta z parametru ZAKRES-BLOKÓW zamiast z ZAKRESU lub ROZMIARU przy opcjach --enable i --disable.

-d, --disable
    Dezaktywuje podany ZAKRES, ROZMIAR, lub ZAKRES-BLOKÓW pamięci.

-e, --enable
    Aktywuje podany ZAKRES, ROZMIAR, lub ZAKRES-BLOKÓW pamięci.

-z, --zone
    Wybiera STREFĘ, w której aktywowany lub dezaktywowany ma być podany ZAKRES, ROZMIAR lub ZAKRES-BLOKÓW pamięci. Domyślnie pamięć będzie aktywowana w strefie Movable, jeśli to tylko możliwe.

-v, --verbose
    Tryb szczegółowy. Powoduje, że chmem wypisuje komunikaty diagnostyczne o swoim działaniu.

-h, --help
    Wyświetla ten tekst i wychodzi.

-V, --version
    Wyświetla wersję i wychodzi.

STATUS ZAKOŃCZENIA

chmem ma następujące wartości statusu zakończenia:

0
    sukces

1
    niepowodzenie

64
    częściowy sukces

PRZYKŁAD

chmem --enable 1024
    Polecenie żąda aktywowania 1024 MiB pamięci.

chmem -e 2g
    Polecenie żąda aktywowania 2 GiB pamięci.

chmem --disable 0x00000000e4000000-0x00000000f3ffffff
    Polecenie żąda dezaktywowania zakresu pamięci od 0x00000000e4000000 do 0x00000000f3ffffff.

chmem -b -d 10
    Polecenie żąda dezaktywowania bloku pamięci o numerze 10.

ZOBACZ TAKŻE

lsmem(1)

ZGŁASZANIE BŁĘDÓW

Problemy należy zgłaszać w

DOSTĘPNOŚĆ

Polecenie chmem jest częścią pakietu util-linux, który można pobrać ze strony