[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Как предотвратить жёсткие зависания компьютера в ресурсоёмких играх?



22 марта 2017 г., 16:44 пользователь Коротаев Руслан
<subscribe@mail.kr.pp.ru> написал:
>
>
> Меня просто смутило: «Linux начинает выгружать из памяти код запущенных
> процессов. Сделать это он имеет право даже при отсутствие swap'а, т.к.
> копия этого кода есть на жестком диске и он всегда сможет подгрузить
> этот код».

А что вас в этом смутило?

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

Вы поняли правильно. В FAQ, который я указал, это написано явным образом:

  Since every executable program
  and shared library is a file backed mapping, this means the system yanks
  executable pages, which is generally faults back in fairly rapidly since
  they tend to get used a lot.

> Теперь всё прояснилось — когда памяти не
> хватает, ядро начинает выделять память за счет страничного кэша (page
> cache). О страничном кэше можно почитать здесь [1].

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

-- 
With best regards
  Max Dmitrichenko

Reply to: