Ru-Board.club
← Вернуться в раздел «Microsoft Windows»

» Увеличение памяти для приложений WinXP

Автор: dimitriy7
Дата сообщения: 13.08.2015 16:06
Remdale

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

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


Добавлено:

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

Нет.


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

Из-за глючного драйвера интеловой видеовстройки. Либо он, либо 3Гб. Либо 64-битная система, четвертого не дано.
Автор: bomzzz
Дата сообщения: 13.08.2015 19:20
так это прога для музыки. без аудио драйвера на фиг не надо.

Добавлено:
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
Автор: Remdale
Дата сообщения: 13.08.2015 21:36
Вот что получилось после запуска с ключами \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.

Возможно я был прав. Если бы встроенное видео использовало меньший буфер, то возможно запуск был бы успешным
Автор: bomzzz
Дата сообщения: 14.08.2015 06:02
у тебя не буфер. у тебя видео встроенное, поэтому часть памяти выделяется под память видео карты, а это 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 гиг. и от патча китайскего надо отказаться может из за него косяк какой
Автор: Remdale
Дата сообщения: 14.08.2015 08:43

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

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

Цитата:
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 со стандартным ядром.
Автор: bomzzz
Дата сообщения: 14.08.2015 14:28
да ни причем тут драйвер. память биос выделяет
Автор: Remdale
Дата сообщения: 14.08.2015 16:00
В интегрированной своей памяти нету
Автор: bomzzz
Дата сообщения: 14.08.2015 16:15
нету. конечно может драйвер выделять, а не определяться биосом. но в 32 битной системе это будет в границах от 3 до 4 гиг. может юсб аудиокарта раз слотов нету и для написания музыки 64 битная система

Добавлено:
http://www.citilink.ru/catalog/computers_and_notebooks/parts/soundcards/563144/

Добавлено:
от 8 долларов стоит

Добавлено:
кстати если определяется драйвером в реестре размер буфера скорее всего указан. может есть какие то утилиты тонких настроек драйвера
Автор: dimitriy7
Дата сообщения: 14.08.2015 17:04
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 -- со стороны приложений
Автор: bomzzz
Дата сообщения: 14.08.2015 17:29
не выделяет а использует для vga режимов, а кто выделяет память неизвестна. может как биос так и драйвер. по крайней мере память зарезервированная другими устройствами где биосом задается там остается. область вряд ли фрагментируется, документацию надо читать
Автор: dimitriy7
Дата сообщения: 14.08.2015 17:47
bomzzz
Вот честно, совсем тебя не понял...

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

То, что сразу резервируется БИОСом -- исключается из объема физической памяти, система этих нескольких мегов не увидит. Так что известно.

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

Не память, а адреса. А физическая память, используемая видеовстройкой, вообще не имеет отношения к этим адресам.


Добавлено:
PS
Remdale

Цитата:
Сначала как бы выделяется 1024, а когда она реально начинает заполняться, то уже используется физическая.

Угу. Драйвер где-то резервирует себе гиг памяти, но при нестандартной границе юзер-зоны не может правильно его использовать:

Цитата:
Доступ к дополнительной виртуальной памяти является опциональным, потому что некоторые приложения рассчитаны на то, что им будет предоставлено не более 2 Гб адресного пространства. Так как старший разряд указателя, ссылающегося на адрес ниже отметки 2 Гб, всегда является нулем, они использовали бы его как флаг для их собственных данных, очищая его прежде, чем ссылаться на данные. Если бы такие приложения работали в 3-х гигабайтном адресном пространстве, они бы отсекли указатели, значения которых находятся выше 2 Гб, вызывая тем самым ошибки, в том числе и возможное нарушение целостности данных
при /3GB, и

