08 января 2009

Команда /bin/free "в картинках"

Команда free выводит информацию об общем числе свободной и использованной памяти, включая swap. Для того, чтобы было понятнее, как трактовать вывод команды, на приведенном ниже рисунке я показал результат исполнения команды free в Dom0 на моем рабочем ноутбуке:

Ключ -m говорит о том, что размер памяти нужно выводить в мегабайтах. Еще один ключ -l позволяет посмотреть сколько памяти использовано в каждой из зон:
[andrey@server1 ~]$ free -l
total used free shared buffers cached
Mem: 1819648 1807228 12420 0 56504 1257716
Low: 738260 728896 9364
High: 1081388 1078332 3056
-/+ buffers/cache: 493008 1326640
Swap: 2048276 8 2048268
Если бы я отдал эту же команду на установленной 64-разрядной ОС, то в строке, относящейся к ZONE_HIGMEM, я бы увидел 0. Обзор модели памяти Linux можно почитать в статье на IBM developerWorks Россия. Если же вы готовы к "глубокому погружению", то ничего лучше "Ядро Linux. 3-е издание" Бовет, Чезати на русском языке я не видел.

4 комментария:

Unknown комментирует...

а цифра 901 почему осталась не при делах?

Andrey Markelov комментирует...

Для наглядности, чтобы не загромождать картинку. Откуда взялось 901 и так видно (занято + буферы + кэш) или (общее число памяти - свободное). Единственное что может смутить - это плюс-минус единица из-за ошибок округления, но тогда не используйте ключ -m. А если возникнет вопрос "куда потерялась оставшаяся память?", то ответ можно найти в dmesg поиском по [Mm]emory :)

iOsX комментирует...

Ыыы... Андрей dmesg в картинках будет ? :)

Andrey Markelov комментирует...

Будет /proc/meminfo.