Автор Тема: Увеличить объём ОЗУ.  (Прочитано 2557 раз)

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Увеличить объём ОЗУ.
« Ответ #15 : 21.05.2016 02:18:24 »
Здравствуйте. В интернете прочитала, что можно увеличить объём ОЗУ за счет флешки при помощи программы  ReadyBoost. Для Виндовс, разумеется. А с помощью ALT можно сделать что то подобное? И если можно то как? Или такое действие все равно не даст хорошего результата?

Это маркетинговый лохотрон от знатоков.
Есть понятие физической памяти и виртуальной памяти.
Во втором случае, если речь идёт не об SSD-накопителях,вас ожидает существенное падение производительности.
При фатальной нехватке памяти, если не использовать SSD или дорогие высокоскоростные флэшки, есть только один способ мало-мальски пережить просадку по производительности: это использовать два или даже три винчестера, - один на систему, другой на хоум и третий на своп.
В этом смысле, *nix'ы, имеется в виду  FHS, легко уделают операционные системы линейки Windows.
Теоретически, в Windows тоже можно нечто подобное провернуть, но вам это светит гигантским геморроем.
Суть идеи в следующем:
На перемещение головок требуется время, и винчестер будет разрываться между свопом и данными ОС.
Если занятый объём памяти исключая кеш достигнет 90%, вы получите жутчайшие тормоза.
Два винчестера, система/своп, несколько снизят остроту проблемы, но не решат её.
При нехватке физической памяти, вам нужно быть очень осторожной и разборчивой к установке пакетов.
(Вот почему некоторые пользователи предпочитают шелл, а потом через годы это входит в привычку.)
Например в браузере вы можете включить фукцию Открывать вкладки только по запросу, это понизит расход физической памяти, и иногда очень сильно (но такую фишку умеют только браузеры firefox и palemoon). Впрочем вариантов понижения расхода памяти довольно много. Например в xfce не использовать поувер-менеджер, а использовать скрипты.
Перерисовка рабочего стола тоже влияет на быстродействие, и в xfce можно запретить отображать значки на рабочем столе.

Но в любом случае, как только система полезла в своп, это первый сигнал, что пора наращивать объём физической памяти.
На сегодняшний день, оптимально-минимальный объём физической памяти для *nix-систем, это полтора-два гигабайта.
Теоретически можно жить и на гигабайте, но нужно быть внимательным и осторожным.
И забыть про мэйто-кеды.
Холодный старт TDE sysv 64bit p8 на ядре 4.1.21-std-def + konsole с Intel-графикой:
$ free -m
             total       used       free     shared    buffers     cached
Mem:          7903        437       7466          0         26        182
-/+ buffers/cache:        228       7674
Swap:        10607          0      10607

Сизифный (pre-p8) xfce-sysv-i586 с Intel-графикой и ядром 3.14.67-std-def после холодного старта займёт 107 мегабайт памяти.

Оффлайн Крысуня

  • Участник
  • *
  • Сообщений: 130
Re: Увеличить объём ОЗУ.
« Ответ #16 : 24.05.2016 19:23:30 »
Спасибо. Я понимаю, что все можно купить, просто хочется знать для себя, как все работает. Может задаю глупые вопросы... ну я женщина)))... извините.
Хочу понять в чем именно причина тормозов у старого ПК. 1Гб ОЗУ, 1.8Ггц процессор, 3Гб свап. Понимаю, что старье и быстро работать не должен, но если посмотреть системный монитор, то ресурсы свободные все равно есть, хоть и не много. Почему тогда тормозит?

И еще, другая ситуация: был ПК 2 Гб ОЗУ, двухядерный 2.8 Ггц. Операционная система simply, 64 битная. Увеличила память до 4Гб (в реале 3.7, видимо остальное забрал графический редактор), устанавливалась автоматически. Все работает. Сейчас нужно что то делать с файлом свап? Ведь, как читала: при ОЗУ больше 2Гб, свап должен быть таким же по объему. Или нет? И вообще разве можно работать без свап?

Оффлайн ASte

  • Мастер
  • ***
  • Сообщений: 1 566
Re: Увеличить объём ОЗУ.
« Ответ #17 : 24.05.2016 19:37:44 »
Хочу понять в чем именно причина тормозов у старого ПК. 1Гб ОЗУ, 1.8Ггц процессор, 3Гб свап.
Когда не хватает памяти и возникают тормоза из за  своппирования то это сразу становится видно по почти постоянно горящему индикатору диска.
Если диск только временами помигивает, а все работает медленно посмотрите загрузку процессора (top, htop) - если она близка к 100% во время "тормозов" то дело в нем а не в памяти.

Сейчас нужно что то делать с файлом свап? Ведь, как читала: при ОЗУ больше 2Гб, свап должен быть таким же по объему
Если нужен спящий режим то нужен swap не меньше чем объем ОЗУ.
Альтлинукс держит /tmp на tmpfs - это RAM+SWAP. Соответственно какой-то SWAP нужен. 

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Увеличить объём ОЗУ.
« Ответ #18 : 24.05.2016 20:49:18 »
Спасибо. Я понимаю, что все можно купить, просто хочется знать для себя, как все работает. Может задаю глупые вопросы... ну я женщина)))... извините.

