Что относительно никакой подкачки?

ulimit встроенная оболочка, не внешняя команда. Это должно быть встроено, потому что это действует на сам процесс оболочки, как cd: пределы, как текущий каталог, являются свойством того конкретного процесса.

sudo bash -c 'ulimit -n 4096' работал бы, но это изменит предел для процесса удара, вызванного sudo только, который не помог бы Вам.

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

Поэтому необходимо расположить, что все процессы имеют жесткий предел для открытых файлов по крайней мере 4 096. Можно сохранить мягкий предел в 1 024. Прежде, чем запустить тот процесс, который требует большого количества файлов, повысьте мягкий предел. В /etc/security/limits.conf, добавьте строки

paislee hard nofile 4096
paislee soft nofile 1024

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

ulimit -Sn unlimited

повысить мягкий предел жесткому пределу.

4
06.11.2012, 19:07
6 ответов

Без подкачки будут уничтожены приложения (вместо того, чтобы быть подкачанным), если у Вас закончится память; у Вас также будет больше замедления при отключении кэширования файловой системы поскольку оно должно будет считать диск больше.

Что касается требования подкачки, Вы смогли избегать его (или использовать маленькую подкачку), если Вы истратили RAM на своей машине.

2
27.01.2020, 20:50
  • 1
    я соглашаюсь на самом деле с уничтожаемыми приложениями, который происходит так или иначе однажды подкачка, полон. То, что имеет значение больше всего для меня, минимизируют записи на диск. –  capitano666 06.11.2012, 19:02

Компиляция некоторых приложений C++ может легко использовать огромные объемы памяти, который делает свопинг удобным, даже на современных компьютерах.

2
27.01.2020, 20:50
  • 1
    , я могу также добавить, что без подкачки, компилируя крупные приложения может привести к ядру, прося, чтобы Вы рассмотрели принесение в жертву Вашего ребенка: "Из памяти: Уничтожьте процесс 4135 (Firefox) счет 119 или пожертвуйте ребенком", "Уничтоженный процесс 4135 (Firefox) общее-количество-vm:1407964kB, скоро-rss:481936kB, файл-rss:168kB" –  Alexander 09.11.2012, 03:31

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

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

1
27.01.2020, 20:50
  • 1
    К сожалению, я не могу увеличить RAM выше 1.5 ГБ, я указал бы это ограничение. О "только использует память, которая иначе свободна", насколько я - осведомленные попытки Linux максимизировать использование памяти путем заполнения ее как можно скорее, я неправильно? –  capitano666 06.11.2012, 18:59
  • 2
    Подкачка требуется, чтобы приостанавливать. –  jordanm 06.11.2012, 20:17
  • 3
    @jordanm, нет, это только требуется, чтобы быть в спящем режиме, не приостанавливают. –  psusi 06.11.2012, 20:45
  • 4
    @capitano666, да, который был бы неправильным. Ядро пытается кэшироваться, недавно получил доступ к файлам с помощью любой памяти, иначе не используемо. –  psusi 06.11.2012, 20:46
  • 5
    я соглашаюсь. Если необходимо использовать подкачку, существует что-то не так. Той вещью, идущей не так, как надо, мог быть Java, хотя;-/ –  Nils 07.11.2012, 23:40

Именно так у Вас есть ответ от кого-то, кто испытал его - я взломал свою опытную хромовую книгу с Ubuntu и более поздним Бодхи Linux, и не использовал подкачку на нем (так как он только имел диск на 16 ГБ). Это имело 2 ГБ поршня и никогда не давало мне проблему, быть этим просмотр, компиляция ядер андроида или использование Eclipse.

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

1
27.01.2020, 20:50
  • 1
    Печально я ограничен и в поршне и в диске материнской платой нетбука и форм-фактором. –  capitano666 08.11.2012, 20:22
  • 2
    хорошо бодхи сделал фантастический на моем Chromebook с 2/16. Это выглядит хорошим, и это очень настраиваемо несмотря на свое маленькое место на поршне и диск. –  Drake Clarris 08.11.2012, 21:02

У меня есть hp мини-1 000 нетбуков, которые я использовал в течение нескольких лет теперь (3, возможно, 4), который имеет очень раннюю модель 8GB ssd и 1 ГБ поршня.

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

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

Существует большая статья о archwiki, затрагивающем эту тему.

1
27.01.2020, 20:50
  • 1
    Спасибо, это - на самом деле мой профиль (за исключением того, что мне удалось обновить до 1.5 ГБ поршня). Возможно, для тяжелой компиляции я полагал бы, что возможность создать временный своп-файл только, чтобы быть защищенной от из памяти уничтожает. Моей реальной проблемой является то, что проклятый диск подвешивает целую систему при выполнении большой записи. –  capitano666 08.11.2012, 19:47

Никакая подкачка не означает, что приложения откажут, если у Вас закончится RAM. С подкачкой Вы получаете предупреждение, потому что Ваша система становится медленной сначала.

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

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

Подкачка необходима для спящего режима. У Вас должно быть, по крайней мере, столько подкачки, сколько виртуальная память, занятая данными приложения во время спящего режима (т.е. “- / + буферизует/кэширует” строку free вывод), плюс несколько мегабайтов для ядра.

1
27.01.2020, 20:50
  • 1
    О редко необходимых процессах (или часть процессов), программа подкачки только разгрузит их для памяти и перезагрузит их от диска на отсутствии страницы? Если это работает как, я думаю, что это делает не должно быть никакого различия между чтением их из исходного файла или из подкачки. –  capitano666 08.11.2012, 19:43
  • 2
    @capitano666 Это - то, что происходит для данных, считанных из файла (включая код). Это не становится подкачанным (потому что было бы бессмысленно записать что-то для свопинга, когда это уже находится на диске). Я имел в виду данные во время выполнения, т.е. память чтения-записи процесса, которая не поддерживается диском. –  Gilles 'SO- stop being evil' 08.11.2012, 20:04

Теги

Похожие вопросы