Цитата:
В ходе тестирования выяснилось, что многие системы аварийно завершают работу, зависают и отказываются загружаться. Происходит это из-за того, что некоторые драйверы устройств, в особенности аудио- и видеоустройств, которые, в основном, встречаются в клиентских системах, а не в серверах, запрограммированы на работу с физическими адресами в пределах 4 ГБ. Эти драйверы, оказываются, обрубают адреса свыше 4 ГБ, что приводит к повреждению содержимого памяти со всеми вытекающими последствиями
при РАЕ.
Собственно, всё уже сказано -- на этом железе можно сделать больше 2 Гб на процесс, только если не использовать интеловский видеодрайвер. Хотя, возможно, даже и без него какой-нибудь еще драйвер заглючит...
Автор: Remdale
Дата сообщения: 14.08.2015 18:28

Цитата:
Можно в диспетчере задач посмотреть, сколько памяти доступно системе


Что называется файлом подкачки в диспетчере задач?
PS. Я pagefile отключал

Цитата:
Вся -- только для нативных 64-битных приложений. Для обычных 32-битных по-прежнему 2 Гб, для 32-битных с "largeaddressaware" -- уже 4 Гб

Спасибо. Полезная информация. Раньше не знал

Цитата:
для этого (/3GB) режима характерна такая схема разделения физической памяти, при которой процессам пользовательского режима достается 3 ГБ, а системе - всего 1 ГБ. В целях повышения производительности в ОС Windows Server 2008 для системных нужд резервируется более значимая доля адресного пространства

Т.е. если я перейду на 32-битную Windows Server 2008, то есть шанс, что система успешно запустится с ключом /3GB?

Цитата:
Хотя, возможно, даже и без него какой-нибудь еще драйвер заглючит...

Надо было поотключать все устройства перед использованием /3GB. Щас проверю

Добавлено:
Попробовал. Не помогло. Надо будет попробовать на чистой системе, после переустановки.

Цитата:
от 8 долларов стоит

та фигня не для написания музыки, а для прослушивания. В студийной звуковухе есть ASIO драйвер. К тому дешевому варианту даже студийный микрофон не подключишь))
А покупать новую для 64-битной системы я пока не хочу.
Автор: dimitriy7
Дата сообщения: 14.08.2015 18:56
Remdale

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

Сумма физической памяти и файла подкачки.

Да, и видно, что системе доступно 8253224 кб памяти. 8 Гб -- это 8388608 кб, т.е. БИОС забрал для видеовстройки 128Мб памяти.


Цитата:
если я перейду на 32-битную Windows Server 2008,

, то у вас будет другой видеодрайвер, от ХР не подойдет.
И звуковой драйвер тоже:
http://habrahabr.ru/post/115092/
Попробуйте, конечно.
Автор: bomzzz
Дата сообщения: 15.08.2015 06:32
а почему так мало памяти для видео?
Автор: Remdale
Дата сообщения: 15.08.2015 12:53
А вы не знаете, где могут помочь хакнуть биос? Может есть какие-нибудь форумы русскоязязычные?
Автор: bomzzz
Дата сообщения: 15.08.2015 12:57
вот тебе русскоязычный форум: берешь биос, потом в зависимости от того какой он типа там авард, ами... берешь утилиту для распаковки. распаковываешь модули. ищешь модуль видео, хорошо если он отдельный, а не в делан в главный модуль. потом берешь ирду или другой какой дезассемблер и сидишь код ковыряешь, если повезет найдешь, то что надо. ассемблер надо знать и утилитами пользоваться уметь. но если речь идет всего о 128 мб, то это смысла не имеет
Автор: Remdale
Дата сообщения: 15.08.2015 13:02
А можно ссылочку пожалуйста? Не могу найти. У меня биос INSYDE H2O
Автор: bomzzz
Дата сообщения: 15.08.2015 15:28
это уефи, для него вроде есть какие то самодельные утилиты. набери в гугле как распаковать биос уефи типа такого. может вообще утилиты не быть

