Comments 170
Полуживого забавлять
(с) А.С.Пушкин.
Проще поставить рам-диск, разместив его в области памяти выше 3.5 гигов. Некоторые софтины позволяют это делать. По том по вкусу\необходимости перенести на этот рам диск файл подкачки и\или временные файлы системы
В результате имеем стабильность непропатченой системы и производительность на уровне системы с максимальным объемом памяти.
SuperSpeed RamDisk and RamDisk Plus
Gavotte RamDisk
VSuite Ramdisk
…
Файл подкачки находится ВНУТРИ 32-битного адресного пространства — при избытке оперативки он не используется (по прямому назначению).Хм, это не так. Или вы как-то не так выразились. Файл подкачки не находится внутри никакого пространства. По сути это просто скопище выгруженных из вирт памяти страниц, которые конкретная ОС хранит в каком-то своём виде.
Просто вдумайтесь в этот механизм: процессор-то знал, к какому адресу он обращался. Значит, в его пространстве адресов эта страница есть. Правда, эта страница есть именно в линейном пространстве (которое своё для каждого процесса), а Page Fault произошёл именно оттого, что страницы нет в физической памяти.
Естественно, процессов у нас может быть много, поэтому никакого ограничения «суммарно 4 Гб» или «суммарно 64 Гб» там нет.
Просто вдумайтесь в этот механизм: процессор-то знал, к какому адресу он обращался. Значит, в его пространстве адресов эта страница есть. Правда, эта страница есть именно в линейном пространстве (которое своё для каждого процесса), а Page Fault произошёл именно оттого, что страницы нет в физической памяти.
Ну да, ни процессор, ни процесс не знают где лежит конкретная страница виртуальных 4гб выделенных каждому процессу — где-то в физической озу (неизвестно где), либо в файле подкачки, либо где-то ещё (это ОС решает как подкачку предоставлять по page fault в том числе) — так и задумывалось. Потому я и написал, что файл подкачки — фактически неупорядоченная куча выгруженных ОС страниц памяти. Что именно «не совсем так» то?
Файл подкачки фактически используется всегда, даже если памяти в «достатке». Система пользуется подкачкой мудроЭто всё решает конкретная ОС в, о чём и речь. Всё что я хотел сказать своими комментариями: то, что высказывание про какой-то там упорядоченный своп находящийся в адресном пространстве итд итп — некорректны.
нельзя сказать что своп вообще не используется пока памяти достаточноНу это не я сказал. Хотя теоретически так оно и есть при должном запасе физ.памяти, но это планировщик решает уже. Возможно, можно это в отдельных случаях и отдельных ОС и платформах настраивать всё. Всё это настолько платформозависимо вообще, что спорить про то как оно там есть вообще странно.
Не царское это дело, инновационным программам в эмуляторе летать.
1. Win (любой) x32 — 20 минут
2. Win7 x64 — MS VirtualPC — 1 час
3. Win7 x64 — VM VirtualBox — 4 часа
4. Win7 x64 — DosBox — неделя (точное время не замерял :), но пробные запуски показали примено такой прогноз)
От запуска на win9x нас спасло то, что нашли подходящий Dos4gw, который на XP/7 нормально работает.
Ну и ещё момент, два раза я переходил с 7-ки назад на XP не из-за вышеописанных причин, а потому, что система просто умирала. Не помню, что было в первый раз, а нынче она просто загружается в тёмный (чёрный?) экран без иконок и без чего-либо ещё, только одинокий мышиный курсор ездит по экрану. А с XP я чего только не делал, поднималась отовсюду. Я даже её внутрь виртуальной машины помещал, имею ввиду не с нуля установил, а рабочую мою XP, когда в первый раз на 7-ку перешёл. Чтобы плавность перехода обеспечить. Такое моё субъективное ощущение, что XP — лёгкая, а 7-ка тяжёлая. Пока не для моего железа.
Вроде про тайм-бомбы не слышал.
А то, что официальная поддержка загнётся — ну и хрен с ней! Вы часто к ней обращаетесь на домашнем (и даже не на домашнем) десктопе?
У нас вот в бухгалтерии трудится машина на Win2000. Отлично справляется!
С другой стороны, если Ваши задачи требуют много памяти — может задуматься о смене железа? Ибо многопроцессорность — она да, очень хорошо, а так же ssd и минимум 8Гб памяти.
Так что вполне возможно, что есть задачи, которым хватает 4G в XP и мало — в 7-ке. На вполне нормальном оборудовании и беспроблемных драйверах.
Вопрос в задачах. Если для них требуется много памяти и более новое железо, то логично сменить железку вместе с ОС. Как было у меня: старый ноут с хрюнделем всем устраивал, но тут понадобилось запустить ide… и потопал я в магазин за новым ноутом с ssd, многоядер, многопамяти и win8 ia64.
Да, ОС может предоставлять некоторый оверхед под свои нужды. Та же архитектура ia64 подразумевает бОльший расход памяти для приложения, чем в случае x86-32. Но оно идет на дело.
Все просто: если взять 2 машины нормальной современной конфигурации, например core i5 4 ядра, 8Гб памяти и ssd на 128Гб, и поставить туда win xp, и win 7, то на 7ке все будет ГОРАЗДО быстрее (и стабильнее). Проверено.
Core i3/i5/i7 никогда не были IA64. Они x86_64/AMD64/EM64T.
Все просто: если взять 2 машины нормальной современной конфигурации, например core i5 4 ядра, 8Гб памяти и ssd на 128Гб, и поставить туда win xp, и win 7, то на 7ке все будет ГОРАЗДО быстрее (и стабильнее). Проверено.
А если там собрать Gentoo (на такой машине соберётся быстро), то всё будет ещё быстрее и стабильнее. Проверено.
С чем вы спорите? Факт, что потребление выросло. Из этого факта — прямое следствие, что в одном случае для некоторой задачи 4G может хватать, в другом может не хватать. Мы говорим об этом, а не о стабильности и быстроте.
Речь идёт не про то, сколько памяти требуется для работы самой системы (хотя, гигабайты памяти только для работы некоей сервисной прослойки — это очень чересчур). Вопрос про потребление памяти прикладными программами, которые даже разрабатывали не в мокросовте.
Почему в новой ОС те же самые прикладные задачи занимают больше памяти? В моём понимании, один и тот же самый код на одном и том же оборудовании на одной и той же задаче в любой ОС должен потреблять одинаковое количество приватной оперативной памяти. Конечно, библиотеки и интерфейсы ОС могут потреблять другое число, но сами структуры данных-то программы не менялись, с чего бы им занимать больше места?
А вот занимают. И это явный недостаток ОС.
Как минимум в x64 изменились размеры указателей в 2 раза… а для запуска x32 приложений используются прослойки и «эмуляторы» которые требуют своего куска памяти и т.д. и т.п.
Я же говорю про
один и тот же самый код на одном и том же оборудовании на одной и той же задаче
Один раз скомпилировали, ничего не меняли. Запускаем на XP и на 7 x32. На 7 потребляется на 30% больше памяти.
Ещё раз: программу не перекомпилировали, архитектура не менялась. Памяти потребляет больше.
Как?
В итоге к какому-нибудь приложению вроде блокнота в результате сложных зависимостей может присосаться глупая библиотека видеокодека, чтобы в диалоге выбора файлов иметь возможность отобразить превью видеофайлов которые приложению и не сдались вовсе, но диалог-то стандартный на все приложения.
Есть такая утилита procexp.exe — расширенный диспетчер задач, который вполне способен показать кто и чем занял память приложения. Там всплывают весьма забавные вещи…
К сожалению, Win7 под рукой нет чтобы сравнить, но думаю эта утилита даст ответ на вопрос.
Разница ощущается только на играх, что вобщем-то вполне ожидаемо.
По крайней мере, на том станке, на котором я работал.
Станок тупо шлет пакеты через определенные интервалы времени. И так же их принимает.
Под виндой не прокатит — перехватил какой процесс управление и можно помахать рукой заготовке.
Вкратце — да, 64 бит не нужно, чтобы увидеть более 4Гб. Windows Server 2003 (32-бит), к примеру, может видеть до 128 Гб памяти.
Враньё, адресная шина IA-32 процессора — 36 бит, так что 32-битная ОС может адресовать не больше 64 гигабайт. (Ну то есть, никакя вообще ОС, будь то редакция винды или ещё что-то.)
Откуда вы взяли 128 — не понимаю. И Microsoft со мной вполне согласен.
Враньё, адресная шина IA-32 процессора — 36 бит, так что 32-битная ОС может адресовать не больше 64 гигабайт. (Ну то есть, никакя вообще ОС, будь то редакция винды или ещё что-то.)
Это не совсем верно. Технически, размерность шины адреса не является ограничителем максимального размера памяти, т.к. контроллер ОЗУ может переключать банки памяти. Например, если я правильно помню, были модификации спектрумов, которые имели суммарно (ПЗУ+ОЗУ) на борту более 64к при 16-битной шине адреса.
Так что именно на IA-32 банков никаких нет и 64Гб — жёсткий предел. Кстати говоря, и объём файла подкачки тоже ограничен этим размером, т.к. технически все страницы в подкачке адресуемы процессором.
Когда-то во времена 8086 были популярны платы EMS (Expanded Memory), которые вставлялись в ISA-слот, содержали несколько мегабайт памяти на борту и доступ к ней осуществлялся через переключение банков по 32 или 64 кбайт, которые отображались на блоки адресов, начиная с 0xE0000 и 0xD0000, если не мне не изменяет память. Это уже потом появились процессоры с 24-битной и 32-битной адресной шиной, которые смогли адресовать много основной памяти.
В спектруме это было, да. Но там процессору было известно, что память — с банками.
Контроллеру ОЗУ, прежде всего.
В архитектуре IA-32 нет никакой поддержки этого процессором.
Я не готов вести дискуссию по современным процессорам, ибо не очень компетентен. Я лишь обратил внимание на то, что размерность шины адреса не всегда является ограничителем размера ОЗУ.
Так что именно на IA-32 банков никаких нет и 64Гб — жёсткий предел. Кстати говоря, и объём файла подкачки тоже ограничен этим размером, т.к. технически все страницы в подкачке адресуемы процессором.
Вот это я, конечно, написал неправду. Нет такого ограничения, и про формат и адресацию внутри файла подкачки процессору ничего не известно.
Я правильно понимаю: х32-программа (1 процесс) может использовать max 4 gb, а x64 — больше?
Это и вся разница по большому счету?
(Позанудствую: ещё в 64-битном режиме регистры процессора больше, т.е. операции например сложения 64-битных чисел становятся быстрее. А ещё регистров в этом режиме в два раза больше — в некоторых случаях компилятор умеет обходиться ими, не дёргаться постоянно к ОЗУ и таким образом экономить нагрузку на шину памяти, что тоже может ускорить работу программы.)
Но, кажется, основная причина перехода на х64 была как раз в невозможности адресовать выше 4ГБ ОЗУ, нас обманули?
Да. Ограничение в 4GB — это фикция, абстрактное число, которое прописано в файле лицензии.
Вот отличная статья про потроха ядра во всех деталях: www.geoffchappell.com/notes/windows/license/memory.htm
Поставьте себе Windows 7, 8.1, Server 2008r2, server 2012r2, линукс наконец, поднимите в нём виртуальную машину на hyper-v, vmware player, virtualbox, dosbox, запустите в виртуалке разное старье, и прочие эксперименты и живите себе счастливо.
И трогать его тоже обычно очень не рекомендуется, но что-то со слов автора не видно, что он трясётся над управляющей машиной, например станка, стоимость простоя которого вполне может исчисляться миллионами, а попытка влезть в рабочую систему чревата потерей гарантии от вендора.
Уже не считая того, что во начале второго абзаца поста ясно указано, что это личная машина, с которой «что хочу, то верчу»
Кстати, для Вашего случая обычно используется стандартная практика инженеров СЦ — почта, месенжеры, crm на нормальом компе на современной ОС как рабочая станция плюс тестовая машинка которую можно хоть каждое утро инженеру переставлять, и которая таки да используется как программатор, доступ ко всяким хитрым железкам через хитрые интерфейсы, которые кстати вполне могут жить до сих пор под win 9x.
Проблемы были, потому, что приходилось отдельно настраивать 2008R2 на сервере, чтобы она согласилась работать с 98-й. Из коробки — никак не работала.
> BB 00 00 10 00 33 FF 6A 07 8B F0 и заменить её на
> BB 00 00 40 00 33 FF 6A 07 8B F0
Это вам не KDE патчить :)
По второму вопросу: обычный процесс не может адресовать более 4Гб в любом случае. Просто в непропатченном Windows на все процессы суммарно имеется не более 4 Гб (на самом деле меньши, из-за адресов оборудования). А в пропатченной каждый процесс может использовать всё равно не более 2 (или 3, если с ключом /3Gb) Гб единолично, а суммарно — сколько есть памяти.
И все таки я не понимаю что произойдет в этом случае когда процесс попытается занять больше памяти чем операционная система может адресовать?Если он изначально меньше 2-3 гб, а плавно набирает память во время работы — в какой-то момент он просто падает.
Как видите, всё гениальное — просто.
Когда приложение обратится к откачанной странице, произойдет исключительная ситуация PageFault. Обработчик этого события должен проверить, была ли ранее откачана запрошенная страница, и, если она есть в swap-файле, загрузить ее обратно в память.
Предложенное в статье решение работает намного быстрее, тут много накладных расходов.
Собрал все нужные файлы и два пропатченных ядра — на 16 и 32 гигабайта в архив, скачать можно тут.
Т.к. у меня есть только 16 гигабайт ОЗУ — то и проверить будет ли версия ядра на 32 ГБ видеть больше я не знаю.
Вот на виртуалке спокойно увидела все 11 Гб:

