LINUX.ORG.RU
ФорумAdmin

Современная разбивка диска

 


0

4

Давно прошли те времена, когда диск скрупулезно разбивали на 4 раздела -
/boot, /root, /home и даже /var.

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

Сейчас хочу рационально разбить SSD диск сравнительно небольшой емкости в 256 ГБ.

Swap обязательно оставлю. мало ли что.
Root и Home помещу в один раздел.

А вот что делать с Boot - быть или не быть?

Если быть, то какую ФС лучше выбрать?
Потому что заметил, что на всяких там Raspbian и т.п. выбирают даже старинную FAT32.

С чем связан такой выбор - увеличивает скорость загрузки или что?

★★★★★

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

Да хоть тот же браузер постоянно что-то пишет и читает.

А на это пофиг, нехай себе читает.

Кому-то пофиг,кому-то нет.

У меня например подкаталог ~/.cache в моем домашнем каталоге засунут даже не на ssd,а в tmpfs потому что если он лежит на диске то копится и не чистится.И когда там накапливается много то это кэширование начинает браузер замедлять вместо того чтобы ускорять.

watchcat382
()
Ответ на: комментарий от CrX

Лишние — те, которые заставляют HDD «отвлечься» от записи, например, какого-то большого файла на пару секунд

У вас на десктопе

«часто пишущиеся и читающиеся конфиги и подобное»

настолько огромное, что оно заметно «отвлекает HDD от записи» ?

У тебя сегодня день прикапывания к словам? Лишние — в данном случае те, которых можно легко избежать, используя SSD,

Нуу у ssd голов нэма, ваша правда.

Лишние — те, которые заставляют HDD «отвлечься» от записи, например, какого-то большого файла на пару секунд

«пара секунд» на позиционирование головы это не просто HDD, а мертвый HDD. Зачем вы варианты трупов приводите? Мертвенькие SSD себя ещё хуже ведут.

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

Памяти много не бывает

Это выражение было актуально полтора-два десятка лет назад если мы всё еще говорим об обычных десктопах,а не каких-то узкоспециальных высоконагруженных серверах.

Есть данные, которые как раз хорошо бы сбросить в свап и освободить лишние полгига. Их просто тупо держать занятыми, если они по факту не используются.

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

Во-вторых, свап помогает компу «тормозить»

Вот это очень точное замечание:-)

когда что-то пошло нетак, что-то потекло и сожрало всю память. Докупка памяти здесь никак не поможет

Если велика вероятность такой ситуации то имеет смысл озаботиться настройкой квот на память для того юзера от которого запускается это что-то. Именно чтобы падало что-то,а не вставала раком вся система. Впрочем, при отсутствии свопа система вернет ошибку жручей программе при попытке запросить больше чем есть. И тут уже зависит от того как эта ошибка в программе обрабатывается. Надеюсь не так как я однажды видел в коде - цикл «просить пока не дадут» :)

А что ты выигрываешь в случае отказа от свапа?

Избавляюсь от ситуации «система ушла в бесконечный своп и ни на что не реагирует». Нет свопа - нет тормозов. Если не хватает RAM - или добавлять или скать баг из-за которого память течет.

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

Это выражение было актуально полтора-два десятка лет назад

Оно актуально и сейчас. В системе общего назначения памяти по прежнему меньше, чем данных на диске.

Вопроса два: Первый- если эти данные не используются то как они попали в RAM?

Почитай уже, что такое анонимная память

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

если грохнуть системный процесс, то финита ля комедия.

Если система ушла в бесконечный своп и фактически повисла - то ничуть не легче.

запусти echo {1..2000000000}, тебе терминал OoM-Killer сразу его грохнет, а со свопом все повиснет…

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

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

Так я именно за немедленную смерть и агитирую! ОЗУ должно быть столько,чтобы его хватало без свопа при нормальной работе. Если же что-то потекло,то оно сожрет всю память сколько ни дай,его сразу убивать надо. Можно через OOM-killer,можно через квоты,вроде бы есть и более продвинутые средства мониторинга жручести процессов. А пользы от свопа в таких ситуациях никакой - один вред.

watchcat382
()
Ответ на: комментарий от intelfx

Правильно тебе клоуна поставили.

Я никому ничего не навязываю. Лишь привел в пример случаи когда своп это плохо так как приводит к тормозам.

