Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Увеличение памяти для приложений WinXP

Модерирует : KLASS, IFkO

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6

Открыть новую тему     Написать ответ в эту тему

Remdale

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В fix128 есть пункт "Увеличить предел адресации данных для пользовательский приложений". Чем он изменяет этот предел?

Всего записей: 214 | Зарегистр. 25-10-2010 | Отправлено: 14:09 13-08-2015
bomzzz



Запрет на пост
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
вот под досом у меня все 4 гига доступны, хотя конечно в памяти до 1 мб кое что занято под драйвера, систему и памяти может не хватить для какого нибудь прожорливого приложения. а эта твоя программка не умеет использовать вместо памяти буфер на диске? тогда можно создать рам диск в памяти недоступной для системы используя всего лишь драйвер специальный
 
Добавлено:

Цитата:
Чем он изменяет этот предел?

наверно вот этим /3g.
ты все же подожди пусть кто нибудь отпишется у кого хотя бы 36 битная адресация поддерживается. я могу неправильно объяснять

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 14:12 13-08-2015
SlavaB

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Remdale
Не занимайтесь ерундой, перед применением никчемных патчей изучите матчасть.
 
32-х разрядная ОС Windows, в зависимости от версии и редакции может выделить приложению более 4-х ГБ адресного пространства, но приложение, если его изначально не запрограммировали и не скомпилировали с соответствующим флагом (IMAGE_FILE_LARGE_ADDRESS_AWARE), не может использовать более 4-х ГБ, какие-бы патчи, настройки BIOS и т.п. Вы не применяли.
Все, что делают всевозможные патчи - включают в младших (десктопных, не энтерпрайз серверных) редакциях Windows функционал старших, энтерпрайз, редакций. Да, после этого можно насладиться цифрами доступной памяти в диспетчере задач, свойствах системы и т.п. И нет - использовать эту память одно приложение по-прежднему не сможет, т.к. не умеет.
Опция /3GB изменяет используемую по-умолчанию деление адресного пространства одного приложения в 2 ГБ пользовательской памяти и 2 - системной), на распределение 3 + 1. Но для того, чтобы это работало, система должна уместится в 1 ГБ.
Т.к. в адресное пространство системной памяти попадают драйверы оборудования, то от них сильно зависит, уместится ли системное адресное пространство в этот 1 ГБ.
 
В т.ч. по этой причине для серверных платформ используют другие компоненты и пишут отдельные драйверы (особенно видео).
 
Резюме из вышесказанного - если 32-х разрядное приложение не умеет работать более с чем 4 ГБ адресного пространства, то без его (приложения) переработки, Вы ничего не добьетесь.
Если конфигурация Вашего оборудования не позволяет ОС разместиться в 1 ГБ системного адресного пространства, то ключ /3GB будет выводить ОС из строя.

Всего записей: 1323 | Зарегистр. 22-07-2003 | Отправлено: 14:17 13-08-2015
Remdale

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
использовать вместо памяти буфер на диске

А как выяснить?

Цитата:
создать рам диск

Уже давно есть. Но после применения одного китайского патча у меня нет недоступной памяти. Видно все 8ГБ. Так что рамдиск в видимой памяти
Цитата:
ты все же подожди

А пофиг. Щас на стационарнике проверю.
 

Цитата:
IMAGE_FILE_LARGE_ADDRESS_AWARE

В FL Studio есть такое

Цитата:
чтобы это работало, система должна уместится в 1 ГБ

На видео выделяется 1ГБ. Так что система в 1ГБ уже не поместится. НО. Я глянул по адресам ресурсов и не насчитал 1ГБ, который выделился на видео. Память для ресурсов (не считая 1мб в начале) начинается с 3072МБ.
В безопасном режиме загружается стандартный VGA драйвер, поэтому с ключом /3GB для приложений выделяется тот 1ГБ памяти, которую занимала видеокарта?
SlavaB, куда делся промежуток 2048-3072? Может это и есть тот 1ГБ для видеокарты? Если так, то при использовании /3GB система отдает нижний диапазон своей памяти

Всего записей: 214 | Зарегистр. 25-10-2010 | Отправлено: 14:31 13-08-2015
SlavaB

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Remdale
Что Вам мешает установить 64-разрядную ОС ? Windows XP, если она Вам дорога, тоже имеет 64-битную редакцию.

