Доктор, я вам про печень, а вы мне про подмышки.
так и не понял. при чем тут богатый - не богатый...
я всего лишь хочу понять принцип. раз уж линукс и Ъ в частности - точная наука, значит должно жеж быть логичное объяснение почему размер свопа должен быть в два раза больше оперативки?

//

812

сантехник пишет:

размер свопа должен быть в два раза больше оперативки?

Хотя бы "не менее" для спящего режима.

mvt с этим я согласен.
из оперативки все переносится в своп
вполне логично что оперативка не может в себя вмещать больше чем она есть

//

814

Может хватит просто высказываться без аргументов? Давайте про домашнего пользователя у которого 1-4 гига оперативы, который качает торенты, смотрит кино, и шуршит вебстраницами. Зачем нужен своп?
1. Если не хватает оперативы.
2. Использовать режим hibernate.
Вот и все.
Если оперативы более 2 гига о нехватке, даже гипотетической можно забыть пока что, но 500-1000 мегов на всякий пожарный случай лучше выделить верно? А вот если юзается режим hibernate, вот только очень хотелось бы услышать зачем это вообще нужно, то на диск в раздел swap сливается содержимое оперативы и питание отключается, верно? Тогда зачем swap в два раза больше? Аргументы времен 128 мег оперативы не катят. Я так это понимаю.

Если у вас не получается разговаривать снисходительным тоном, найдите пользователя Unix, он покажет, как это делается. Скотт Адамс

815

papin-aziat
Вопрос был конкретный
http://linuxforum.ru/viewtopic.php?pid=160979#p160979
Разве не ответили?
http://linuxforum.ru/viewtopic.php?pid=161038#p161038

mvt, при всем моем уважении, где основание для подобных ответов?

на сарае тоже ..й написано, а там дрова лежат

//

817

сантехник пишет:

mvt, при всем моем уважении, где основание для подобных ответов?

на сарае тоже ..й написано, а там дрова лежат

Вы же сами логично заметили, что максимум, что нужно сохранить в спящем режиме не может быть больше объема оперативы, если система не свопит при работе. Нет?

818 (26.03.2011 20:33:00 отредактировано сантехник)

согласен.
значит правило
swap == 2*ram
изначально работало для музейных систем?

тогда получается что это аксиома какая то.
вот нигде не встречал официального мана или хаутушку о том, каким маст би своп
кругом на различных форумах одни лишь дебаты

//

819

сантехник пишет:

согласен.
значит правило
swap == 2*ram
изначально работало для музейных систем?

Да.

820

сантехник пишет:

вот нигде не встречал официального мана или хаутушку о том, каким маст би своп
кругом на различных форумах одни лишь дебаты

Вопрос разбивки диска в никсах это больная тема, отсюда дебаты, до сих пор нет ФС в которой домохозяйка могла бы на лету создавать и менять размер разделов или чего-то там.

Если у вас не получается разговаривать снисходительным тоном, найдите пользователя Unix, он покажет, как это делается. Скотт Адамс

821

как я понимаю, 2рама в свопе нужны на случай "сливаешь ты этак рам в своп гибернеча, а там уже насвоплено половину". Так при существующих режимах рама большей частью мазерборд украшает и гордость юзера тешит. Хорошие занятия.
Про Ъ разбивку дисков можно сказать еще более Ъ - хома должна быть сепаратна. Мой дом только тогда - моя крепость. остальное в действительности детали.
И круто загнать /тмп в простаивающую память. Может, кто из дистростроителей сделает так по умолчанию первый?

друзья, давайте заменим чсВ на ЧСД!
Проблемы. Глюки. Красные глаза. Так будет с каждым, кто не хочет сменить Ubuntu на минт-росинку9
Знаю, что росинка - внучка убунты, значит, неизбежны родимые пятна. Но бабулька-то куда страшнее!
Но наш слакварь стоит на запасном пути. Он ждет своего часа. Может, когда док вернется из бана?

822

yxma пишет:

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

Конечно ни кто так не сделает, слишком заточено будет. Кстати эта настройка диска в опертиве сильно облегчена в FreeBSD. Я быстро отказался от этой темы, например флешролики во фряхе скачиваются в /tmp, и тогда надо делать его достаточно большим, иначе не сможешь качать-смотреть одновременно несколько роликов.

Если у вас не получается разговаривать снисходительным тоном, найдите пользователя Unix, он покажет, как это делается. Скотт Адамс

823

papin-aziat пишет:
yxma пишет:

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