Из системных файлов надо изменить только boot.ini, остальные можно просто скопировать.
Вечером проверю этот способ + трукрипт на виртуалке, если сработает, то потом на основной системе.
Сначала попробовал этот способ на чистой виртуалке с выложенными выше патчеными файлами — все сработало как надо (как мне казалось).
Поставил на рабочую систему — не загружается, черный экран. Заменил halmacpi.dll на halacpi.dll — загрузилось, стало видеть полную память, но только 1 ядро процессора из 4. Причем даже в основной системе после перезагрузки. Погуглил, оказалось что для возврата 4 ядер нужно запустить /kernel=ntkrnlmp.exe /hal=halmacpi.dll — действительно, смог вернуть 4 ядра.
После этого пропатчил свой ntkrnlpa.exe — винда стала запускаться, но синий экран. А так как система старая и ненужных программ нету, просто прекратил дальнейшие действия.
Притом, надо отметить, что семёрка была хоть и 32-х битная, но в ней была разблокирована возможность видеть всю доступную память. Способ разблокировки доступен в Интернет.
Был бы очень благодарен за ссылку на рабочий способ. Сколько не пробовал — ни разу не находил рабочего :( Win7HP, SP1
> Сколько _не_ пробовал
Не попробовав и не получится :)
yadi.sk/d/u_Jtju0pCt2yE
(теги не могу)
github.com/wj32/PatchPae2
Tested on: Windows Vista SP2, Windows 7 SP0, Windows 7 SP1, Windows 8, Windows 8.1, Windows 10 (build 10586)
Лучше бы не влезать в это безумие, по-хорошему-то