Всего записей: 1323 | Зарегистр. 22-07-2003 | Отправлено: 14:48 13-08-2015
dimitriy7



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Но как перевести те диапазоны памяти в мегабайты?

Перевести из 16-ричной системы в десятичную.
У вас выходит 0хС0000000 -> ровно 3 Гб свободных адресов. Именно виртуальных адресов, а не памяти.
 

Цитата:
Мне казалось, что биос раздает только прерывания...  

Далеко не только :)
 

Цитата:
Но после применения одного китайского патча у меня нет недоступной памяти. Видно все 8ГБ.

Ребят, вы не путайте обычную память с виртуальной, это совсем разные вещи.
Патч просто включил 36-битную адресацию в системе, и только. Система -- да, всю память увидела, но каждому процессу диспетчер памяти все равно выдает ровно те же 4 Гб виртуальных адресов. Из которых старшие адреса перекрываются адресами устройств, теми самыми, с вашего скрина. А ключи /3GB и /USERVA только указывают диспетчеру памяти передать процессам значение границы пользовательских адресов в этих виртпространствах.
Соответственно, на этом конкретном железе можно задать /3GB /USERVA=3072, и программы (те, что с "LARGEADDRESSAWARE") смогут использовать по 3 Гб памяти.
А почему не получилось -- да просто из-за давно известных глюков интеловских видеодрайверов, ну не рассчитаны они ни на РАЕ, ни на /3GB. Надо было сразу написать, что у вас интеловская видеовстройка... Снесите их, пользуйтесь стандартным виндовым VGA-драйвером, если уж так важно получить по 3 Гб памяти на процесс.

Всего записей: 2946 | Зарегистр. 09-10-2008 | Отправлено: 15:17 13-08-2015
bomzzz



Запрет на пост
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
в таком случае остается только вторая 64 битная система, без звука но зато с видео нормальным - то есть от плавной прокрутки страниц\окон не будет система подвисать
 
Добавлено:
а че ты сразу не написал какой ноутбук, может драйвер есть на звук

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 15:23 13-08-2015
Remdale

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Что Вам мешает установить 64-разрядную ОС ?

У меня звуковая карта с драйверами только для x32. Это единственная проблема
Опробовал на стационарнике fix128. Там используются /3GB и /USERVA

Цитата:
Именно виртуальных адресов, а не памяти

А разве те виртуальные адреса не связаны с физической памятью? Они же в ОЗУ находятся, а не в свопе. Я его отключил

Цитата:
не путайте обычную память с виртуальной

Насчет 8ГБ я не путал. Нужно было, чтобы ОС видела всю память - сделал с помощью патча. Теперь нужно, чтобы для процесса выделялось больше 2ГБ - пока не сделано, пытаюсь выяснить. Ключ /3GB не подходит

Всего записей: 214 | Зарегистр. 25-10-2010 | Отправлено: 15:32 13-08-2015
bomzzz



Запрет на пост
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
/PAE
Используйте параметр /PAE на компьютерах, поддерживающих режим расширения физических адресов (Physical Address Extension, РАЕ). При загрузке в безопасном режиме компьютер использует стандартное ядро независимо от того, указан ли параметр /PAE.  
 
/3GB
Данный параметр предписывает на компьютерах с процессорами x86 выделять 3 ГБ виртуального адресного пространства для использования программами и 1 ГБ — для использования ядром и исполняемыми компонентами. Программы должны поддерживать дополнительную память. Если указан параметр /3GB, то программам пользовательского режима доступны 3 ГБ памяти вместо 2 ГБ, выделяемых по умолчанию. Если указан этот параметр, ядро использует область памяти, начинающуюся после 3 ГБ. Параметр необходим для определенных конфигураций Exchange Server 2003 и Windows Server 2003.

https://support.microsoft.com/ru-ru/kb/833721
 
Добавлено:
подходит

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 15:41 13-08-2015
Remdale

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
а че ты сразу не написал какой ноутбук

У меня внешная карточка. Хотя даже на карточку не похожа
Edirol UR-80
Может есть способ 32-битный драйвер установить в 64-битной ОС, напр. изменением строк в .inf файле?

Цитата:
подходит

Интересно. Может /maxmem? Как попробую, так сразу и отпишусь
Еще раз повторюсь. /3GB не подходит

Всего записей: 214 | Зарегистр. 25-10-2010 | Отправлено: 16:02 13-08-2015
dimitriy7



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Remdale