Конечно ни кто так не сделает, слишком заточено будет. Кстати эта настройка диска в опертиве сильно облегчена в FreeBSD. Я быстро отказался от этой темы, например флешролики во фряхе скачиваются в /tmp, и тогда надо делать его достаточно большим, иначе не сможешь качать-смотреть одновременно несколько роликов.

и что, флеш-ролики больше 2Гб будут?
кстати, скорее всего /тмп в рам по умолчанию гонится в лайвах. Хотя я могу быть и не прав.
а настройка диска в рам только в юникс системах достаточно надежна. Ну что мешает это использовать? хотя бы скрипт какой в настройках автозапуска бы написали с возможностью включить/отключить.

друзья, давайте заменим чсВ на ЧСД!
Проблемы. Глюки. Красные глаза. Так будет с каждым, кто не хочет сменить Ubuntu на минт-росинку9
Знаю, что росинка - внучка убунты, значит, неизбежны родимые пятна. Но бабулька-то куда страшнее!
Но наш слакварь стоит на запасном пути. Он ждет своего часа. Может, когда док вернется из бана?

824

сантехник пишет:

вполне логично что оперативка не может в себя вмещать больше чем она есть

купил память - пилить диск?

papin-aziat пишет:

Тогда зачем swap в два раза больше?

а что вы теряете? жалкие 1000 метров диска?

papin-aziat пишет:

Аргументы времен 128 мег оперативы не катят. Я так это понимаю.

сейчас 1гб на диске стал дороже 1гб памяти? мне доказать, что соотношение слабо изменилось? или сами в магазин сходите, посмотрите?
дисковая память стоит копейки, и жалеть её НЕ надо.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

825

сантехник пишет:

тогда получается что это аксиома какая то.

рекомендация для десктопов с большим диском.
для нетбуков с 40Гб диском - не подходит.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

826

yxma пишет:

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

В инсталлере AgiliaLinux есть возможность выбрать занесение /tmp в оперативку.

827 (27.03.2011 12:44:58 отредактировано zhevak)

Люди, а вы хоть раз влетали на процесс своппинга?

У меня иногда такое случается. Ubuntu 10.10, RAM 512 МБ, до кучи из них видяха еще откусывает сколько-то. Пока работаю в штатном режиме, все нормально. Но вот случилось установить комп за круглдосуточным наблюдением датчиков. Отпахал он у меня почти месяц не выключаясь. Приходилось его юзать и с его клавиатуры, и дистанционно через ssh. Поигрался даже с удаленными Иксами... И что? Так на первой же неделе я заметил как он всего каких-то 100 Мегабайт засвопил на диск. Казалось бы, в чем проблема!

А проблема в том, что когда начинается процесс свопинга, наступают жуткие тормоза. Приложения могут открываться по две минуты (например, OpenOfficei или Code::Blocks). Комп начинает очень сильно тупить.

Поэтому я задаю вопрос: что произойдет раньше -- вам надоест созерцать бесконечный процесс свопинга или закончится своп-пространство?

У меня своп был задействован всего на 100-200 МБ. И мне сразу стало ясно -- надо расширять оперативу. (Для Бубунты надо 1 ГБ. Меньше будет маловато. Более 1ГБ -- смысла нет. Для Debian -- мне хватило 512 МБ. Но ведь у каждого свои потребности.)

Своп -- это не предмет штатной работы. Своп -- это парашют, когда комп перезагрузить нельзя, но как наименьшее зло,, чтобы не потерять уникальные данные, можно ждать процессы по несколько минут. Данные не потеряются, но ждать придется -- долго! Очень долго. Вот и прикиньте, сколько вам нужно выделить пространства свопа и сколько времени вы согласны терпеть свопинговый тупизм компа.

Live Free or Die

828

zhevak, я влетал регулярно на kubuntu 10.10, когда кэш "пожирал" 1.4Гб оперативки и ещё начинал захватывать 600-700Мб в SWAP. oO
Система практически зависала минут на 6-10 при каждом выполнении какой-либо программы.

Linux Mint 19.3 Mate Edition
Windows 7

829 (27.03.2011 13:00:11 отредактировано Termo)

По умолчанию раздел подкачки начинает задействоваться в системе при заполнении оперативной памяти на 60%.
На системе где количество ОЗУ около 2Гб swap почти не использовался бы, а на системах где памяти наоборот очень мало,
постоянный свопинг просто убивал бы производительность.
На моей практике, идеально было бы выставить 90% использование памяти до обращения в SWAP разделу.
Делается это очень не сложно:

    * Для такого изменения проще всего Alt+F2, gksu gedit /etc/sysctl.conf
    * Запустится Текстовый редактор с правами суперпользователя и в нем в конец файла вставьте строку vm.swappiness = 10
    * Сохраните изменения и перезагрузите компьютер.

