Co to jest „buforowane” w górnym poleceniu?

46

Podczas biegania topotrzymuję:

top - 09:10:52 up 18:37,  1 user,  load average: 1.56, 1.33, 1.15
Tasks:  39 total,   1 running,  38 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.1%us,  0.6%sy,  1.0%ni, 92.5%id,  5.8%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   4194304k total,  3045460k used,  1148844k free,        0k buffers
Swap:        0k total,        0k used,        0k free,  2256128k cached

Zobacz część: 2256128k w pamięci podręcznej? Co to dokładnie znaczy?

Porównuję dwa VPS od dwóch dostawców, ten zawsze ma tam dużą ilość (70% używanej pamięci), a drugi dostawca VPS zawsze pokazuje 0.

KKK
źródło

Odpowiedzi:

15

Ta liczba przed buforowaniem to ilość pamięci fizycznej wykorzystywanej przez bufory pamięci podręcznej dla twoich systemów plików.

W rzeczywistości nie jest powiązany z SWAP, mimo że znajduje się w wierszu „Zamień:”.

Aby zweryfikować moją odpowiedź za pomocą małego eksperymentu, spróbuj wykonać następujące czynności:

Uruchom na górze i zanotuj wartość „buforowane”. Teraz biegnij

dd if=/dev/zero of=~/trick bs=1M count=128

jeśli ponownie uruchomisz górę, zauważysz, że pamięć podręczna wzrosła o 128 mln

Teraz usuń plik

rm ~/trick

Uruchom ponownie, a zobaczysz, że wartość „cache” spadła o 128 mln

Więc dla Mem:

total = used + free i

used = <all apps> + buffers + cached

(gdzie bufory są w zasadzie metadanymi dla pamięci podręcznej). Trochę mylące z interfejsu użytkownika.

rogerdpack
źródło
i mogę wpłynąć na to mimo to, np. ograniczyć lub całkowicie wyłączyć?
KKK,
2
Dlaczego chcesz to zrobić ?! co masz z tym zrobić ?! chodzi o sposób buforowania systemu plików w pamięci fiskalnej.
Ponieważ większość systemu plików to DB, DB ma własną pamięć podręczną, więc zakładam, że dobrze byłoby jakoś ograniczyć tę część.
KKK,
Możesz to zrobić za pomocą wyszukiwania, ale nie radzę ci. Ograniczy to wydajność FS
117

jądro Linux użyje dostępnej pamięci do buforowania dysku, chyba że jest to wymagane przez uruchomiony program.

To jest uważane za dobre; powiedzmy, że masz 4 GB pamięci RAM, a twoje programy używają tylko 1 GB. Pozostałe 3 GB zostaną zmarnowane. Pomimo wrażenia „dobrego samopoczucia”, wiedząc, że używasz tylko 25% pamięci, odpowiednikiem jest to, że pozostałe 75% nie będzie używane. Jądro używa go do buforowania plików, co znacznie poprawia wydajność. To jest automatyczne; w przeciwieństwie do starszych systemów operacyjnych nie musisz decydować, ile chcesz przeznaczyć na pamięć podręczną dysku, lub ręcznie ją skonfigurować.

„Pamięć podręczna dysku dla systemu Linux jest bardzo dyskretna. Wykorzystuje zapasową pamięć, aby znacznie zwiększyć prędkość dostępu do dysku i nie zabiera żadnej pamięci aplikacjom. W pełni wykorzystywany magazyn pamięci RAM w systemie Linux to wydajne wykorzystanie sprzętu, a nie znak ostrzegawczy”.

To jest tak częste pytanie, że poświęcona jest cała strona internetowa:

http://www.linuxatemyram.com

Witryna ma nawet sposób na opróżnienie pamięci podręcznej dysku, dzięki czemu można uruchomić niektóre aplikacje i sprawdzić, o ile są one szybsze przy włączonej pamięci podręcznej :)

roadmr
źródło
4
Podoba mi się odpowiedź, ale z powodu braku reputacji nie mogę jej jeszcze zaktualizować. Przepraszam.
KKK,
4
Nie martw się, cieszę się, że mogę pomóc. Mam nadzieję, że informacje są przydatne!
roadmr 10.10.12
TO powinna być zaakceptowana odpowiedź. No cóż . . . :(
ankush981
zdecydowanie powinna być zaakceptowana odpowiedź. linuxatemyram to świetna informacja!
rafaelbattesti