:-) Правильные вопросы задаёте. По-сути.

Хочу понять в чем именно причина тормозов у старого ПК. 1Гб ОЗУ, 1.8Ггц процессор, 3Гб свап. Понимаю, что старье и быстро работать не должен, но если посмотреть системный монитор, то ресурсы свободные все равно есть, хоть и не много. Почему тогда тормозит?

Тут надо бы смотреть в монитор процессов. htop например.
Shift+m отсортирует процессы по потреблению памяти.
Shift+p - по потребления ресурсов процессора.

Это проблема комплексная:
DE, видеодрайвер, приложения и т.д.
Тут надо конкретно смотреть, по-месту.


Куда уходит память?

Например имеем загруженный редактор Audacity (4217 - его pid - процесс идентификатор)
$ ps -eo pid,args|grep audacity | grep -v grep
 4217 audacity

Он сейчас занимает памяти, исключая разделяемые библиотеки, почти 17 мегабайт
$ pmap -d 4217|tail -n 1
mapped: 76868K    writeable/private: 16988K    shared: 1044K

Импортируем файл
$ du -m ./Asian\ Trance\ Festival\ -\ Memory\ Loss\ Guestmix\ -\ Aug\ 2014.mp3
138     ./Asian Trance Festival - Memory Loss Guestmix - Aug 2014.mp3

Итого набирается 70 мегабайт занятой памяти
$ pmap -d 4217|tail -n 1
mapped: 135572K    writeable/private: 70180K    shared: 1168K

Точно так же с firefox который отъел под себя гигабайт памяти
$ ps -eo pid,rss,vsz,args|grep firefox | grep -v grep
 3340   288   1824 firefox
 3341 685508 1371728 /usr/lib/firefox/firefox-bin
 3475 49752 220248 /usr/lib/firefox/plugin-container /usr/lib/browser-plugins/libflashplayer.so -appdir /usr/lib/firefox/browser 3341 plugin
$ pmap -d 3340|tail -n 1
mapped: 1820K    writeable/private: 164K    shared: 0K
Цитировать
$ pmap -d 3341|tail -n 1
mapped: 1365452K    writeable/private: 1080296K    shared: 4608K
$ ps axjf|grep firefox|grep -v grep
 2704  3340  2704  2704 ?           -1 S      500   0:00  \_ firefox
 3340  3341  2704  2704 ?           -1 Sl     500  32:48  |   \_ /usr/lib/firefox/firefox-bin
 3341  3475  2704  2704 ?           -1 Sl     500   2:01  |       \_ /usr/lib/firefox/plugin-container /usr/lib/browser-plugins/libflashplayer.so -appdir /usr/lib/firefox/browser 3341 plugin


И еще, другая ситуация: был ПК 2 Гб ОЗУ, двухядерный 2.8 Ггц. Операционная система simply, 64 битная. Увеличила память до 4Гб (в реале 3.7, видимо остальное забрал графический редактор),

Я плохой рассказчик, поэтому копипастом (принцип один и тот же)
Цитировать
Теперь о главном. Устройства, чтобы обмениваться данными с другими устройствами и процессором используют также механизм виртуальной памяти. А именно, за каждым устройством BIOSoм резервируется кусок адресного пространства, обычно в последнем гигабайте (c F0000000), запись в который приводит к передаче данных на устройство. Обычно, по устройством следует понимать сам чипсет, а также видеоадаптер.

Так вот эти 300 мегабайт и заняты у вас под системные нужды.
В x64 системах и 32бит с pae-ядром можно ещё немного освободить памяти:
http://www.probios.ru/options/ram/remap/memory-remap-feature.html
Но не на системах 32бит без pae-ядра, иначе эффект будет прямо до наоборот:
доступная память уменьшится до 2-2.4 гигабайта.
Например на компьютере с залоченным Remap Memory, доступная физическая память будет 8017 мегабайт
$ free -m
             total       used       free     shared    buffers     cached
Mem:          8017       3211       4805          0         70       2081
-/+ buffers/cache:       1060       6957
Swap:        10607          0      10607

при суммарной физической памяти
$ echo $((1024*8))
8192

итого набирается 175 мегабайт
$ echo $((8192-8017))
175

Сейчас нужно что то делать с файлом свап? Ведь, как читала: при ОЗУ больше 2Гб, свап должен быть таким же по объему. Или нет? И вообще разве можно работать без свап?

Тут единого рецепта нет, да и вряд ли будет.
Всё зависит от стиля использования возможностей операционки и приложений.
Например:
Дисплей :0 занимает моя сессия. Дисплей :1, сессия другого пользователя. Иногда мне приспичит на десктопе открыть в фуллскрин игрушку в Дисплее :2. Если усыпить компьютер на диск со сбросом дампа памяти в своп, то его размер может быть никак не два гигабайта, а существенно больше.
« Последнее редактирование: 24.05.2016 21:41:22 от Speccyfighter »