ПатреГ не любит Gnome...

830

Termo, ммм....надо попробовать smile

Да хранит вас Ctrl+S!

831 (27.03.2011 13:56:39 отредактировано сантехник)

законектился к какой то сети, не знаю. ничо не ломал. халява какая то...
как узнать оператора? ну там.. чтоб поюзать все прелести неопознанного оператора?

 Консоль:

gu@pc:~$ traceroute ya.ru
traceroute to ya.ru (93.158.134.3), 30 hops max, 60 byte packets
1  Computer.mshome.net (192.168.0.1)  1.610 ms  2.063 ms  2.531 ms
2  * * *
3  * * *
4  gw.mns.ru (80.70.239.254)  5.308 ms *  6.890 ms
5  aurora-spb-ix.yandex.net (194.85.177.90)  7.386 ms * *
6  * aluminium-vlan901.yandex.net (77.88.56.111)  12.243 ms  14.285 ms
7  www.yandex.ru (93.158.134.3)  14.444 ms  15.009 ms  15.153 ms
gu@pc:~$

матрикс по ходу?

//

832

yxma пишет:

и что, флеш-ролики больше 2Гб будут?

По умолчанию во фряхе предлагают 32 мегабайта /tmp в оперативе, но я расширил до 512, и как то зависнув в ютубе и открыв несколько вкладок быстро переполнил этот раздел, там же ролики по 60-100 мегабайт.

Если у вас не получается разговаривать снисходительным тоном, найдите пользователя Unix, он покажет, как это делается. Скотт Адамс

833 (27.03.2011 14:16:01 отредактировано сантехник)

внатуре матрас))
локалка как у мну

чо можно сделать с жертвой?
зная ее айпи. маску. шлюз и днс адреса?

//

834 (27.03.2011 15:17:34 отредактировано drBatty)

zhevak пишет:

Поэтому я задаю вопрос: что произойдет раньше -- вам надоест созерцать бесконечный процесс свопинга или закончится своп-пространство?

придёт ООМкиллер, и замочит оборзевшее приложение. Прикол в том, что на десктопе это приложение - иксы (обычно). Что не радует новичков, которые почему-то не любят консоль... Потому - прощай все открытые документы, начинаем с нуля.

а засвопить ядро может процессы и без тормозов. например, если во втором экране юзер гимп с большой фоткой открыл. Подправил, и забыл закрыть. Тормоза появятся тогда и если юзер про свой гимп вспомнит.

zhevak пишет:

У меня своп был задействован всего на 100-200 МБ. И мне сразу стало ясно -- надо расширять оперативу. (Для Бубунты надо 1 ГБ. Меньше будет маловато. Более 1ГБ -- смысла нет. Для Debian -- мне хватило 512 МБ. Но ведь у каждого свои потребности.)

сильно зависит от задач.

zhevak пишет:

Своп -- это парашют, когда комп перезагрузить нельзя, но как наименьшее зло,, чтобы не потерять уникальные данные, можно ждать процессы по несколько минут. Данные не потеряются, но ждать придется -- долго! Очень долго. Вот и прикиньте, сколько вам нужно выделить пространства свопа и сколько времени вы согласны терпеть свопинговый тупизм компа.

если у вас ОДНА задача. Да. Но если вы одновременно открываете много разных приложений (больших), то ядро их постоянно свопит, и тормоза возникают лишь при их переключении - одно приложение уходит в своп, второе возвращается оттуда. Очевидно, что если памяти 1000, и свопа 1000, то обменять одну тыщу на другую можно. Но очень долго (надо менять маленькими кусочками, например по 32 байта), а если свопа 2000, то это тривиально, и ОЧЕНЬ быстро - и диск и память оптимизирована на последовательный доступ - можно очень быстро перекинуть одну тыщу в своп, а потом вынуть оттуда вторую. А менять по байтикам - очень долго. Да и в DMA такой фичи нет, чтение есть, запись есть, обмена нет. Потому будете гонять через CPU.

Ессно, обмен памяти целиком - терминальный случай. На практике именно такого нет, но проявляется что-то подобное.

Важно: ничего не изменилось. Всегда был большой диск с дешёвыми гигами, и медленная память с дорогими и быстрыми. Свопирование - операция по смыслу противоположная кешированию. И если у нас есть много данных, которые не нужны, их имеет смысл всунуть в своп. А память использовать как кеш, для быстрого доступа к нужным (сейчас) данным. Так и получается в грамотно настроенном линуксе.

Termo пишет:

На моей практике, идеально было бы выставить 90% использование памяти до обращения в SWAP разделу.

а подумать?

yxma пишет:

И круто загнать /тмп в простаивающую память.

глупо.
Смотрите - вы создаёте временный файл в /tmp, и почти сразу его уничтожаете. А теперь внимание, вопрос: неужели Линус и все разработчики ядра настолько тупые, что-бы писать этот файл на диск? Никуда он не пишется, он дальше памяти никуда и не уходит. Так там и остаётся, в "дисковом кеше". И лежит он там до тех пор, пока память полностью не заполнится. Временный файл ядро может записать на диск лишь в том случае, если
1) ядру делать нефиг
и
2) устройство простаивает.

Но если условия выполнены, то юзер не замечает тормозов.
А вы можете дальше заниматься бесполезными "оптимизациями". Желательно на винфаке ab

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

835

сантехник пишет:

чо можно сделать с жертвой?
зная ее айпи. маску. шлюз и днс адреса?

просканировать порты, и взломать один из доступных серверных компонентов.
Это противозаконно кстати.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

836

drBatty пишет:

... если вы одновременно открываете много разных приложений (больших), то ядро их постоянно свопит, и тормоза возникают лишь при их переключении - одно приложение уходит в своп, второе возвращается оттуда. Очевидно, что если памяти 1000, и свопа 1000, то обменять одну тыщу на другую можно. Но очень долго (надо менять маленькими кусочками, например по 32 байта), а если свопа 2000, то это тривиально, и ОЧЕНЬ быстро - и диск и память оптимизирована на последовательный доступ - можно очень быстро перекинуть одну тыщу в своп, а потом вынуть оттуда вторую. А менять по байтикам - очень долго. Да и в DMA такой фичи нет, чтение есть, запись есть, обмена нет. Потому будете гонять через CPU.

Маленькая поправка.
Пространство свопится не побайтам, и даже не по 32 байта. Минимальный размер для свопинга -- одна страница памяти. Для архитектуры i386 это 4096 байт. Для процессоров Alpha (я их никогда не видел) 8192. байта. Поэтому, если процессу понадобился один байтик, который находится в данный момент на диске, то будет закачено 4096 байт.

При обращении по любому адресу "вытесненной" на диск страницы, происходит исключение. Обработчик этого исключения определяет, что страница в настоящий момент находится на диске и, предварительно вытеснив какую-нибудь "старую" страницу на диск, заберет с диска нужную страницу целиком, т.е. все 4096 байт. Поскольку весь процесс свопинга происходит за пределами текущего (пользовательского) процесса, то последний даже не прочухает, что его данные оказались "выдавленными" на диск. Единственный критерий (для программы), который позволяет уловить, что данных в памяти не оказалось, -- это возросшее на несколько порядков время их получения.

(Блин, кому это ликбез нужен? ac Кому надо, сам все найдет и прочитает. ab )

Live Free or Die

837

zhevak пишет:

Маленькая поправка.
Пространство свопится не побайтам, и даже не по 32 байта. Минимальный размер для свопинга -- одна страница памяти.

я в курсе. Это принципиально? У нас речь про тысячи мегабайт, а вы тут со своими 4К...

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

838

zhevak пишет:

Единственный критерий (для программы), который позволяет уловить, что данных в памяти не оказалось, -- это возросшее на несколько порядков время их получения.

кстати: первый байт будет получен на много порядков дольше. А второй? А миллионный? Пока идёт обработка данных, он автоматически выгружаются с диска.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

839

вот-вот! И я о том же.

Мы знаем все это одинаково хорошо. Не понимаем друг друга в деталях, которые приходится опускать в постах. Из-за этих недомолвок возникают недоразумения, и мы на радость публике ведем "умные" разговоры. А зачем? Я, например, ничего полезного из них не черпаю.

Так, еще раз, -- кому это ликбез нужен?

Live Free or Die

840

zhevak пишет:

вот-вот! И я о том же.
Так, еще раз, -- кому это ликбез нужен?

Не ну можно конечно про сиськи, но форум-то про никсы  smile

Если у вас не получается разговаривать снисходительным тоном, найдите пользователя Unix, он покажет, как это делается. Скотт Адамс