Ну и я не отрицаю что могут быть какие-то особо редкие экзотические условиях когда нужен именно своп,а не больший объем ОЗУ. Как пример - всякие одноплатники,на которые не всегда есть возможность ОЗУ добавить. Но мы тут вроде не про них говорили.

Аргумент в пользу свопа пока был только один - выгрузить в него некие неиспользуемые данные. Но если их много - то с софтом что-то не так,иначе как бы они в ОЗУ попали и зачем? А если мало - то и особого смысла выгружать нет.

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

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

Вот именно поэтому и говорю что своп - это плохо. Потому что он тормоза создает вместо того чтобы нечто жручее было немедленно прибито

Отключение свапа никак не улучшает работу OOM киллера. Наоборот, это приводит к замедлению работы системы при нехватке памяти

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

Аргумент в пользу свопа пока был только один - выгрузить в него некие неиспользуемые данные. Но если их много - то с софтом что-то не так,иначе как бы они в ОЗУ попали и зачем?

Это троллинг тупостью, или ты действительно не можешь нагуглить, что такое анонимная память?

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

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

Какие у тебя критерии выживания памяти? Как определить, в какой момент должен сработать киллер?

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

Ты предлагаешь отказаться от многозадачности и кеширования?

Нет,я предлагаю отказаться от свопа. Именно его я имел в виду под «виртуальной памятью» -так это понималось в классических учебниках,не путаем с виртуальной адресацией ОЗУ.

Система будет использовать свап даже когда доступной памяти много.

Это ложное утверждение. Я почти всё время вижу 0% использования свопа на своих компах так как задачи у меня весьма скромные,а памяти много (в сравнении с потребностями этих задач). В тех случаях когда я вижу не 0%,там совершенно ничтожные цифры типа сотни-другой мегабайтов при объеме ОЗУ в гигабайты.

Вот например прямо сейчас на этом компе с которого обычно сижу на форумах,слушаю музыку и делаю всякие мелочи,не требующие высокой производительности:

 free
               total        used        free      shared  buff/cache   available
Mem:         3933632      948072     1645848      240452     1339712     2397980
Swap:        4074492           0     4074492

Комп старый и слабый,поэтому своп-раздел на нем есть. Зато этот комп мало кушает электричества,что для меня актуально так как живу в полностью автономном доме.

Как видите, использование свопа - ноль.

предназначение свапа — вытеснять редко используемые данные ради сохранения дискового кеша и, в условиях существенного memory pressure, предотвращения вытеснения исполняемого кода процессов.

Если памяти достаточно то исполняемый код и так вытесняться не будет. А то о чем вы говорите - это следствие хронического дефицита ОЗУ в те времена когда это было дорого.

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

Дело не в том, что ты кому-то что-то навязываешь, а в том, что у тебя в комментарии 4.2 фактологический бред написан.

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 1)
Ответ на: комментарий от watchcat382

У меня например подкаталог ~/.cache в моем домашнем каталоге засунут даже не на ssd,а в tmpfs потому что если он лежит на диске то копится и не чистится.И когда там накапливается много то это кэширование начинает браузер замедлять вместо того чтобы ускорять.

Если вы замечаете что кэш браузера влияет на скорость, то что-то у вас не так... ой не так...

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

Каждый день пишите и конпеляете?

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

почему эту рекомендацию распространяете на всех как требование?

Я ничего не требую,я именно что рекомендую,и даже указываю в каком именно случае (компиляция). Есть и другие случаи,но они всё же более редкие. Многоканальный монтаж звука например тоже на SSD лучше работает.

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

виртуальной памятью

Свап — это часть виртуальной памяти.

Это ложное утверждение

Извини, я своим глазам верю больше, чем лоровским ниспровергателям основ и срывателям покровов.

Я почти всё время вижу 0% использования свопа на своих компах так как задачи у меня весьма скромные,а памяти много (в сравнении с потребностями этих задач)

В ситуации «я купил 32 гигабайта памяти, чтобы смотреть котиков на Ютубе» своп действительно мало себя проявляет. Только это не значит, что своп ненужен.

В тех случаях когда я вижу не 0%,там совершенно ничтожные цифры типа сотни-другой мегабайтов при объеме ОЗУ в гигабайты

