LINUX.ORG.RU
ФорумAdmin

Оперативная память расходуется непонятно на что


0

1

На сервер устнаовлен Debian amd64 squeeze. До запуска виртуальной машины на VirtualBox все хорошо - занято только около 150мб из 2гиг. Запускаю виртуальную машину на которую по настройкам выделено 256мб оперативы, и вся память исчезает, становится свободно около 100мб.

Вывод top
Tasks: 92 total, 1 running, 90 sleeping, 1 stopped, 0 zombie
Cpu(s): 0.0%us, 0.3%sy, 0.0%ni, 99.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 2060628k total, 2022268k used, 38360k free, 40888k buffers
Swap: 6040400k total, 0k used, 6040400k free, 1515636k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2315 root 20 0 596m 338m 297m S 1 16.8 0:22.06 VBoxHeadless
1 root 20 0 8348 800 668 S 0 0.0 0:00.39 init
2 root 20 0 0 0 0 S 0 0.0 0:00.00 kthreadd
3 root RT 0 0 0 0 S 0 0.0 0:00.00 migration/0
4 root 20 0 0 0 0 S 0 0.0 0:00.00 ksoftirqd/0
5 root RT 0 0 0 0 S 0 0.0 0:00.00 watchdog/0
6 root RT 0 0 0 0 S 0 0.0 0:00.00 migration/1
7 root 20 0 0 0 0 S 0 0.0 0:00.00 ksoftirqd/1
8 root RT 0 0 0 0 S 0 0.0 0:00.00 watchdog/1
9 root 20 0 0 0 0 S 0 0.0 0:00.00 events/0
10 root 20 0 0 0 0 S 0 0.0 0:00.00 events/1
11 root 20 0 0 0 0 S 0 0.0 0:00.00 cpuset
12 root 20 0 0 0 0 S 0 0.0 0:00.00 khelper
13 root 20 0 0 0 0 S 0 0.0 0:00.00 netns
14 root 20 0 0 0 0 S 0 0.0 0:00.00 async/mgr
15 root 20 0 0 0 0 S 0 0.0 0:00.00 pm
16 root 20 0 0 0 0 S 0 0.0 0:00.00 sync_supers
17 root 20 0 0 0 0 S 0 0.0 0:00.00 bdi-default
18 root 20 0 0 0 0 S 0 0.0 0:00.00 kintegrityd/0
19 root 20 0 0 0 0 S 0 0.0 0:00.00 kintegrityd/1
20 root 20 0 0 0 0 S 0 0.0 0:00.01 kblockd/0
21 root 20 0 0 0 0 S 0 0.0 0:00.02 kblockd/1
22 root 20 0 0 0 0 S 0 0.0 0:00.00 kacpid
23 root 20 0 0 0 0 S 0 0.0 0:00.00 kacpi_notify
24 root 20 0 0 0 0 S 0 0.0 0:00.00 kacpi_hotplug
25 root 20 0 0 0 0 S 0 0.0 0:00.00 kseriod
28 root 20 0 0 0 0 S 0 0.0 0:00.00 kondemand/0
29 root 20 0 0 0 0 S 0 0.0 0:00.00 kondemand/1
30 root 20 0 0 0 0 S 0 0.0 0:00.00 khungtaskd
31 root 20 0 0 0 0 S 0 0.0 0:00.45 kswapd0
32 root 25 5 0 0 0 S 0 0.0 0:00.00 ksmd
33 root 20 0 0 0 0 S 0 0.0 0:00.00 aio/0
34 root 20 0 0 0 0 S 0 0.0 0:00.00 aio/1


> Mem: 2060628k total, 2022268k used, 38360k free, 40888k buffers

Swap: 6040400k total, 0k used, 6040400k free, 1515636k cached


40888k buffers + 1515636k cached + 38360k free = свободная память.

AS ★★★★★ ()

1515636k cached — вот она, твоя память.

post-factum ★★★★★ ()
Ответ на: комментарий от post-factum

Спасибо, а как из кэша, перевести в свободную память? Или cached считается как свободная?

Solov ()
Ответ на: комментарий от Solov

Спасибо, а как из кэша, перевести в свободную память?

Зачем, чтобы затормозить дисковое io?

Или cached считается как свободная?

Да, когда приложению понадобится, она освободится.

zgen ★★★★★ ()
Ответ на: комментарий от Solov

Плюсую предыдущую ссылку.

Если хочешь очистить кэш, выполни команду:

sudo su -c "echo 3 > /proc/sys/vm/drop_caches"

Хотя, это, конечно, извращение. Кэш сам очищается, если нужно выделить память под что-то другое. А то, что он со временем растёт — это стратегия современных ОС такая — использовать всю доступную память под кэш, что увеличивает быстродействие.

post-factum ★★★★★ ()

Интересно, какую сотню раз задают этот вопрос на ЛОРе?

ТС, смотреть свободную память нужно так: free -m, последняя строка даст тебе «реальный» размер свободной памяти

annoynimous ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.