Как видно свободной памяти осталось 112 Мб из 4-х Гб. Больше вручную нагрузить труднее, система начинает скидывать в файл подкачки.
В eula есть пункт:
4. LIMITATIONS ON REVERSE ENGINEERING, DECOMPILATION, AND
DISASSEMBLY. You may not reverse engineer, decompile, or disassemble
the Software, except and only to the extent that such activity is
expressly permitted by applicable law notwithstanding this limitation.
Можно ли посчитать то что зделал автор реверс инжинирингом, декомпиляцией или дизасемблированием?
Ну и тут с одной стороны «such activity is
expressly permitted by applicable law notwithstanding this limitation» с другой «если иное не предусмотрено договором с автором.» кто кому уступает в этом случае?
Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. For more information, see www.microsoft.com/licensing/userights.
Но для XP все проще, там можно, там даже не запрещено хачить винду с целью обхода регистрации.
Т.е. сделать такую штуку кому-то нельзя. Себе можно. И в EULA прописано на этот случай, что «если какие-то части EULA не соответствуют местному законодательству, они игнорируются, а остальные продолжают действовать» — если бы этого не было, сам факт наличия такого закона у нас отменял бы это соглашение полностью :)
В нашем законодательстве закреплено право на адаптацию ПО в личных целях.Засомневался, пошёл читать ГК.
Статья 1273 только про воспроизведение в личных целях.
В статье 1280 разрешается «внесение в программу для ЭВМ или базу данных изменений исключительно в целях их функционирования на технических средствах пользователя», но только для лиц, правомерно владеющих экземпляром программы.
Выходит, для потрошения платного софта надо его купить?
Правомерность — те же 30 дней (или другой срок) пробного периода вполне себе ;).
Правда если вести речь про Windows, то на пробу Microsoft даёт скачать только Enterprise редакцию последней версии ОС, которая через 90 дней не только обои на чёрный фон сменит, но и должна вырубаться каждый час. Уж не знаю, распространяется ли на энтерпрайз трюк, которым можно разблокировать установку из того же образа других редакций, и если да, установится ли при этом и упомянутая бомбочка отложенного действия, это уже тянет на тему совсем другой статьи о других модицикациях.
С моей точки зрения, такой объем на сегодня уже не представляет проблем.
Про проблемы с патчеными ядрами в Windows 7 мы уже читали на хабре за этот год ни раз в топиках про «кривые заплатки» от Microsoft.
А ведь это доставляет проблемы, и немаленькие например с резервными копиями системы — лишние 17 гигов практически балласта это не хухры-мухры. Проблема ведь не в том что они там лежат, в конце-концов для обеспечения совместимости на какие только жертвы не пойдешь, но ведь файлы оттуда никогда не удаляются. Даже если программы больше нет — файлы от нее осядут в этой папочке до следующей переустановки виндовс.
Я же не зря привел пример со StarCraft — могу привести точно такой же с VisualStudio + MSDN и еще некоторыми SDK, которые могут быть нужны. На сегодня объемы софта достигли таких размеров, что для полного бэкапа может легко понадобиться 100-200 гб. И эти 17 гб не делают какой-то погоды (хотя даже лет 5 назад этот объем вполне ощущался). Именно по этому в сетях организаций при поднятом домене, зачастую, бэкапов машин пользователей не делают, ограничиваясь вынесением локальной папки пользователя в сеть.
В любом случае, Microsoft создала удачное решение для комфортной работы в x64 окружении с x86 софтом. И предолженный в топике сценарий решения проблемы с памятью актуален лишь для Windows XP.
Про 7рку тоже есть: www.outsidethebox.ms/15444/
habrahabr.ru/post/202406/#comment_6994530
Вчера поработал некромантом и по предложенной инструкции успешно вживил на Windows XP 32bit SP3 8 ГБ оперативной памяти.
Инструкция правда оказалась не совсем точна, хотя в принципе и рабочая. Несколько интересных вещей которые выяснились в процессе:
"Начиная со второго сервиспака эта библиотека работает с PAE «фиктивно», т.е. даже если режим расширенной трансляции адресов включён – он ничего не делает и не выходит за пределы четырёх гигабайт." — это не соответствует действительности. Полноценный PAE режим имеется и в hal.dll из комплекта SP2 и из комплекта SP3.
В принципе для активации работы с памятью >4 Гб достаточно только патча 1 строчки в ядре + прописать опцию /PAE в boot.ini если это еще не было сделано раньше.
Т.е. ограничение на 4 Гб полностью искусственный барьер со стороны Microsoft.
Правда конкретно в моем случае с самой свежей библиотекой HAL (SP3 + все оф. патчи) как раз словил упомянутую проблему с драйверами — в частности большая часть USB устройств отвалилась(похоже драйвер USB контроллера не инициализировался правильно), включая мышку. Но все 8 Гб при этом были доступны и реально работали, а кроме отвала USB серьезных проблем не наблюдалось (в частности работали видео, включая аппаратное ускорение, звук, сеть — дальше не полез проверять).
А вот использование старого HAL (из SP1) эту проблему с драйверам USB решило. В результате если кто захочет повторить — можно пробовать и с самой свежей HAL, просто заменив 1 байт в ядре и откатываться на старые версии библиотек только в случае проблем.
"ntkrnlpa.exe — однопроцессорное ядро Windows с более чем 3 ГБ оперативной памяти." У меня тоже использовалось это ядро, как и у автора. Что в общем-то сильно удивило — и у него и у меня процессоры многоядерные(2 и 4 ядра соответственно) и при использовании не того ядра, не должны были работать доп. ядра. В процессе выяснилось, что на самом деле в этом файле, несмотря на его название (как текущее имя файла, так и "исходное" прописанное в его свойствах), лежит содержимое файла ntkrpamp.exe (многопроцессорное ядро Windows с более чем 3 ГБ оперативной памяти). Выяснил это случайно — винда упорно заменяла пропатченную версию ядра на исходную. Даже после того как я нашел все резервные копии (аж 3 штуки) файла ntkrnlpa.exe в служебных заначках и пропатчил их тоже. Но каким-то неведомым образом каждый раз все-равно восстанавливался исходный файл. Пришлось запустить мониторинг системных процессов и выяснилось, что система берет содержимое файла ядра "ntkrpamp.exe" из \system32\dllcache\ и копирует его в файл "\system32\ntkrnlpa.exe". Т.е. в реальности используется многопроцессорное ядро, лишь обозначенное как однопроцессорное. Зачем в Майкрософт сделали такую путаницу — совершенно не ясно.
Забавная вещь. На самом деле ни один из приведенных вариантов ядра ОС (ntoskrnl.exe, ntkrnlmp.exe, ntkrnlpa.exe, ntkrpamp.exe) вообще не является обязательным. Windows XP настолько сурова, что может работать вообще без ядра! :)
Хотя самом деле нет — просто ядро состоит минимум из 3х файлов (ntoskrnl.exe, hal.dll, и один из этих 4х), но без этого 3го все вполне работает. В процессе экспериментов случайно удалил файл текущего используемого ядра прямо на рабочей системе и сначала удивился, что ОС вообще дала это сделать. И из любопытства перезагрузился и удивился еще больше — никаких глюков, все работало и без него, разве что память опять только ниже 4 Гб доступна была.
У меня почему-то опции /NOEXECUTE=OPTIN и /PAE оказались не совместимы друг с другом — если присутствуют обе, то ОС не загружается (черный экран в самом начале загрузки). Хотя NOEXECUTE=OPTIN вроде бы официально является значением по-умолчанию, т.е. указание OPTIN должно быть равносильно отсутствию этой опции.
- BSOD от драйверов так и не словил. Но все-таки совсем без BSOD не обошлось — его стабильно вызывала попытка использовать опции ядра /PAE (т.е. расширение общего объема адресуемой памяти с 4 до 64 ГБ) и /3GB (расширение адресуемой памяти на один процесс с 2 ГБ до 3 ГБ). Возможно, это тоже можно как-то решить, но настрой дальше расковыривать потроха ОС к этому моменту закончился, и я просто убрал /3GB. В моем случае она не особо актуальна — оперативки на этой машине нужно много не из-за какого-то одного тяжелого приложения, а из-за большого количества работающих параллельно.
«BB 00 00 10 00 33 FF 6A 07 8B F0» и менять 4й байт в ней.
Т.к. в зависимости от версии позиция может и отличаться.
У меня файл ядра ntkrnlpa.exe (при этом внутреннее имя файла ntkrpamp.exe — MP, т.е. многопроцессорный и по факту поддержка многопроцессорности работает, процессор 4х ядерный) версии 5.1.2600.6419 (xpsp_sp3_qfe.130704-0421)
В нем эта последовательность нашлась по offset 1B3A39 (1784377), где успешно и пропатчил. Собственно лимит адресуемой памяти прописан 2мя байтами начиная с 1B3A3C (1784380) количеством 64к блоков как и указано в основной статье.
Да, по накопившемуся опыту работы с такой патченой системой указание объема больше реально присутствующего может приводить к дополнительным глюкам. Я сначала 16 Гб прописал (4000h) при имеющихся 8 Гб, доступно к использованию были все 8 Гб. Но иногда наблюдались странные глюки — например USB сканер не хотел сканировать и некоторые программы из автозагрузки (Punto Switcher например) не загружались на автомате (процесс в памяти есть и даже работает — например раскладку автоматически переключает, но GUI отсутствует), хотя работали нормально при запуске вручную.
Потом поменял значение в файле на 8 Гб (2000h), доступно стало 7.5 Гб (аналогично тому как на непропатченной 32 бит системе доступно 3.5 Гб при физических 4 Гб) но зато эти глюки пропали.
Когда-то давно она у меня стояла, все игрушки и софт работали, а в 32 битном режиме там хоть все 64 гига можно адресовать.
На ноуте где идёт XP пойдёт и 7-ка, но в целом 7-ка с обновлениями уже быстрее ХР-шки и сильно стабильнее. На ноуте она у меня годами живёт без перезагрузок просто входя в сон.
Вопрос: зачем 7, если все необходимые задачи легко и быстро решаются на ХР?
Семерка в любом случае потяжелее. И медленнее работает на старом железе. К тому же ХР привычнее. Что касается стабильности работы без перезагрузки, то для меня это не особо критично. Годами не работает, но месяц-другой — стабильно. Само собой, ни разу не переустанавливал. Если переходить на семерку, то надо по новой ставить кучу софта, что, конечно, решаемо (софт не специфический), но не сильно удобно.
А для других задач есть ноут с десяткой.
С чем возможно и связаны иногда встречающиеся глюки с драйверами после патча
Как я преодолевал предел 4Гб на Windows XP 32бит