Ты сам себе противоречить. То у тебя своп это резервная память, то системы лезет туда, даже если памяти установлено с избытком. Ты уж определись.

Если памяти достаточно то исполняемый код и так вытесняться не будет

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

А то о чем вы говорите - это следствие хронического дефицита ОЗУ

Как быть, если никакого дефицита нет, а свап все равно используется?

hateWin ★☆
()
Последнее исправление: hateWin (всего исправлений: 1)
Ответ на: комментарий от intelfx

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

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

Это ты бредишь вместо того чтобы попытаться найти объяснение почему на серверах отключают своп

Так кто отключает-то? Ну, кроме жертв кубера. Я тебе уже несколько раз этот вопрос задал

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

Судя по упоминания в статье ядра 4.0 - всем этим рассуждениям пара десятков лет

И как там, в 2034 году?

Я имел в виду,что писалось это всё еще во времена актуальности четвертого ядра,когда верующих в необходимость свопа было ещезначительно больше чем сейчас,и их мантры ретранслированы в этой статье. И эти рассуждения - из тех времен когда ОЗУ было дорогое и его хронически не хватало. Делать своп равным размеру ОЗУ - это как раз из тех древних времен. А в 90е была рекомендация даже делать его вдвое больше чем ОЗУ.

Пока ты не поймешь, что свап — это не дополнительная медленная память

Это именно что дополнительная медленная память.

У меня 16 гигабайт оперативной памяти. И 32 гигабайта свапа. Регулярно наблюдаю в свапе 4-6 гигабайт данных, когда доступной (avaible) памяти еще очень много. Делай выводы

Делаю. У вас или мало памяти для именно ваших задач и/или так настроена система. При желании от линукса можно добиться агрессивного свопа. Это бывает нужно в особых случаях когда требуется поддерживать возможность одномоментных больших запросов памяти каким-нибудь специфическим софтом,а самой памяти таки маловато чтобы этот запас образовался естественным способом.

Чуть выше я привел пример вывода команды free на этом компе с которого сейчас пишу. Аптайм сегодня - пять с половиной часов - лазание по интернету,слушание музыки,написание почты,ничего серьезного.Использование свопа - ноль процентов. Система - Дебиан 11, но icewm вместо всяких там kde. И такая ситуация - примерно всегда на этом компе. Если мне не придет в голову делать на нем что-то не слишком для него подходящее,но будет лень идти в другую комнату и включать комп с 16G ОЗУ. Вот тогда да, можно пару сотен мегов в свопе увидеть. Но если бы они остались в ОЗУ - ничего бы не изменилось (пробовал своп отключать и вообще с ним экспериментировать). Вывод - при ДОСТАТОЧНОМ для решаемых задач количестве ОЗУ своп не нужен.

Да, мне понятно было желание сэкономить и купить меньше ОЗУ когда это было достаточно дорого. Также могу понять тех кто пользуется компом от случая к случаю и ему жалко на него тратить деньги. Но тем,у кого комп это основной рабочий инструмент - на мой взгляд выгоднее вложить в него дополнительные деньги чтобы экономить время за счет некоторого повышения быстродействия. Тем более деньги-то нынче совсем небольшие.

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

Сейчас нет ограничений ни по деньгам ни по железу.

То что Вы настолько! хорошо поднялись это годно. Но не у всех такая годнота случается. Спрашивать на тему железа даже не буду, нонче это «секретные материалы», каждый добывает как может.

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

Аргумент в пользу свопа пока был только один - выгрузить в него некие неиспользуемые данные. Но если их много - то с софтом что-то не так,иначе как бы они в ОЗУ попали и зачем?
то с софтом что-то не так,иначе как бы они в ОЗУ попали и зачем?

«Случается» что такое нужно. На все случаи жизни рамы не накупишь.

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

А нафига столько-то?

Когда в 1996 году я ставил Дебиан с ядром 1.2.13 - там была именно в точности такая рекомендация. Своп = двухкратному размеру ОЗУ. Вот только на типичном компе тех лет было 8 МЕГАбайтов ОЗУ. Поэтому без свопа там было никак если хотеть Иксы.

Но надо же понимать,что когда ОЗУ стало измеряться гигабайтами, эта рекомендация устарела. Да и сам автор того поста пишет про «несколько гигов в свопе». Всего несколько гигов. Даже при настолько требовательных к памяти его задачах,что линукс начинает использовать своп при 16 гигах ОЗУ.

