techwork: (Default)
techwork ([personal profile] techwork) wrote2022-04-30 07:52 pm

Максимум из XP

понимаю что никому не нужно.
Но я таки установил какое максимальное количество памяти реально может адресовать Windows XP с hal.dll распакованной из HALMACPI.DL_ и справкой ntkrpamp.exe в hex редакторе. Метод ещё времён Windows XP-64 когда люди не хотели её ставить но хотели получить обработку всех 4 гигабайт. А потом и 8 гигабайт с выходом двухгиговых планок.

Максимум это 12 гигабайт на самом деле - не важно 8+4 или 4+4+4 .

И связано это с тем что область выше 12 гигабайт во времена XP считалась служебной. По первых там было адресное пространство шины PCI у таких южных мостов как ICH7 и многих той же эпохи. А во вторых по скольку это адресное пространство служебное то оно использовалось видеодрайверами для обращения к ресурсам видеокарты. Иногда это повыше в адресной структуре но чаще всего 12.

Да если отключить в биосе там где возможно ту часть адресного пространства что используется для работы с железом можно воткнуть в старые в платы 16 гигов и они будут нормально работать. Но вот драйвера под Windows XP работать без синих экранов не будут. И это связано именно с драйверами этой ОС.

Да на такую плату если процессор 64 бита то можно установить Windows 7 64 бита и она будет видеть 16 или 14 гигов и работать с ними без сбоев. Ибо драйвера под неё были написаны по другому.

Но даже если Windows 7 там будет видеть 16 гигов и работать с ними то Windows XP - синий экран.

только если в системе 12 гигов то они будут работать одинаково стабильно и видеть 12 гигов. Опять таки не забыть о модификации ntkrpamp.exe если два и более ядер и ntkrnlpa.exe если одноядерник.

Так что не смотря на то что XP 32 бита в стоке и 4 гига видит не полностью. Она реально может работать с 12 гигами полностью с одинаковой стабильностью. Просто эта функция в ней по умолчанию отключена. А вот больше 12 это то что работать нормально не будет. Более того очень часто сам чипсет не сможет обработать две планки по 8 гигов или 4 планки по 4 гига. При том что одну 8 гиговую он нормально видит.

Потому что вся 900 серия чипсетов интел G31 G41 они все физически ограничены 12 гигами именно своими мостами ICH6,ICH7,ICH8,ICH9, и только ICH10 был избавлен от этого ограничения. Аналогично и у АМД.
Да есть хак который позволяет изменить биос но .... работать нормально это не будет.

Собственно именно поэтому больше 12 гигов Windows XP видеть и не должна - в её эпоху железо настольное не серверное не могло даже адресовать более 12 гигов памяти чисто физически. хотя PAE-36 может адресовать 64 гигабайта, но если просто сделать ключик /PAE в boot.ini вы получите синий экран. Потому что драйвера. режим этот чисто для серверного железа. XP и не должна в нём работать. и отключили его не потому что "злые маркетологи" а потому что не было рыночного соглашения о том как размещать адреса физических устройств и писать драйвера. Исторически всё пришло к 12 гигабайтам хотя в реальности там ещё хвост почти на гиг всегда и больше иногда. А не имея соглашения разработчику пришлось бы нести ответсвенность за падение в синий коврик. Но теперь спустя время можно понять что консенсус по драйверам сложился именно так - 12 гигов это законная часть для оперативной памяти. И если кто то XP ещё использует он может использовать её с 12 гигами и PAE-36 понимая что не будет синих экранов. А больше будут даже если железо уже и новее например P45 с официальной поддержкой 16 гигабайт. Но вот только драйвера для XP не смогут нормально на ней работать с включенной PAE-36 если в системе установлено более 12 гигов памяти. Хотя железо само физически это может. Но только с Win7.

[identity profile] http://users.livejournal.com/any_/ 2022-04-30 07:31 pm (UTC)(link)

а как виртуалку гонять не вариант ?

[identity profile] archie-owl.livejournal.com 2022-04-30 09:41 pm (UTC)(link)
Года два назад захотелось мне двухпроцессорную систему пощупать. Интереса ради. Купил по дешёвке два ксеона L5640. И мать Асус. Очень неплохо получилось. Правда, так и не дошли руки посмотреть как на нем разные ОС работают (как изначально планировалось) но под десяткой очень жив

[identity profile] kray-zemli.livejournal.com 2022-04-30 11:58 pm (UTC)(link)
Помню, что у меня в своё время не получилось. То ли где-то чего-то недоправил, то ли дрова были кривые, да только через синие экраны я так и не пробился.

