Голосование

Чему равен размер SWAP?

двойному ОЗУ
одинарному ОЗУ
половинному ОЗУ
тройному ОЗУ
дестярному ОЗУ
SWAP - это зло!
Не знаю

Автор Тема: Swap-раздел. Оперативная память. Общие вопросы свопа и оперативки.  (Прочитано 82006 раз)

Оффлайн Карлсон

  • Участник
  • *
  • Сообщений: 1 699
Угу, побольше читайте "русской" документации. Еще и не такие чудеса прочитаете. Особенно в каких-нить журналах типа Upgrade.
это был hard-n-soft :)

С закрытием единственного путного компьютерного журнала (в котором писали в основном не о компьютерах), читать стало нечего.

Оффлайн greyzy

  • Участник
  • *
  • Сообщений: 277
    • http://samba-doc.ru
С закрытием единственного путного компьютерного журнала (в котором писали в основном не о компьютерах), читать стало нечего.
Почему закрытием, вон он, живет и здравствует http://www.hardnsoft.ru/
« Последнее редактирование: 02.08.2010 13:55:44 от greyzy »

Оффлайн Alukardd

  • Участник
  • *
  • Сообщений: 197
OFF TOPIC:
Очень много чего интересного пишут в ][. Так же для тех у кого нулевой запас знаний по Linux могут полистать LXF (лично мне не понравился - совсем ни о чём).
Так что мне хватает ][ и 3dnews.ru, ну и конечно форумы (читаю про всё что вижу для себя нового и интересного).
Debian Lenny 6.0, Ubuntu 10.04 Lucid Lynx

Оффлайн Rezedent12

  • Участник
  • *
  • Сообщений: 640
  • Цель оправдывает средства.
Некоторые приложения глотают память, и вполне вероятно что в процессе работы они оставляют заполненный своп.
Например, когда я выключил kppp то у меня половина занятой подкачки освободилась в одно мгновение. Наверное он там хранил статистику.. хотя 30 Мб слишком много.
Лиса тоже кстати трогает весьма нехило подкачку при наличии свободной оперативы.

Оффлайн Const

  • Глобальный модератор
  • *****
  • Сообщений: 2 653
  • Даже у плохого модератора есть свои плюсы…
Не, тут мозг закипит, просто когда-то читал, что головка "плавает" над поверхностью как раз из-за мангитного поля, детали не знаю и знать не хочу, поскольку не жизненно необходимо :)
Ужас! Марш перечитывать учебник физики ;)
Ну а насчёт «головка плавает над поверхностью», то это вы «с прямым углом препутал» ;)
Есть такая разработка для накопителей на гибких магнитных дисках большой ёмкости (см. ZIP-диски) под названием Бернулли-диск, когда головка действительно «плавает» над поверхностью, но благодаря эффекту Бернулли, тому самому, благодаря которому летает, к примеру, экраноплан. К магнитным эффектам оно не имеет никакого отношения (ну, вернее, имеет, но только в том смысле, что все взаимодействия мы можем свести к четырём основным ;))

Оффлайн stranger573

  • Мастер
  • ***
  • Сообщений: 1 568
Ага, готовый бинарник, собранный из совершенно реальных исходников ядра с kernel.org и немножко с патчами отовсюду. И если в ядре есть определенный планировщик, или стратегия работы с файлом подкачки, и про них написано в документации, то можете быть уверены, ядра работает именно так, как написано.
Вот именно, что с патчами на усмотрение разработчиков дистрибутива.
В голой консоли возможно swapinness является главным фактором. А вот если есть ещё иксы и DE то Вы абсолютно уверены что именно этот параметр определяет логику работы со свопом? Вы уверены что поведение своп нигде не переопределяется? Например в профилях powersave есть соответствующие настройки. У меня, например, установлено "perfomance" и "сохранять в ОЗУ", поскольку всякие там засыпания не практикую, так как считаю это абсолютно не нужным. Может именно поэтому своп и есть пустой. И кстати посмотрел ещё на нескольких машинах там SUSE и Mandriva установлены (с KDE), там тоже своп пуст. И кстати не сказал бы чтобы мой бук или другие компы на которых смотрел простаивали, всё достаточно основательно нагружено.

И поскольку вижу на реальных машинах, что своп практически не используется не то, что при 99%, но и при 30% свободной памяти, то вполне очевидно что настраивается это в другом месте нежели Вы пишете. Искать в каком не вижу причины, поскольку свободный своп меня вполне устраивает.

Но для KDE с дефолтными настройками подобное утверждение:
Так весь разговор о том, что своп используется даже если 99% памяти свободно.
неверно совершенно.

Оффлайн Карлсон

  • Участник
  • *
  • Сообщений: 1 699
Вот именно, что с патчами на усмотрение разработчиков дистрибутива.