Добавлено:
можнол еще так сделыть. тьолько запускаться скорее всего придется не как уефи. взять grub4dos загрузить его, скопировать всю память биоса в файл, а тама ковыряться, чтоб таблицу переписать которая передается потом в защищенный режим об устройствах. так же как для слома семерки делается. тема груба есть, как им пользоваться подскажут, декодировать придется самому
Автор: dimitriy7
Дата сообщения: 15.08.2015 16:46
Remdale

Цитата:
INSYDE H2O

Лучше не лезте в него, это такое болото... Превратите комп в кирпич, потом будете по сервисам ходить.

Ну и да, проверьте все же /3GB сначала на чистой системе, без драйверов -- если заработает, значит, не в БИОС дело.
Автор: bomzzz
Дата сообщения: 16.08.2015 00:19

Цитата:
Превратите комп в кирпич,

да лучше грубом делать. по крайней мере пока официальных перепаковщиков нет. или свой программатор надо иметь
Автор: metatrop
Дата сообщения: 16.08.2015 18:24

dimitriy7

Цитата:

но, опять же, приложения должны быть скомпилированы с поддержкой LARGEADDRESSAWARE или AWE. FL Studio к таким разве относится?


LARGEADDRESSAWARE - это битовый флажок в заголовке .exe файла. Его можно включить для любого приложения (например, с помощью Hiew или editbin.exe), даже если его авторами это не задумывалось, и подавляющее большинство их будет работать корректно, используя до 3 ГБ (разумеется, если система запущена с /3GB в boot.ini).

Чтобы приложения некорректно работали в LARGEADDRESSAWARE, нужны некие "нетривиальные усилия" со стороны разработчика ПО. Стоит отметить, что выделить один непрерывный блок более 2 ГБ система не даёт ни в каком случае (и ни одна программа в здравом уме не выделяет память чрезмерно большими непрерывными кусками), поэтому не существует проблемы переполнения 32 битных смещений со знаком.

AWE - совсем другое дело, ибо там нужны совершенно другие алгоритмы работы с памятью, т.е. сами программы должны быть написаны иначе. Таких программ крайне мало. Хотя, если человек занимаетесь программированием, то для своих целей он всегда сможет использовать через AWE, скажем, 10 ГБ (на 32-bit Windows Server 2003).


По поводу драйверов видео, кстати, стоит заметить, что новые видеокарты NVidia с 2 ГБ видеопамяти берут из адресного пространства всего лишь окно размером в 256 МБ и, таким образом, являются более экономными, нежели более старые, которые могли для 512 МБ видеопамяти отбирать ровно 512 МБ адресного пространства.
Автор: Remdale
Дата сообщения: 16.08.2015 23:29

Цитата:
это уефи

Разве? Почему?

Цитата:
свой программатор надо иметь

есть один. А что если есть программатор? Забэкапить биос ним и дальше не бояться неудачных патчей?
Автор: bomzzz
Дата сообщения: 17.08.2015 09:39
ага. при условии что в ноутбуке микросхема памяти в краватке, а не впаяна. да лучше грубом это попробовать сделать. только груб запускается с винта, когда биос уже распределил память.
трудозатраты соизмеримы с покупкой нового ноутбука. а чем юсб звуковуха не устраивает?
Автор: Remdale
Дата сообщения: 17.08.2015 10:46
У меня на плате нету никаких краваток. Все микросхемы впаяны.
Ну дык у меня ж она usb. А та дешевая, что была в ссылке, она не студийная. Нету ASIO, XLR и MIDI.
А с чего вы взяли, что у мен биос UEFI?
К Windows 7 он не привязан был
А где там в грубе запись биоса в файл?
Я записывал биос в файл из-под Windows
Автор: bomzzz
Дата сообщения: 17.08.2015 15:50
http://forum.ru-board.com/topic.cgi?forum=5&bm=1&topic=32855&start=9580#lt
в теме груба спроси. я им пользоваться только как загрузчиком умею, а китайцы его развили до полноценной системы.

Добавлено:
я самаю дешевыю выбрал для примера. понятно что программа для написания музыки. программа профессиональная, значит надо ноутбук покупать к ней
Автор: dimitriy7
Дата сообщения: 17.08.2015 19:02
Remdale