[identity profile] leonardovich683.livejournal.com 2022-05-01 06:04 pm (UTC)(link)
В общем так:
Если Windows 32 битный (кроме Windows 2003 Server, XP без SP,SP1) то памяти будет видно НЕ БОЛЬШЕ ~3.25 Гб. Какие бы вы ключи не ставили, чтобы вы не делали, это всё равно не поможет. В Windows XP SP2 ключ pae НЕ ВКЛЮЧАЕТ ДОПОЛНИТЕЛЬНУЮ ПАМЯТЬ.

Если Windows 32 битный и это Windows 2003 Server, XP без SP,SP1, то при включении ключа PAE и поддержке его оборудованием можно видеь до 64 гигабайт памяти. Но это только на Windows 2003 Server, XP без SP,SP1.

Если Windows 64 битныйи в БИОС НЕ включена функция Memory remap, то можно видеть всю память, минус память занятую адресами устройств.
4Гб ОЗУ - видно ~3,25
6Гб ОЗУ - видно ~5,25

Если Windows 64 битныйи в БИОС включена функция Memory remap, то можно видеть всю память
4Гб ОЗУ - видно 4
6Гб ОЗУ - видно 6

[identity profile] leonardovich683.livejournal.com 2022-05-01 06:09 pm (UTC)(link)
Windows XP
Самое интересное,что наиболее популярная ОС от Microsoft хуже всего оснащена поддержкой большого количества памяти. Если не сказать большего – вообще не оснащена. А обиднее всего, что так было не всегда, а лишь до появления пакета обновлений Service Pack 2 – именно в нем возможности PAE были значительно урезаны. Если быть точнее, то во избежание конфликтов доступное адресное пространство было ужато с 36 бит до стандартных 32 бит, а сама PAE стала использоваться разве что для поддержки NX-бита. В результате это приводит к забавным казусам – при включении опции «Memory Remap Feature» BIOS начинает видеть больше памяти, а Windows, наоборот, меньше! К примеру, если до включения опции BIOS определял 3.5 Гб, то после он видит уже 4 Гб, в то время как в Windows определяется всего 3 Гб! А дело все в том, что Memory Remap Feature переносит память за пределы четырех гигабайт блоками по гигабайту. То есть если после выделения памяти под железо BIOS определял 3.5 Гб, то после «выноса» этой памяти за пределы адресного пространства остается всего 3 Гб. Соответственно, если первоначально было видно, к примеру, 2.8 Гб, то «передислоцировалось» уже 2 Гб, и столько же оставалось Windows, которая без нормальной поддержки PAE попросту не могла видеть то, что находилось за пределами ее восприятия.

Отсюда неутешительный вывод: Memory Remap Feature для Windows XP SP2 применять бесполезно – это принесет лишь вред. Только два варианта могут заставить XP видеть 4 Гб памяти – использование версии Service Pack 1 (на что вряд ли кто-то пойдет), либо же установка 64-битной версии операционки.

[identity profile] ljuser888.livejournal.com 2022-05-01 08:20 pm (UTC)(link)
Чтобы АНБ закладки в чипсетах/процах не стучали есть три выхода:
1. Использовать старые процы/чипсеты кое-какие Оптероны от АМД, и старые ноутбуки от Thinkpad, которые можно проапгрейдить до Core 2 Quad. Такого железа достаточно для большинства задач, кроме игр, документы, чаты, программирование, просмотр видео и.т.п.
2. Использовать новое железо изолировано, т.е. никакого подключения к какой-бы то ни было сети. Никаких встроенных и невстроенных wi-fi/bluetooth, клетка Фарадея для пущей надежности.

3. Использовать новое железо с многоуровневым подключением к проводной сети.
Закладки в чипсетах/процах если и работают, то со встроенным в материнку сетевыми интерфейсами, т.к. чтобы работать со всеми возможными и существующими сетевыми интерфейсами придется запихнуть в чипсет кучу дров для работы с этими интерфейсами, поэтому _маловероятно_, что закладки могут работать со всеми имеющимся сетевыми интерфейсами, а значит у них есть поддержка только того, что на материнке плюс дрова самых распространенных сетевых карт.

Закладки хоть и работают на самом привелигерованным уровнем, т.е. видят абсолютно всё в системе, но закладки не могут знать, какое шифрование используется для шифровки траффика, хоть и видять всю память, не могут точно знать, что является шифрующим ключом, т.к. для всего этого надо иметь кучу эвристик, а уж если шифрование самописное, то и вообще не понять, что это такое.

Поэтому если у вас современный комп, но хотите по максимуму обезопаситься от закладок, то
1. Не использовать встроенные сетевые интерфейсы для подключения к Интернету
2. Использовать USB-Ethernet адаптеры
3. Использовать старый компьютер без IntelME / PSP в качестве роутера к Интернету
4. Настроить шифрованный туннель от современного компа к роутеру, желательно с каким-нибудь самописным шифрованием или цепочкой шифро-алгоритмов
5. Ограничить доступ приложений к шифрованному туннелю

В принципе это отчасти обезопасит современный комп с закладками от АНБ от слива инфы.