2009-05-28 7 views
1

если я бегиспользования памяти в системах Linux

top 

на системе Linux, я вижу много информации об использовании памяти.

Mem: 15736360k total, 8415332k used,28k free, 174876k buffers 
Swap:  0k total,  0k used,  0k free, 2630508k cached 

Мне было интересно: что такое атрибут «кешированный»? Похоже, что это совсем не освобождается - это нормальное поведение?

Мы используем memcached для наших веб-приложений. Это связано с этим?

Matt

ответ

7

Вы можете (и, возможно, должны) также использовать команду free для печати состояние памяти:

   total  used  free  shared buffers  cached 
Mem:  515568  504740  10828   0  44248  427800 
-/+ buffers/cache:  32692  482876 
Swap:  915664  64820  850844 

Линия «буферы/кэш» говорит вам сколько ОЗУ ядро ​​в настоящее время используется для различных буферов и кешей, в основном для диска I/OI думаю. Эта память доступна для программ, если она им нужна, но до тех пор, пока они этого не сделают, ее лучше использовать, если ядро ​​использует ее для буферизации ввода-вывода, чем если бы она оставалась бездействующей.

3

Я считаю, что «Сохраненная копия» это память используется для блочного устройства (т.е. диска) кэш - в случае необходимости, эта память может быть немедленно преобразованы в свободной памяти, так что приложения могут использовать его. Таким образом, в общем, думать о нем, как «свободный» :)

1

Если моя память служит мне правильно, ядро ​​Linux будет храниться в этой памяти для других целей, пока приложение не потребует ее. Это совершенно нормально. Ниже приводится краткое объяснение: http://www.novell.com/coolsolutions/feature/18990.html

2

На ваш вопрос есть прекрасный ответ на этот вопрос here. Короче говоря, система обмена linux может иметь одинаковые страницы в памяти и на диске. Это может произойти, когда страница будет импортирована из swap и не изменена. Когда это произойдет, система предпочитает не стирать страницу с диска, потому что ей может потребоваться перезаписать ее без необходимости. Структура данных необходима для отслеживания состояния свопинга и кэширования, а также того, какие страницы были заменены, и т. Д. Детали указаны в ссылке, но своп-кеш - это структура данных, которая обрабатывает эту учетную запись, и это размер зависит от того, насколько велика ваша таблица страниц.

2

Просто давая вам знать, хороший материал:

ServerFault пуски - это StackOverflow для сисадминов

Смежные вопросы