Цитата:
А с чего вы взяли, что у мен биос UEFI?

Потому что "INSYDE H2O" -- именно EFI, а не БИОС, это разные вещи.
А у EFI весьма замороченная структура, я бы туда не лез... Риск окирпичивания на порядок выше, чем у БИОС.
Тем более есть же и чисто аппаратные ограничения, их никак не обойти.
Автор: bomzzz
Дата сообщения: 18.08.2015 00:52
если у него программатор есть, остается всего то выпаять микросхему памяти с платы которая на перепайку не рассчитана и скорее всего подгорит, впаять краватку если место позволяет, найти такую же микросхему памяти и потом с ней экспериментировать, а оригинальную не трогать.
Автор: Remdale
Дата сообщения: 18.08.2015 09:47

Цитата:
надо ноутбук покупать к ней

Знаю. Но меня и этот устривает.

Цитата:
"INSYDE H2O" -- именно EFI, а не БИОС

Теперь понятно.

Цитата:
есть же и чисто аппаратные ограничения

Я пока еще не могу выяснить точно, что за чипсет у меня. В доках ноута сказано, что GL40. Зашел на сайт Intel. Нашел GL40. Глянул, что такой чипсет поддерживает DDR2 4GB max. Но у меня память DDR3 и максимум 8ГБ. Скачал документ по 4 Series Chipset Family. Там про GL40 пишут, что поддерживает DDR3. Но все равно 4ГБ. Утилита определения чипсета от Intel говорит, что у меня GM45 и I/O контроллер ICH9M-B, но в диспетчере устройств у меня ICH9M-E. GL40 не поддерживает внешнюю графику, а GM45 поддерживает. GL40 не поддерживает FSB Dynamic Frequency Switching. Но в настройках "биоса" есть Dynamic CPU Frequency mode. И ее можно переключать. Если у меня GL40, значит она бесполезна и надо ставить Disable? Тогда зачем она вообще доступна?
Частота графики GL40 - 400MHz, GM45 - 533MHz. Когда была Win7, то кажется было указано насчет 533. Но точно не помню.
Управление питанием: GL40 не поддерживает Graphics Render Standby Modes. Возможно эта функция в параметрах графики по-русски называется "Режим ожидания". И там написано "не поддерживается".
Насчет поддержки процессоров. У меня проц T4400. Его в списке на сайте нету. Ни у GL40, ни у GM45. В доках сказано просто Intel Pentium, Celeron. Надеюсь, что 4-ядерный QX9300 поддерживается моим чипсетом. Но все же вопрос: исходя из выше указаной информации, как определить, какой у меня чипсет? На что еще нужно обратить внимание, чтобы точно определить (если нужно)?
Автор: bomzzz
Дата сообщения: 18.08.2015 11:54
к конкретному случаю это вряд ли имеет отношение. интел развивает схему и в какой то момент выпускает ее на рынок. при этом в документации написано рекомендованное как бы использование\характеристики, а на самом деле там еще что то болтается внутри на будущее, что часто раскрывают фирмы собирающие из этих кубиков компьютеры. так например когда то не было широко известно о сопроцессоре встроенном
Автор: Remdale
Дата сообщения: 18.08.2015 12:08
Здесь просто такое дело, что в доках к ноуту сказано, что у него память DDR2. А у меня DDR3.
Кстати, AIDA показывает чипсет GL40.
bomzzz, значит все-таки есть шанс, что ноут поддерживает 4-ядерный проц. Но сначала надо с Insyde H2O разобраться. Есть люди, которые платно это делают. Может у них получится. Кстати, в доках читал, что в чипсете есть 4 SATA порта. Но только 3 из них доступно. Да и Intel Rapid говорит, что один внутренний порт пустой. Вот и хочу найти его и задействовать.

Страницы: 1234

Предыдущая тема: Наблюдение за параллельной сессией Win 7


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.