[identity profile] lynx-rousse.livejournal.com posting in [community profile] useful_faq
Есть windows 8.1 Pro x64, есть 16 Гб оперативной памяти. Внимание, вопрос: как заставить запускаемые приложения использовать оперативную память, а не жёсткий диск? Т.е. загружаться туда полностью?
Пример: в uTorrent выставленны настройки на сброс больших кусков памяти на жёсткий диск, часто используемые куски должны быть в оперативе. По факту на загрузке со скоростью 2Мб/с обращние к диску в сумме на 17,5 Мб/с.
Гуглить пытались, Гугл не помог, всем бы наоборот...

Date: 2013-11-02 08:22 pm (UTC)
From: [identity profile] shark-ru.livejournal.com
Система многозадачная. Физическая памать -- общий ресурс. Никак невозможно дать программе возможность монополизировать общий ресурс, потому что тогда каждая программа решит, что она самая умная и это ей нужнее всего. Результатом будет невозможность работы вообще никаких программ. Поэтому никакой возможности монополизировать ресурс программам просто-напрсто не дано. По-моему, очевидная логика, но регулярно кто-то хочет получить возможность выстрелить себе в ногу.
Успокойтесь. Планировщик ОС достаточно хорошо распределяет ресурсы между работающими программами.

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

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

Date: 2013-11-03 10:05 am (UTC)
From: [identity profile] ohshitnotuagain.livejournal.com
Эээ а всякие там приоритеты процессов? Если я хочу вот прямо сейчас выполнять одну задачу максимально эффективно, я не могу позволить его монополизировать все ресурсы?

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

Date: 2013-11-03 06:44 pm (UTC)
From: [identity profile] shark-ru.livejournal.com
> Эээ а всякие там приоритеты процессов?

Приоритеты относительны. Задача переднего плана имеет приоритет больше, фоновая задача -- меньший, задача, выходящая с фона на передний план получает на некоторое время priority boost. Периодически устраивается раздача слонов для голодающих потоков низких приоритетов.

> Если я хочу вот прямо сейчас выполнять одну задачу максимально эффективно, я не могу позволить его монополизировать все ресурсы?

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

Если вы хотите монопольного владения ресурсами, то используйте однозадачную ОС.

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

Выжрать -- это сколько угодно. Монополизации тут не происходит, жадина страдает не меньше всех остальных.
Ну и, конечно, "оперативы" никто выжрать не может. Выжрать можно только виртуальную память.
Edited Date: 2013-11-03 06:47 pm (UTC)

Date: 2013-11-03 06:56 pm (UTC)
From: [identity profile] ohshitnotuagain.livejournal.com
А однозадачные это какие? Они находят сейчас применение?

Date: 2013-11-03 08:09 pm (UTC)
From: [identity profile] shark-ru.livejournal.com
Ну вот ДОС, например, живее всех живых.
Находят в некоторых спецслучаях применение.

Date: 2013-11-04 09:25 am (UTC)
From: [identity profile] xytop.livejournal.com
вот вам список (http://ru.wikipedia.org/wiki/%D0%9E%D0%BF%D0%B5%D1%80%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D0%B0%D1%8F_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_%D1%80%D0%B5%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%B8#.D0.9E.D0.BF.D0.B5.D1.80.D0.B0.D1.86.D0.B8.D0.BE.D0.BD.D0.BD.D1.8B.D0.B5_.D1.81.D0.B8.D1.81.D1.82.D0.B5.D0.BC.D1.8B_.D1.80.D0.B5.D0.B0.D0.BB.D1.8C.D0.BD.D0.BE.D0.B3.D0.BE_.D0.B2.D1.80.D0.B5.D0.BC.D0.B5.D0.BD.D0.B8_.28.D1.81.D0.BF.D0.B8.D1.81.D0.BE.D0.BA.29) таких ос.