Жалко место терять.

Честно говоря - уже не особо. Места давно уже стало больше чем можно употребить с пользой если сам не киноман,игроман или еще какой -ман. А вот время - оно критично всегда. Потому что в отличие от дополнительной планки ОЗУ, лишние часы в сутках не купить. И тратить время на совершенно не обязательную перекачку данных в своп и обратно не хочется.

Я когда-то еще давно сравнивал эффект увеличения производительности труда (моего,а не компа) при замене проца на более мощный или при добавлении много памяти без замены проца. Так вот оказалось что добавление памяти влияет очень намного больше.

watchcat382
()
Ответ на: комментарий от anc

«Среднетипичная конфигурация компа».

Залезте в документацию к вашему дистрибутиву и посмотрите что его авторы считают «рекомендуемой конфигурацией». Вот ее я и называю «обычной» потому как дистростроители статистику собирают и на нее ориентируются.

Вы покупаете то что есть «на полке» не думая о характеристиках?

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

watchcat382
()
Ответ на: комментарий от anc

настолько огромное, что оно заметно «отвлекает HDD от записи» ?

Например запись/монтаж звука к этому критичны. При многоканальной записи и так нагрузка на диск большая. С монтажом видео думаю чтоже самое но видеомонтажом мне заниматься не приходилось за отсутствие цифровой видеокамеры с нормальным объективом.

пара секунд» на позиционирование головы это не просто HDD, а мертвый HDD.

И тем не менее коллега прав. Вот вполне реальная ситуация - браузер полез в свой кэш,а там очень много мелких файлов. И все эти движения головок HDD складываются в вполне ощутимую задержку. Вобщем-то тот же самый эффект даёт обращение к любому каталогу с очень большим количеством файлов. На SSD это происходит существенно быстрее.

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

когда верующих в необходимость свопа

Тебе гонор мешает понять, почему свап полезен в системах общего назначения? Это твои проблемы, а не проблемы «верующих в свап».

И эти рассуждения - из тех времен когда ОЗУ было дорогое и его хронически не хватало

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

Это именно что дополнительная медленная память

Почитай, как работает свап и прекрати позориться.

У вас или мало памяти

Выхлоп free -h с тобой несогласен.

или так настроена система

Угу. Я не считаю себя умнее людей, заложивших основы computer science в ее современном виде и реализовавший виртуальную память вместе с подкачкой ещё в мультиксе.

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

Когда тебе надоест повторять одну и ту же чушь?

Чуть выше я привел пример вывода команды free на этом компе с которого сейчас пишу. Аптайм сегодня - пять с половиной часов - лазание по интернету,слушание музыки,написание почты,ничего серьезного.Использование свопа - ноль процентов

Если мне не придет в голову делать на нем что-то не слишком для него подходящее,но будет лень идти в другую комнату и включать комп с 16G ОЗУ. Вот тогда да, можно пару сотен мегов в свопе увидеть

Ты уже неоднократно повторил, что у тебя очень скромные потребности и значительный избыток памяти. Что ты хотел этим сказать? Что при десятикратном запасе памяти можно обойтись без свапа? Молодец, ты только что доказал необходимость свапа для эффективного использования памяти. А зачем ты тогда споришь с теми, кто именно об этом тебе и говорит всю дорогу? :)

Вывод - при ДОСТАТОЧНОМ для решаемых задач количестве ОЗУ своп не нужен

Ты только что блистательно опроверг свое же утверждение :)

hateWin ★☆
()
Последнее исправление: hateWin (всего исправлений: 1)
Ответ на: комментарий от hateWin

Это 870 evo на 250 гигов :)

Ну тогда да. Стоит задуматься об отгрызании 32Гб. Хотя... да фиг его знает сколько у вас занято, может для вас это 90% не используемого.

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

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

Но это же единичные случаи.

и даже указываю в каком именно случае (компиляция).

Т.е. нужно для конпеляции?

Есть и другие случаи,но они всё же более редкие. Многоканальный монтаж звука например тоже на SSD лучше работает.

Что значит «Многоканальный монтаж звука» ? И если «лучше работает», то видимо есть и «хуже». В чем это «хуже» выражается при монтаже?

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

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

