Как я могу запустить полное приложение из RAM? [дубликат]

Возможный дубликат:
Могу ли я использовать всю оперативную память для данных приложения?

Когда я делаю некоторые вещи в фоновом режиме (распаковка, компиляция, резервное копирование и т.д.), мой hdd находится под нагрузкой, и, например, Firefox и Chromium очень долго запускаются и реагируют очень медленно.

Пока мой hdd находится под нагрузкой, у меня все еще много свободной оперативной памяти и свободного процессора.

Как я могу скопировать весь Firefox или Chromium, включая все зависимости, в оперативную память?

Меня не волнует постоянство, я просто хочу просматривать некоторые сайты, видео и т.д.

Есть инструкции по помещению кэша в /dev/shm, но это не сильно ускорило работу. Получить профиль на RAM-диск тоже может быть легко... Но как доставить двоичные файлы со всеми зависимостями в RAM?

4
задан 13 April 2017 в 15:24

4 ответа

Ядро Linux автоматически загружает используемые файлы в оперативную память, поэтому не будет особой пользы от выполнения того, что вы просите. Когда вы компилируете или выполняете другие процессы с большой нагрузкой, вы описываете узкое место ЦП (мощность процессора). Наилучшим решением было бы поиграться с приоритетами, присвоенными каждой работе, - в частности, установить «фоновые» задания, чтобы они занимали меньше ресурсов ЦП, затрачивая на это больше времени.

Это можно сделать с помощью команды nice: http://manpages.ubuntu.com/manpages/oneiric/man2/nice.2.html

0
ответ дан 13 April 2017 в 15:24

Вам не нужно копировать все зависимости в ОЗУ, поскольку приложение Modern не загружает все свои функции одновременно. Они загружают их с диска, когда это необходимо.

Да, система может иногда использовать жесткий диск, чтобы освободить место для достаточного объема ОЗУ, чтобы она могла загрузить другое приложение, которому может потребоваться больше ОЗУ. Таким образом, он использует функцию под названием «Обмен».

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

Итак, если вы считаете, что у вас достаточно ОЗУ, чтобы вообще не использовать подкачку, вы можете вообще отключить подкачку.

Чтобы временно отключить обмен : запустите этот sudo swapoff -a в терминале и нажмите Enter.

Если вы хотите отключить подкачку постоянно, сделайте это :

  • Откройте терминал и запустите sudo gedit /etc/fstab
  • Осторожно удалите строку, содержащую слово [ 112]. сохранить и выйти из Gedit.
  • Перезапустите и войдите снова.

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

Для резервного копирования : sudo cp /etc/fstab /etc/fstab.backup

Для восстановления : sudo cp /etc/fstab.backup /etc/fstab

Надеюсь, это поможет

0
ответ дан 13 April 2017 в 15:24

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

Также, сколько данных процесса, загруженного в RAM, определяется приложением. Если приложению требуется больше памяти, чем доступно, то ОС обрабатывает ее, записывая некоторую ее часть на виртуальную страницу (пространство SWAP в системе Linux). (Поиск по Paging technique of OS). Поэтому, если у вас достаточно памяти, убедитесь, что ОС использует ее правильно, как того требует приложение.

Так что, в принципе, вы ничего не можете скопировать в RAM. (И что такое RAM диск?). Запись в ОЗУ выполняется ОС.

Я сомневаюсь в одном утверждении, что there are plenty free CPU while the background task is running. Возможно, вы что-то неправильно поняли.

Последнее, что вы можете использовать для изменения приоритета процесса, чтобы процессор давал больше времени этому процессу. renice или nice - это команда. Но при смене приоритета ожидается возможность зависания / сбоя системы, нестабильное поведение.

0
ответ дан 13 April 2017 в 15:24
  • Запустите любые приложения до запуска интенсивных процессов (компиляции). Таким образом, они будут уже загружены в ОЗУ и должны реагировать быстрее.

  • Уменьшите swapiness, чтобы избежать использования swap, тем самым уменьшая использование диска. Обратите внимание, что изменение swapiness не не отключает файл подкачки, а только делает ядро ​​более консервативным при принятии решения о перемещении объектов подкачки. Очень низкая перестановка заставит ядро ​​не использовать подкачку, если у вас нет абсолютно положительного недостатка ОЗУ. http://en.wikipedia.org/wiki/Swappiness

  • Запустите ваши интенсивные процессы, используя nice и ionice, чтобы уменьшить свои ЦП и I / О приоритет, это должно сделать интерактивные приложения более отзывчивыми. Прочитайте man nice и man ionice, чтобы понять, что делают эти две утилиты.

    nice -n 19 ionice -c2 -n7 your-intensive.process

0
ответ дан 13 April 2017 в 15:24

Другие вопросы по тегам:

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