LINUX.ORG.RU

Занятая память - помогите разобраться

 


0

1

Ради изучения этого вопроса я почитал руководство по утитилам procps, а именно top и free.

У меня что-то сожрало память на нетбуке. Иногда сам по себе начинается дикий swapping с тормозами системы. Например, при просмотре видео в mplayer без фронт-енда.

Запуск free показал мало памяти, вывод команды будет ниже.

Запустил top, увидел, что Firefox сожрал 49,7% памяти. Все остальные программы съедают максимум 1%, кроме иксов и Konqueror (открыто несколько вкладок).

Нужно объяснить, почему я показываю два лога top. Сейчас Firefox закрылся, вероятно из-за ошибки сегментирования. Когда я делал top с запущенным Firefox, я ещё не знал о сортировке по занимаемой памяти по сочетанию клавиш Shift-M, а теперь знаю, но браузер уже не запущен. Поэтому я дам два вывода команды top: первый с Pidgin, Skype и Firefox и без сортировки по памяти, второй без этих программ, но с сортировкой.

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
16722 zenitur   20   0 1673m 874m  15m S 43.4 49.8   2208:27 firefox
18972 zenitur   20   0  141m  44m  13m S  0.9  2.5   0:06.21 skype
16409 root      20   0  342m  97m  15m S  0.6  5.6 168:10.96 X
16887 zenitur   20   0  147m 7976 3264 R  0.1  0.4   0:38.06 konsole
 4606 zenitur   20   0  597m  27m 8988 S  0.1  1.6   2:27.84 pidgin
16652 zenitur   20   0  281m 4732 1852 S  0.1  0.3   1:10.77 kded
    1 root      20   0  3940   28    0 S  0.0  0.0   0:10.86 init
    2 root      20   0     0    0    0 S  0.0  0.0   0:00.02 kthreadd
    3 root      20   0     0    0    0 S  0.0  0.0   0:08.40 ksoftirqd/0
    6 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/0
    7 root       0 -20     0    0    0 S  0.0  0.0   0:00.00 cpuset
    8 root       0 -20     0    0    0 S  0.0  0.0   0:00.00 khelper
    9 root       0 -20     0    0    0 S  0.0  0.0   0:00.00 netns
  130 root      20   0     0    0    0 S  0.0  0.0   0:04.20 sync_supers
  132 root      20   0     0    0    0 S  0.0  0.0   0:00.05 bdi-default
  134 root       0 -20     0    0    0 S  0.0  0.0   0:00.00 kblockd
  287 root       0 -20     0    0    0 S  0.0  0.0   0:00.00 ata_sff

top - 01:07:12 up 12 days,  6:24,  1 user,  load average: 0.07, 0.10, 0.15
Tasks: 125 total,   2 running, 123 sleeping,   0 stopped,   0 zombie
Cpu(s):  9.1%us,  0.3%sy,  0.0%ni, 90.6%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   1798220k total,  1556644k used,   241576k free,    58216k buffers
Swap:  2097148k total,   114540k used,  1982608k free,   873100k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
16409 root      20   0  355m 152m  17m R  7.0  8.7 177:53.35 X
25983 zenitur   20   0  233m  60m  21m S  0.3  3.5   0:37.61 konqueror
16662 zenitur   20   0  161m  13m 5572 S  0.0  0.8   1:06.32 kdesktop
16664 zenitur   20   0  189m  12m 6124 S  0.0  0.7   3:25.07 kicker
16652 zenitur   20   0  283m  10m 6244 S  0.0  0.6   1:17.39 kded
16689 zenitur   20   0  183m 9968 3484 S  0.0  0.6   0:12.07 konqueror
16887 zenitur   20   0  148m 9864 3616 S  1.7  0.5   0:52.49 konsole
16679 zenitur   20   0  172m 9356 3452 S  0.0  0.5   0:02.51 konqueror
26123 zenitur   20   0  163m 7972 5676 S  0.0  0.4   0:00.08 kio_http
26127 zenitur   20   0  163m 7964 5676 S  0.0  0.4   0:00.05 kio_http
16682 zenitur   20   0  168m 7556 3452 S  0.0  0.4   0:01.67 konqueror
16660 zenitur   20   0  163m 6048 3384 S  0.0  0.3   1:50.63 kwin
26063 zenitur   20   0  156m 5536 4356 S  0.0  0.3   0:00.06 kio_http
26251 zenitur   20   0 27324 5532 4744 S  0.0  0.3   0:00.08 aspell
26041 zenitur   20   0  156m 5504 4324 S  0.0  0.3   0:00.04 kio_http
26064 zenitur   20   0  156m 5488 4312 S  0.0  0.3   0:00.04 kio_http
26093 zenitur   20   0  156m 5488 4312 S  0.0  0.3   0:00.04 kio_http

Вывод free теперь. 256 Мб свободно?! У меня же ничего не запущено!

zenitur@athlon_neo ~ $ free
             total       used       free     shared    buffers     cached
Mem:       1798220    1522324     275896          0      52832     858260
-/+ buffers/cache:     611232    1186988
Swap:      2097148     128524    1968624

Мой вопрос в следующем. Система тормозила, хотя Firefox занимал всего лишь 50% памяти - почему? Все остальные приложения занимали все понемногу, и далеко не гигабайт!

Теперь Firefox выключен - классно, ура! Можно делать всё что угодно. Но почему так мало свободной памяти? Так и должно быть? Мне кажется, что-то сожрало много-много памяти и не видно в процессах.

Возможно, это тоже может повлиять. Из-за бага в проприетарном драйвере ATi/AMD после некоторых полноэкранных игр (Braid, Heroes III) возникает следующая картина: видео, 602 Кб, скриншот, 187 Кб. Мне кажется, здесь возможна утечка памяти.

★★★★★

Последнее исправление: ZenitharChampion (всего исправлений: 5)
Ответ на: комментарий от ZenitharChampion

Хмм, ну может 600 метров это нормально для кед, не знаю. У меня десктоп без браузера и прочих тяжелых приложений больше 150-200 не занимает.

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

Да, я помню что у тебя мало опыта с KDE. Поэтому когда ты ответил, я подумал что ты вообще не сможешь помочь с таким выводом top, в котором кроме X все приложения из KDE.

При старте сжирало меньше. Попробую потестировать баг с ATi/AMD, замерить память до и после него, когда перезагружусь.

ZenitharChampion ★★★★★
() автор топика
Ответ на: комментарий от geekless

Хмм, ну может 600 метров это нормально для кед, не знаю

нормально, хотя у меня сразу после загрузки они 400 занимают

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

Ну я как бы сначала полагал, что ты под «занято много памяти» имеешь ввиду те 600 метров. Я ж не знал, что ты не знаешь, как правильно читать вывод free. :}

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