И что, в альтовских ядрах есть патчи, меняющие политику выгрузки памяти на диск?

В голой консоли возможно swapinness является главным фактором. А вот если есть ещё иксы и DE то Вы абсолютно уверены что именно этот параметр определяет логику работы со свопом?

Да, виртуальная память это вещь, которой занимается ЯДРО. Ядру совершенно пофигу, консоль, КДЕ или что-то другое сидит в памяти.

Но для KDE с дефолтными настройками подобное утверждение:
Так весь разговор о том, что своп используется даже если 99% памяти свободно.
неверно совершенно.

Совершенно неверное утверждение.

Оффлайн stranger573

  • Мастер
  • ***
  • Сообщений: 1 568
Совершенно неверное утверждение.
И как ваши слова согласуются с этим:
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
 r  b   swpd   free  inact active   si   so    bi    bo   in   cs us sy id wa st
 2  0      0 695236 346528 823556    0    0    68    18  263  798  8  3 87  2  0
?

Оффлайн Карлсон

  • Участник
  • *
  • Сообщений: 1 699
И как ваши слова согласуются с этим:
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
 r  b   swpd   free  inact active   si   so    bi    bo   in   cs us sy id wa st
 2  0      0 695236 346528 823556    0    0    68    18  263  798  8  3 87  2  0
?

Прекрасно согласуется. Не вижу никаких нарушений своего утверждения.

Оффлайн greyzy

  • Участник
  • *
  • Сообщений: 277
    • http://samba-doc.ru
Прекрасно согласуется. Не вижу никаких нарушений своего утверждения.
Вот ваше утверждение:
Так весь разговор о том, что своп используется даже если 99% памяти свободно.

вот с моего компа:
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
 r  b   swpd   free  inact active   si   so    bi    bo   in   cs us sy id wa st
 2  0      0  90772 1633916 1513404    0    0    52    35  461  197 31  6 63  0  0
И чо, где тут своп используется?
« Последнее редактирование: 05.08.2010 12:45:52 от greyzy »

Оффлайн Карлсон

  • Участник
  • *
  • Сообщений: 1 699
И чо, где тут своп используется?

Специально для вас повторю (раз вы сами не хотите прочитать пару страниц документации): если есть страницы памяти, к которым некоторое время не было обращений, особенно если при этом есть активные операции ввода-вывода (например, читается-пишется много файлов), то страницы памяти будут выкинуты в swap НЕЗАВИСИМО от того, сколько еще незанятой памяти осталось в системе. Это поведение ядра по умолчанию, при параметре vm.swappiness не в краях своего диапазона 0..100.

 То есть swap используется ВСЕГДА, а не только тогда, когда кончается память.

Оффлайн greyzy

  • Участник
  • *
  • Сообщений: 277
    • http://samba-doc.ru
Специально для вас повторю (раз вы сами не хотите прочитать пару страниц документации): если есть страницы памяти, к которым некоторое время не было обращений, особенно если при этом есть активные операции ввода-вывода (например, читается-пишется много файлов), то страницы памяти будут выкинуты в swap НЕЗАВИСИМО от того, сколько еще незанятой памяти осталось в системе. Это поведение ядра по умолчанию, при параметре vm.swappiness не в краях своего диапазона 0..100.

 То есть swap используется ВСЕГДА, а не только тогда, когда кончается память.
Документация документацией, а выводы на лицо, вот запустил я копирование по сетке, как было
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
 r  b   swpd   free  inact active   si   so    bi    bo   in   cs us sy id wa st
 0  0      0  50936 1890616 1289744    0    0    61    37  487  207 31  7 62  0  0
так и осталось.
своп пуст, каким образом он используется? Нельзя ведь про пустой стакан сказать, что он используется, ну или команду какую нибудь покажите

Оффлайн Rezedent12

  • Участник
  • *
  • Сообщений: 640
  • Цель оправдывает средства.
Как сделать так чтоб swap использовался только при исчерпании ОЗУ?

Оффлайн Карлсон

  • Участник
  • *
  • Сообщений: 1 699
Как сделать так чтоб swap использовался только при исчерпании ОЗУ?

Очень помогает чтение документации. Про какой параметр ядра читать сами догадаетесь?

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

Оффлайн Карлсон

  • Участник
  • *
  • Сообщений: 1 699
Документация документацией, а выводы на лицо

[root@intel_server tmp]# free -k
             total       used       free     shared    buffers     cached
Mem:       4052552    4024928      27624          0     241988    3576688
-/+ buffers/cache:     206252    3846300
Swap:     10474296        700   10473596

Будем и дальше обсуждать? Или вы все же прочитаете что-нить по теме? Вас не смущает фраза "если есть страницы памяти, к которым..."?

Кстати, покажите-ка ваш uptame.