Sternwal, Ну тогда косяк может в 32 битах. Ну не хочет работать у тебя 32битная ОС с четырмя гигабайтами.
(правда я не знаю какая у тебя

)
Попробуй в boot.ini пропиши
/maxmem=число
читать дальше »
Данный параметр задает объем оперативной памяти (в байтах), который операционная система может использовать. Например, чтобы Windows использовала менее 64 МБ памяти, используйте параметр /maxmem=64.
Однако параметр /maxmem не учитывает возможность «дыр» в памяти. Поэтому вместо него рекомендуется использовать параметр /burnmemory, который учитывает "дыры" в памяти.
Если, например, используется параметр /Maxmem=64 и для загрузки системы требуется 64 МБ памяти, то из-за «дыры» фактический
объем памяти может быть меньше 64 МБ. В этом случае Windows не загрузится.
или
/burnmemory=number
читать дальше »
Данный параметр задает объем оперативной памяти (в МБ), который операционная система не может использовать. Используйте данный параметр при устранении неполадок, связанных со сбоями в оперативной памяти. Например, введите /burnmemory=128, чтобы уменьшить объем памяти, который доступен Windows, на 128 MB.
или
/3GB
читать дальше »
Данный параметр предписывает на компьютерах с процессорами x86 выделять 3 ГБ виртуального адресного пространства для использования программами и 1 ГБ — для использования ядром и исполняемыми компонентами. Программы должны поддерживать дополнительную память. Если указан параметр /3GB, то программам пользовательского режима доступны 3 ГБ памяти вместо 2 ГБ, выделяемых по умолчанию. Если указан этот параметр, ядро использует область памяти, начинающуюся после 3 ГБ. Параметр необходим для определенных конфигураций Exchange Server 2003 и Windows Server 2003.
Примерно это будет так
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows XP" /fastdetect /burnmemory=1000