/proc/pid/clear_refs - resetuje bity PG_Referenced i
ACCESSED/YOUNG
- /proc/pid/clear_refs (od Linuksa 2.6.22)
- Plik jest tylko do odczytu, zapisywalny wyłącznie dla
właściciela procesu.
- Do pliku można zapisać następujące
wartości:
- 1 (od Linuksa 2.6.22)
- Resetuje bity PG_Referenced i ACCESSED/YOUNG dla wszystkich stron
związanych z procesem (przed Linuksem 2.6.32 taki efekt
powodowało zapisanie dowolnej wartości niezerowej).
- 2 (od Linuksa 2.6.32)
- Resetuje bity PG_Referenced i ACCESSED/YOUNG dla wszystkich stron
anonimowych związanych z procesem.
- 3 (od Linuksa 2.6.32)
- Resetuje bity PG_Referenced i ACCESSED/YOUNG dla wszystkich stron
przypisanych do plików, związanych z procesem.
- Czyszczenie bitów PG_Referenced i ACCESSED/YOUNG zapewnia
metodę zmierzenia przybliżonej wartości
pamięci używanej przez proces. Najpierw należy
sprawdzić wartość w polu „Referenced”
dla wartości VMA pokazanych w /proc/pid/smaps aby
sprawdzić użycie pamięci przez proces.
Następnie czyści się bity PG_Referenced i
ACCESSED/YOUNG i po jakimś zmierzonym czasie ponownie sprawdza
się wartości pól „Referenced” aby
dowiedzieć się jak zmieniło się użycie
pamięci procesu podczas zmierzonego interwału. Jeśli
jest się zainteresowanym wyłącznie pewnymi typami
przypisania, można skorzystać z wartości 2 lub 3,
zamiast 1.
- Można zapisać kolejne wartości, aby zmienić
inne właściwości:
- 4 (od Linuksa 3.11)
- Czyści bit soft-dirty dla wszystkich stron związanych z
procesem. Używa się tego (razem z
/proc/pid/pagemap) przez system przywracania check-point do
wykrycia które strony procesu zostały
„zabrudzone” od czasu zapisu do pliku
/proc/pid/clear_refs.
- 5 (od Linuksa 4.0)
- Resetuje szczytowy osiągnięty rozmiar zestawu rezydentnego
(„resident set size” — RSS) na aktualny rozmiar
zestawu rezydentnego procesu.
- Zapis innej wartości niż wypisane powyżej do
/proc/pid/clear_refs nie daje żadnego efektu.
- Plik /proc/pid/clear_refs istnieje tylko jeśli
podczas kompilacji jądra włączono opcję
CONFIG_PROC_PAGE_MONITOR.
Tłumaczenie niniejszej strony podręcznika: Przemek
Borys <pborys@dione.ids.pl>, Robert Luberda <robert@debian.org>
i Michał Kułach <michal.kulach@gmail.com>
Niniejsze tłumaczenie jest wolną
dokumentacją. Bliższe informacje o warunkach licencji
można uzyskać zapoznając się z
GNU General
Public License w wersji 3 lub nowszej. Nie przyjmuje się
ŻADNEJ ODPOWIEDZIALNOŚCI.
Błędy w tłumaczeniu strony podręcznika
prosimy zgłaszać na adres listy dyskusyjnej
manpages-pl-list@lists.sourceforge.net.