С этим не поспоришь. Но вот количество данных,непосредственно используемых в процессе решения какой-то отдельной задачи - уже во многих если не большинстве случаев сравнимо или меньше объема ОЗУ. Когда вы читаете книгу то в памяти вам нужна только эта книга и программа для чтения,а не весь архив флибусты на полтерабайта,лежащий у вас на диске. На диске вообще обычно лежит много того,что используется крайне редко,соответственно также редко и попадает в ОЗУ.

что такое анонимная память

Применительно к программам на Си - это сегмент BSS,то есть то,что в исполняемом файле отсутствует и размещается в памяти при его загрузке в ОЗУ. Я понимаю ваше желание сложить это в своп для неактивных в данный момент программ. Но происходит это желание именно от недостатка физического ОЗУ в те времена когда оно было дорогим. Я и тут вас готов понять так как сам обладаю немалым количеством привычек экономить то,что сейчас уже нет смысла экономить(не только в компах). Но эти привычки безвредны только пока не приводят к потерям самого ценного ресурса - времени. Выгрузка и обратная загрузка обычно относительно небольших сегментов BSS - это именно что бессмысленные затраты времени сейчас,когда ОЗУ стало дешевым. Что вы и сами подтверждаете,говоря что видите у себя в свопе «несколько гигов». Почему бы не доустановить эти «несколько гигов» ОЗУ в комп чтобы не тратить время на бессмысленную перекачку данных через дисковый интерфейс(а если это hdd то еще и на запись/чтение блинов)? Я вот доустановил - и жизнью доволен. Поэтому вижу пустой своп,хотя он на этом компе есть. А есть он потому что операция ресайза разделов с данными раньше была весьма не безопасной. Сейчас вроде бы ее допилили до безопасного исполнения,но привычка опасаться ее у меня осталась. А так бы от ненужного своп-раздела я и на этом компе избавился. Когда буду переустанавливать систему на следующий Дебиан - тогда и переразмечу без свопа. Вот только беда - сейчас на компе всё так хорошо настроено и работает что заниматься переустановкой очень сильно не хочется.

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

Это ты бредишь вместо того чтобы попытаться найти объяснение почему на серверах отключают своп.

Ну если дедушка хочет быть похожим на бабушку, то кто же ему запретит?

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

свап — это не медленная резервная память.

Свап - это медленный эмулятор ОЗУ. В настоящее время не нужный за исключением каких-то редких экзотических случаев.

когда памяти начнет не хватать

Специально для вас уточню - не когда память совсем закончится,а когда ядро посчитает что свободного ОЗУ маловато. Причем этим еще и управлять можно через параметры ядра - когда оно так считать будет.

watchcat382
()
Ответ на: комментарий от hateWin

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

Да, полезно,когда конфигурация компа была выбрана неправильно и ОЗУ недостаточно. Именно не то чтобы критически не хватает, а «маловато будет». И ядро начинает память экономить,выгружая то что в данный момент не сильно нужно - вот анонимные страницы например. Но их обычно немного,так что особо сильно на этом не сэкономить.

watchcat382
()
Ответ на: комментарий от hateWin

это приводит к замедлению работы системы при нехватке памяти

Согласен с вами. Поэтому и говорю что памяти должно быть ДОСТАТОЧНО для обычной работы системы без использования всяких костылей из тех времен когда память была дорогая и ее не хватало.

watchcat382
()
Ответ на: комментарий от hateWin

что такое анонимная память?

Вы лучше нагуглите как померить сколько ее у вас в системе используется и сколько вы на этом сможете сэкономить если даже всю ее теоретически выгрузите в своп. Судя по вашим же словам - «несколько гигов» максимум,это общей экономии так как в своп попадает не только она при недостатке ОЗУ. Так не логичнее ли эти несколько гигов ОЗУ добавить?

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

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

Нет.

Когда вы читаете книгу то в памяти вам нужна только эта книга и программа для чтения