Цитата:
А разве те виртуальные адреса не связаны с физической памятью?

Вообще никак не связаны. Они могут отображаться куда угодно: в ОЗУ, в своп, внутрь лежащих на диске exe/dll-файлов, в порты устройств, да даже просто в никуда.
 
 
Добавлено:

Цитата:
Может есть способ 32-битный драйвер установить в 64-битной ОС

Нет.
 

Цитата:
Еще раз повторюсь. /3GB не подходит

Из-за глючного драйвера интеловой видеовстройки. Либо он, либо 3Гб. Либо 64-битная система, четвертого не дано.

Всего записей: 2946 | Зарегистр. 09-10-2008 | Отправлено: 16:06 13-08-2015
bomzzz



Запрет на пост
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
так это прога для музыки. без аудио драйвера на фиг не надо.
 
Добавлено:
http://fl-studio.ru/forum/3-921-1

Цитата:
Решение для 32х битной ОСЛично я проделывал это на Windows XP SP3)
На значке "Мой компьютер" правым кнопкой выбираем
"Свойства" -> вкладку "Дополнительно",
в разделе "Загрузка и восстановление" -> "Параметры" -> "Правка".
Далее блокнотом у вас откроется файл boot.ini
Нам нужно в самом конце всех надписей, без пробела дописать нужные значения
ПЕЧАТАТЬ НУЖНО ВРУЧНУЮ!!! текст не копируем!
пример:\3GB \Userva=2900
1)где \3GB-означает что мы хотим чтоб приложению выделялось 3GB оперативной памяти
2)\Userva=2900- означает, что мы придали максимальное значение, которое должно быть меньше первого примерно на 100mb-ЭТО ОБЯЗАТЕЛЬНО!!!
Вот примерно так должно получится(так у меня):[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional RU" /EXECUTE /FASTDETECT\3GB\Userva=2900  

http://www.youtube.com/watch?v=lo2rHkmk9NI
https://www.image-line.com/support/FLHelp/html/panel_cpu.htm

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 19:20 13-08-2015 | Исправлено: bomzzz, 19:50 13-08-2015
Remdale

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вот что получилось после запуска с ключами \3GB \Userva=2900

4-битное качество
Перепробовал разные ключи для boot.ini. Не помогают.
Единственным выходом есть режим Bridged для плагинов. Тогда каждый плагин выделяется, как отдельный процесс и проект меньше памяти потребляет, но нагрузка на процессор увеличивается.
Теперь осталось хакнуть биос и поставить проц помощнее.
Огромное спасибо за помощь!
 
Добавлено:
Кстати, вот что майкрософт пишет о незапуске ОС при применении /3GB:
 
If you use the /3GB switch in the Boot.ini file to support a program that can use more than 2 GB of virtual address space, a driver may not be loaded when Windows starts. This is more likely to occur with video adapter drivers. This is especially likely to occur if the hardware device contains a lot of onboard random access memory (RAM) that is used as a buffer.  
 
 This problem occurs because the driver is trying to reserve a large block of contiguous virtual memory addresses in the kernel address space to map the device's buffer. When you are use the /3GB switch, the memory that is available to the kernel is halved. The kernel might not be able to allocate a large enough block of memory to satisfy the driver's request.
 
Возможно я был прав. Если бы встроенное видео использовало меньший буфер, то возможно запуск был бы успешным

Всего записей: 214 | Зарегистр. 25-10-2010 | Отправлено: 21:36 13-08-2015
bomzzz



Запрет на пост
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
у тебя не буфер. у тебя видео встроенное, поэтому часть памяти выделяется под память видео карты, а это 512 мб наверно. может можно внешнюю видеокарту засунуть?
 
Добавлено:
http://www.pvladov.com/2013/10/increase-intel-hd-graphics-dedicated-video-memory.html
ничего обнадеживающего
 
Добавлено:
то есть получается судя по всему так. при использовании /3g на 32 битной системе (кстати если верить статье 3 гига для твоего приложения не всем хватает) система и ресурсы устройств должны лежать в границах от 3 до 4 гигабайт, и в этой же границе вместо видео буфера занимается вся память под встроенное видео. так как памяти всего 8 гигабайт, очень даже может быть, что требуемая память под видео 1 гиг.
патчить биос?
знаешь что попробуй - вытащи из ноутбука память до 4 гиг, может тогда буфер на 512 затребуется. три гига правда вряд ли останется. может 6 гиг. и от патча китайскего надо отказаться может из за него косяк какой

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 06:02 14-08-2015 | Исправлено: bomzzz, 06:53 14-08-2015
Remdale

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
внешнюю видеокарту засунуть

Внутри нет разъема для нее.

Цитата:
http://www.pvladov.com/2013/10/increase-intel-hd-graphics-dedicated-video-memory.html

У меня не Intel HD, а Intel GMA. HD раполагается в самом CPU, а GMA встроена в северный мост. HD новее, чем GMA. Но проблема встроенного видео похожа.

Цитата:
3 гига для твоего приложения не всем хватает

Да. Есть такое. Но все же лучше, чем 2. Один плагин (Nexus) всреднем потребляет 100-150МБ. Зависит от пресета. Но кроме него, есть еще и другие. Так что прирост в 1 гиг, здорово помог бы. Запустил щас на стационарнике XP 64-битную. Оказывается там выделяется вся память, а не 2, 3 или 4 гига.

Цитата:
до 4 гиг, может тогда буфер на 512 затребуется

Когда было 3 гига, видео все-равно было 1024.
Это уже похоже на виртуальную память, как говорил dimitriy7. Сначала как бы выделяется 1024, а когда она реально начинает заполняться, то уже используется физическая. Так что при любом количестве ОЗУ на видео будет выделяться 1024. Такой драйвер.

Цитата:
от патча китайскего надо отказаться может из за него косяк какой

Я запускал /3GB со стандартным ядром.

Всего записей: 214 | Зарегистр. 25-10-2010 | Отправлено: 08:43 14-08-2015
bomzzz



Запрет на пост
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
да ни причем тут драйвер. память биос выделяет

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 14:28 14-08-2015
Remdale

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В интегрированной своей памяти нету

Всего записей: 214 | Зарегистр. 25-10-2010 | Отправлено: 16:00 14-08-2015
bomzzz



Запрет на пост
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
нету. конечно может драйвер выделять, а не определяться биосом. но в 32 битной системе это будет в границах от 3 до 4 гиг. может юсб аудиокарта раз слотов нету и для написания музыки 64 битная система
 
Добавлено:
http://www.citilink.ru/catalog/computers_and_notebooks/parts/soundcards/563144/
 
Добавлено:
от 8 долларов стоит
 
Добавлено:
кстати если определяется драйвером в реестре размер буфера скорее всего указан. может есть какие то утилиты тонких настроек драйвера

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 16:15 14-08-2015
dimitriy7



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bomzzz

Цитата:
да ни причем тут драйвер. память биос выделяет

Это ж GMA :) Там БИОС выделяет какой-то минимум, несколько мегов всего, остальное добирает драйвер.
Можно в диспетчере задач посмотреть, сколько памяти доступно системе -- там будет чуть меньше 8Гб, как раз на размер зарезервированного.
 