Внезапно, исполняемый код читалки и книга — это и есть файловые страницы, которые улетят на диск, если одмин лохокоста отключит свап. А ещё, — сюрприз, сюрприз!!! — современные операционные системы являются многозадачными. И параллельно с читалкой работает куча фоновых процессов. Эти процессы держат в памяти используемые библиотеки. А ещё они грузят с диска всякие нескучные иконки, куки, логи, кеш браузера, миниатюры предпросмотра, которые создаёт файловый менеджер. И если при каждом переключении контекста система будет вынуждена считывать что-то с диска, особенно если этим чем-то будет исполняемый код, твои впечатления от взаимодействия с компьютером будут не самыми положительными.

hateWin ★☆
()
Последнее исправление: hateWin (всего исправлений: 2)
Ответ на: комментарий от hateWin

Какие у тебя критерии выживания памяти?

Сильно зависит от решаемых задач поэтому «общетеоретические» рассуждения тут будут слишком общими.

Как определить, в какой момент должен сработать киллер?

Например такой вариант - когда какой-то процесс сожрал существенно больше чем его типичное осмысленное потребление. На серверах люди вполне пользуются квотами на память и обычно не испытывают неразрешимых проблем с определением их значений.

Хуже если квоты не были настроены и остается только OOM-киллер. Ну тогда наверно ему надо прибивать самый толстый процесс в случае если в системе осталось свободной памяти меньше чем сисадмин посчитал разумным. И работа OOM-киллера в ядре тоже поддается настройке.

watchcat382
()
Ответ на: комментарий от intelfx

фактологический бред написан.

Где именно? Я всего-то предложил поставить достаточное для работы количество ОЗУ и отказаться от такого анахронизма как своп. Всё равно линуксовое ядро его не использует когда памяти много(относительно тех задач которые на компе решаются). Вот сейчас я пишу это с компа у которого всего 4 гига ОЗУ и поэтому своп-раздел на нем есть. Однако за несколько лет пользования этим компом для «легковесных» задач я лишь считанные разы видел чтобы этот своп использовался хоть как-то(не больше сотен мегов). Собственно,это может проверить каждый, добавив (пусть временно) памяти в своей комп и выключив своп. А то и не выключая видно будет как у меня тут. Только не говорите что нет возможности где-нибудь на время взять планку памяти.

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

когда какой-то процесс сожрал существенно больше чем его типичное осмысленное потребление.

Как определить «его типичное осмысленное потребление» ? Где-то есть специальная табличка в которой это занесено? Т.е например grep не больше чем 1Мб, sed не больше 2Мб, awk не больше 4Мб, gcc не более 8Мб и так далее.

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

Если вы замечаете что кэш браузера влияет на скорость, то что-то у вас не так…

Не так у меня желание в зимнее время экономить электроэнергию,а следовательно топливо для генераторов так как живу в полностью автономном доме и топливо сюда доставляется посредством значительных физических усилий. Это летом халявная солнечная энергия есть поэтому можно даже для лазания по форумам и чтения почты большой комп включать. А зимой предпочтительно пользоваться тем,который кушает поменьше электричества. Соответственно и общая производительность у него поменьше. И чтобы убрать задержки в браузере(пусть и малозаметные) я переместил кэш в tmpfs. Надо сказать - отлично работает,никаких отрицательных эффектов от этого я не обнаружил. Можете и сами попробовать - это же делается буквально парой команд. Для эксперимента даже ничего никуда в конфиги прописывать не надо.

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

Применительно к программам на Си - это сегмент BSS,то есть то,что в исполняемом файле отсутствует и размещается в памяти при его загрузке в ОЗУ.

При чем тут Си? Анонимная память — это память, не ассоциированная с файлами. Всё. Анонимная память содержит в себе то, что существует только в оперативной памяти.

Но происходит это желание именно от недостатка физического ОЗУ в те времена когда оно было дорогим

Это происходит от желания использовать память эффективно. Ты недавно фактически признался, что альтернатива свапу — покупка RAM с многократным запасом. Иными словами, альтернатива — это расход памяти впустую.

Выгрузка и обратная загрузка обычно относительно небольших сегментов BSS - это именно что бессмысленные затраты времени

Когда до тебя дойдет, что выгружается именно то, что редко используется? Выгружается ради того, чтобы разместить в памяти то, что действительно нужно.

Что вы и сами подтверждаете,говоря что видите у себя в свопе «несколько гигов». Почему бы не доустановить эти «несколько гигов» ОЗУ в комп чтобы не тратить время на бессмысленную перекачку данных через дисковый