Цитата:
нету. конечно может драйвер выделять, а не определяться биосом. но в 32 битной системе это будет в границах от 3 до 4 гиг.  

С какой радости? Где угодно может быть, но все равно ниже устройств.
 
Remdale

Цитата:
Запустил щас на стационарнике XP 64-битную. Оказывается там выделяется вся память, а не 2, 3 или 4 гига.

Вся -- только для нативных 64-битных приложений. Для обычных 32-битных по-прежнему 2 Гб, для 32-битных с "largeaddressaware" -- уже 4 Гб (а не 3).
Вот тут почитайте, как оно устроено (справедливо для ХР с СП2 и всех более новых):
http://www.thevista.ru/page.php?id=10542 -- со стороны системы
http://www.thevista.ru/page.php?id=10539 -- со стороны приложений

Всего записей: 2946 | Зарегистр. 09-10-2008 | Отправлено: 17:04 14-08-2015
bomzzz



Запрет на пост
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
не выделяет а использует для vga режимов, а кто выделяет память неизвестна. может как биос так и драйвер. по крайней мере память зарезервированная другими устройствами где биосом задается там остается. область вряд ли фрагментируется, документацию надо читать

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 17:29 14-08-2015 | Исправлено: bomzzz, 17:32 14-08-2015
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6

Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Увеличение памяти для приложений WinXP


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.Board
© Ru.B0ard 2000-2026

LiteCoin: LgY72v35StJhV2xbt8CpxbQ9gFY6jwZ67r

Рейтинг.ru

Рейтинг.ru