Наверно потому, что никакой «бессмысленной перекачки» нет. И ты бы это понял, если бы перестал нести ахинею и включил мозг.

Поэтому вижу пустой своп

Потому, что у тебя именно тот самый утрированный юзкейс «я купил 32 гига, чтобы смотреть котиков в единственной вкладке с ютубом». Но даже несмотря на колоссальный избыток памяти, система пользуется свапом, когда это позволяет уменьшить количество обращений к диску.

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

Свап - это медленный эмулятор ОЗУ

Argumentum ad nauseum? Или проблемы с поиском и анализом информации? От того, что ты повторишь эту чушь ещё 200 раз, истиной она не станет.

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

В ситуации «я купил 32 гигабайта памяти, чтобы смотреть котиков на Ютубе» своп действительно мало себя проявляет.

Точнее - вообще не проявляет. И даже не с котиками,а например с компиляцией кода под микроконтроллеры. И самое главное - сколько сейчас в вашей локации стоят 16 гигов памяти (чтобы дополнить до 32 те что у вас уже есть)? Сравните это с другими вашими расходами.

Когда-то я был таким же как вы - экономил память всеми возможными способами. А еще раньше - приходилось и дисковое место экономить.

То у тебя своп это резервная память, то системы лезет туда, даже если памяти установлено с избытком. Ты уж определись.

Нет, если именно с избытком то не лезет совсем. А вот если назапускать чего-нибудь чтобы занятой памяти (по показометру gkrellm например) стало процентов 80 - тогда да, ядро начнет лезть в своп. Сейчас вот у меня показыват 65% занятой памяти и своп пустой.

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

Да,это так. Но есть и третий вариант - объявить свободными и задействовать для работы программ те страницы кэша которые использовались для чтения данных но эти данные не модифицировались. То есть писать их на диск не надо. Обычно таких страниц большинство,так что есть что освободить.

Как быть, если никакого дефицита нет, а свап все равно используется?

Это вы считаете что дефицита нет. А ядро считает что есть. И это его «мнение» поддается настройке. Можно подкрутить настройку так чтобы в свап сбрасывалось всё что только вообще можно сбросить,а можно так чтобы туда хоть что-то сбрасывалось только когда совсем уже памяти мало осталось.

Почитайте про эту настройку например тут: https://server-gu.ru/vm-swappiness/

И вообще о надобности свапа например тут: https://server-gu.ru/do-i-need-swap/

Кстати,я сейчас посмотрел, у меня сейчас swappiness = 60 стоит как в той статье. Можете сами с этим параметром поэкспериментировать. Я экспериментировал и много, ничего серьезного ни разу не сломалось.

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

Вы лучше нагуглите как померить сколько ее у вас в системе используется и сколько вы на этом сможете сэкономить если даже всю ее теоретически выгрузите в своп

Ну ты клоун или да?

$ grep -F '(anon)' /proc/meminfo
Active(anon):    4349372 kB
Inactive(anon):  1016260 kB

Это ровно 50% от общего количества занятых страниц на этой машине прямо сейчас.

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

И вообще о надобности свапа например тут

https://server-gu.ru

А я должен читать этот высер рунетных копирайтеров конкретно почему? Ты бы ещё статью с яндекс-толоки принёс.


Кстати,я сейчас посмотрел, у меня сейчас swappiness = 60 стоит как в той статье

«В той статье» по поводу swappiness написано бездарное 4.2, и любые советы оттуда нужно заведомо обоссать и сжечь.

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 2)
Ответ на: комментарий от watchcat382

А прием тут ваша «солнечная вынергия и другие генераторы»?

И чтобы убрать задержки в браузере(пусть и малозаметные) я переместил кэш в tmpfs.

Ну ёмае, может у вас и hdd 4200rpm который «пыхтит» аки каки мамонта и робит на древнем IDE.

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

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

Как ядро будет вычислять это «типично-осмысленное потребление»?

На серверах люди вполне пользуются квотами на память

Квоты – не панацея.

Ну тогда наверно ему надо прибивать самый толстый процесс

Угу. Прибить отработавший несколько часов компилятор, потому что браузер попросил лишние пару мегабайт.

Бред про настройку киллера проскипан

Настройка киллера не решает тех проблем, которые создаёт отключение свапа.

hateWin ★☆
()