Максимум из XP
Apr. 30th, 2022 07:52 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
понимаю что никому не нужно.
Но я таки установил какое максимальное количество памяти реально может адресовать 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.
Но я таки установил какое максимальное количество памяти реально может адресовать 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.
no subject
Date: 2022-04-30 07:31 pm (UTC)а как виртуалку гонять не вариант ?
no subject
Date: 2022-04-30 07:59 pm (UTC)Я тут о другом — а том какова максимальная возможность XP и почему ( никто просто именно об этом не писал) а не о том что это нужно.
Это не нужно совершенно. XP это система 00х время её давно закончилось. Я сам 7 поставил в 9 или 10 году не помню уже. И с тех пор только семёрками на своём и пользуюсь. Да еще NetBSD с LXDE иногда но это так — мои заморочки.
Все ос после 7 винды в этом семействе просто говно. они нужны только геймерам для DX12 но я не геймер. Но с появлением Vulkan 1.2 это имеет смысл только для относительно старых игр которые DX12 могут а Vulkan не могут.
То есть очень укая игровая платформа и не более того. Мне совершенно не нужная. Да и в корпорат секторе не нужная. Если вам надёжности Win7 и NetBSD мало — пиши на листочке. Ибо в современом полностью дырявом IT найти надёжное практически не реально.
Все системы с бекдорами от АНБ. А линукс к тому же дыряв и для хакеров.
Когда мне нужно надёжное решение я беру старое железо без IntelME и AMD PSP а ему уже больше 10 лет. Ставлю на него NetBSD проверенную и не лезу в репозитории. И использую не скажу какое шифрование и стараюсь не из РФ выйти. Только так я уверен более менее в надёжности.
На корпоративном уровне это просто физически не возможно. Всё серверное железо стучит , всё с бекдорами от АНБ. А в случае с хигоном ещё и китайцы.
И когда ты отработала три года в борделе покупать белое свадебное платье чтобы стать девочкой глупо.
А по функционалу win7 идеальная ОС.
no subject
Date: 2022-04-30 09:07 pm (UTC)с виртуализаций вопрос железа как раз и решается практически идеально.
no subject
Date: 2022-04-30 09:18 pm (UTC)no subject
Date: 2022-04-30 09:21 pm (UTC)no subject
Date: 2022-04-30 09:22 pm (UTC)no subject
Date: 2022-04-30 09:31 pm (UTC)в голову пришел пока только один вариант где XP может понадобиться — это всякая старая ботва типа каталогов и диагностики для автомастерских.
no subject
Date: 2022-04-30 09:56 pm (UTC)На самом деле это был подкол.
В реальности XP только и нужна со старым проприетарным железом , но именно потому что дрова к нему писаны так что обращаются к железу напрямую.
Любая виртуальная машина тут бесполезна — так как она как раз и не даёт этого сделать.
И поэтому на такое железо XP ставится на прямую.
То есть единственная задача для которой нужна XP как раз таки и не позволяет использовать виртуализацию.
Смысла ставить XP на виртуальную машину ровно ноль. Там где достаточно виртуальной машины там достаточно и просто галочки в windows 7 , почему в семерке XP mode даже в самом начале оказался практически не нужным и единственный раз когда я его использовал для запуска 16 битных приложений писаных под 4NT. Всё дело в том что в 64 битной семёрке они не работают, а в 32 битном XP mode виртуальной машине штатной для семёрки они работают. Да это было ПО для промышленного оборудования.
Но опять таки это было сделано потому что это были ограничения на обьекте по которым я не мог поставить 4NT а доступ был только с машин локальной сети где по умолчанию 64 битная 7 стояла. И загрузка с флешки заблокирована.
Но полноценная виртуальная XP вообще нигде не нужна тем более с модицицировнным PAE
А вот на старом железе — например ПО для регулировки температурыи сепарации в элеваторе, или ПО для разработки сигнальных процессоров — а вот тут уже и была проблема того что ПО написано криво и утечки памяти — плюс топология схемы стала значительно больше чем раньше, это ещё должно было работать с симуляцией. В итоге и надо было придумать как заставить видеть 8 гигабайт но ОС не менять. Ибо заказывать переписывание программы никто не собирался а выгрузка на симуляцию осуществлялась в 32 битное приложение которое 4 гига выжирало одним блоком. И самое весёлое да сука — гвардиан или сентинел не помню уже ключик в жопе компа.
Сделай мне чтобы это работало — тогда я это сделал и работало. А сейчас лишь сумел доразобраться о том а сколько реально то можно таким образом увидеть и чтобы это работало без глюков и почему.
no subject
Date: 2022-04-30 10:01 pm (UTC)ну да ладно — тебе видней.
no subject
Date: 2022-04-30 10:20 pm (UTC)Какой смысл ставить виртуальную машину на железо которое тебе и так на прямую доступно ? Что бы что ? А если ты ставишь виртуальную машину на сервак то тебе железо на прямую не доступно.
no subject
Date: 2022-05-01 07:49 am (UTC)Э, да что толку обсуждать такое всякое в мире, где человеку, который предположительно технически грамотен😉 (раз уж пользуется нетом) предлагают, перкелесАтана!, вот такое:
no subject
Date: 2022-04-30 09:41 pm (UTC)no subject
Date: 2022-04-30 10:02 pm (UTC)Такое одним куском можно получить в последней чистой системе на X89 и Opteron 6276 или Opteron 6281 которые ещё можно найти на али.
Уникальность её в том что это последняя система где нет АНБ — там нет не AMD PSP не IntelME. если к ней HD6000 серии карту купить это и выйдет последнее не дырявое железо.
Всё остальное — ты и дядя Сэм.
no subject
Date: 2022-04-30 10:12 pm (UTC)Про "одним куском" я понимаю. Но мне, как системному программисту, было интересно именно двухпроцовую систему погонять. Думал потестировать на ней разные варианты синхронизации доступа к данным. Да как-то так и не сподобился. Единственно что — погонял свои решения интеловских задач на параллельную обработку — я когда-то поучаствовал в их конкурсе. Кажется, в 2009м году. Было интересно, я даже 125 баксов призовых получил — три моих решения заняли второе место по скорости.
no subject
Date: 2022-04-30 10:43 pm (UTC)чтобы увидеть разницу ты должен быть разработчиком чипсетов.
Так же разница есть между лезвиями- по сути лезвия в стойке обычно соеденены в кластерную структуру, реже в сетевую ифраструктуру влючая меш сеть.
Погонять на паралельную обработку в реальных задачах — просто пока ты в масштабах одного камня или чиплета не важно какой размерности то потоки лезвие не перекидывает на другие камни — ибо в одном камне быстрее, когда камня не хватает оно кидает поток на другой камень.
На каждо лезвии работает алгоритм поиска пути.
Но если это просто два камня то там всё просто — один заполнен кидаем на второй. И делает это адвизор согласно своему буферу предсказания ветвлений, а если нет такового то просто последовательно.
То есть при создании задачи на 36 потоков когда в камне их 32 произойдёт просто вытеснение четырёх потоков на второй камень. При этом если это речь идёт о не шибко умной системе а таких большинство то просто последовательное поступление комманд. Что выразиться в произвольных лагах во времени. Но они же есть и треадрипперах амдшных когда перекидывание на крест происходит. Просто IO выравнивает всех по этому перекрёстному перекидыванию. Чтобы RTOS работали без сбоя такта. Хотя для реального RT с жёстким контролем времени в теории они не пригодны для этого ARM Cotex R — это когда нужна абсолютная синхронность тактов обработки. Но в тоже время и пригодны — если подключены к системе со сверхточными часами. В отличии от амд арм может это и без на столько точных часов с обычными системными часами. Ну а если сделать и то и другое и температурный контроль и контроль параметров элементов то можно получить абсолютно точную систему. Правда не понятно нахрена такая точность ? Разве что звездолётами управлять.
У меня в своё время была куча майкрософтских сертификатов в том числе и на всякие дебильные конкурсы — ничего мне это не дало. не в той стране родился.
Так что я не понимаю что именно то хотел увидеть ? Что когда потоков больше чем на один камень то скорость вычислений падает потому что нет общего буфера предсказания ветвлений ? Ну да падает. И что ? она же падает в общем. Почему собственно нет смысла делать 33 потока или 34 потока если в системе 32 поточные камни. Если не заводить три лишних потока то на 32 отработка будет быстрее.
Но 36 уже имеет смысл.
no subject
Date: 2022-04-30 11:06 pm (UTC)Я больше думал про кеш и его синхронизацию, чем про распределение тредов по камням.
А в конкурсах я участвую чисто из интереса. Ну и доказать себе что "я могу!" :) Так-то оно мне тоже никаких особо бонусов не приносит. В последнее время в хакерских конкурсах участвую. Интересно очень. По 16-18 часов в день сидел — не мог оторваться. Но я только реверс-инжиниринг беру, всякие веб-атаки меня не цепляют.
no subject
Date: 2022-04-30 11:58 pm (UTC)no subject
Date: 2022-05-01 06:04 pm (UTC)Если 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
no subject
Date: 2022-05-01 06:33 pm (UTC)no subject
Date: 2022-05-01 06:09 pm (UTC)Самое интересное,что наиболее популярная ОС от 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-битной версии операционки.
no subject
Date: 2022-05-01 06:35 pm (UTC)Тем ты и показал что ты дебил.
no subject
Date: 2022-05-01 08:27 pm (UTC)no subject
Date: 2022-05-01 08:20 pm (UTC)1. Использовать старые процы/чипсеты кое-какие Оптероны от АМД, и старые ноутбуки от Thinkpad, которые можно проапгрейдить до Core 2 Quad. Такого железа достаточно для большинства задач, кроме игр, документы, чаты, программирование, просмотр видео и.т.п.
2. Использовать новое железо изолировано, т.е. никакого подключения к какой-бы то ни было сети. Никаких встроенных и невстроенных wi-fi/bluetooth, клетка Фарадея для пущей надежности.
3. Использовать новое железо с многоуровневым подключением к проводной сети.
Закладки в чипсетах/процах если и работают, то со встроенным в материнку сетевыми интерфейсами, т.к. чтобы работать со всеми возможными и существующими сетевыми интерфейсами придется запихнуть в чипсет кучу дров для работы с этими интерфейсами, поэтому _маловероятно_, что закладки могут работать со всеми имеющимся сетевыми интерфейсами, а значит у них есть поддержка только того, что на материнке плюс дрова самых распространенных сетевых карт.
Закладки хоть и работают на самом привелигерованным уровнем, т.е. видят абсолютно всё в системе, но закладки не могут знать, какое шифрование используется для шифровки траффика, хоть и видять всю память, не могут точно знать, что является шифрующим ключом, т.к. для всего этого надо иметь кучу эвристик, а уж если шифрование самописное, то и вообще не понять, что это такое.
Поэтому если у вас современный комп, но хотите по максимуму обезопаситься от закладок, то
1. Не использовать встроенные сетевые интерфейсы для подключения к Интернету
2. Использовать USB-Ethernet адаптеры
3. Использовать старый компьютер без IntelME / PSP в качестве роутера к Интернету
4. Настроить шифрованный туннель от современного компа к роутеру, желательно с каким-нибудь самописным шифрованием или цепочкой шифро-алгоритмов
5. Ограничить доступ приложений к шифрованному туннелю
В принципе это отчасти обезопасит современный комп с закладками от АНБ от слива инфы.
no subject
Date: 2022-05-01 08:26 pm (UTC)2. ну да клетка фарадея..... увы. но в корпосети такого быть не может.
3. ты не в теме, Intel ME глубоко насрать с какой сетевой картой работать. не неси ахинеи если не в теме не про ring0 и тем более -1 и про сетевухи ты не в курсе и несёшь и про шифрование ахинею.
поэтому.
1. дяденька ты дурак но с апломбом думающий что он что-то знает.
2. дяденька ты дурак но с апломбом думающий что он что-то знает.
3. дяденька ты дурак но с апломбом думающий что он что-то знает.
4. дяденька ты дурак но с апломбом думающий что он что-то знает.
5. дяденька ты дурак но с апломбом думающий что он что-то знает.
no subject
Date: 2022-05-01 09:35 pm (UTC)Я в свое время контрибутил в проекты coreboot/libreboot, так что давайте обойдемся без того, чтобы предполагать, что знает собеседник и чего не знает. Постоянно слежу за темой от Марка Ермолова и Максима Горячих.
Intel ME далеко не насрать с какой сетевухой работать. Так что разберитесь сначала как Intel ME работает, а потом что-то утверждайте. А то так и продолжим мериться писюнами.
no subject
Date: 2022-05-01 10:43 pm (UTC)Потому что ты тогда бы не нёс чушь .
Если у тебя на машине UEFI то сном твоих сетевух оно и управляет, как и поведением их во время этого сна.
Да конечно если у тебя сетевуха чипсетная то всё что есть у тебя на компе через Intel ME можно вытянуть даже на standby машине, так же можно на ней внести обновление в ОС Intel ME и кстати там не Minix позитив спиздел. Можно внести коррекцию в криптоалгоритмы , ну и многое другое.
Но на материнках и так часто стоят НЕ чипсетные сетевухи. Похуй что они на материнке распаяны. Для режима пробуждения и удалённого управления это не важно. И не знанием этого ты выдал то что ты кидис. Потому что я когда то как раз ставил компы где другие компы были загружаемые дистанционно HP шные станции в те времена когда никакого IntelME не было и даже AMT не родился. И дистанционно управлялись машины благодаря сетевухе которая ставилась в самый обычный слот PCI — просто в Биосе включался режим WakeUP от сетевой карты.
Ну и вообще при наличии этого режима в биосе можно спокойной загружать терминалы дистанционно. Просто в каретку запрограммированная на програматоре микрушка ставилась.
Так вот у всех и так в основном распаяные на платах реалтеки стоят. Ну кроме самых последних где даже вайфай в чипсете.
Тем не менее Intel ME с ними прекрасно работает. Просто закладка располагается в реалтеке , точнее это не закладка а формально фича для дистанционной загрузки компьютера в режиме терминала.
При этом в UEFI тебе даже не поможет втыкание старой сетевухи типа RTL8139D так как там есть универсальная микропрограмма для работы с любыми сетевухами на стадии их инициализации.
Если на материнке старый BIOS то да — такая сетевая карта не даст сделать сетевую загрузку, не даст в тихую внести изменения в ОС и программы IntelME и спиздить данные с SSD без включения компа и чтобы Intel ME тебя поимел тебе нужно включить компьютер когда он подключен к интернету. При чем если в сети есть коммутатор который формально не пускает в интернет это не важно, это все равно подключен к интернету. Только воздушный зазор и никакого радиоинтерфейса.
А вот если связь есть — то как только ты включишь компьютер .... потому что ты не понимаешь, но драйвера требуются ОС а не железу.
Чипсет и так знает какое прерывание он выделил карте. Сетевая карта и так идентифицирует себя как сетевая карта при последовательном опросе, диапазонов ввода вывода не так уж и много. И более того обмен данных , хотя и со сбоями возможен и при неправильном диапазоне ввода вывода даже если он не реконфигурируем программно. Ну и плюс адресация вообще похер так ОС intelME вообще не использует внешнюю адресацию. Собственно если ты проявишь внимательность и окопаешься в дистрибутивах той же семёрки ты найдёшь там универсальный драйвер сетевого адаптера и он будет работать. Как ты думаешь почему ?
Чтобы тебя трахнуть АНБ шнику на самом деле хватит и 10 мегабитной скорости с которой он поставит в закрытую операционную систему нужный драйвер для полноскоростного обмена ( а точнее просто набор диапазонов выставит) . А корявую возможность залезть в IntelME он получит сразу же как ты включишь компьютер.
Кстати то что ты не знаешь такой простой вещи — что в реальности не требуется весь зоопарк драйверов на весь зоопарк карт чтобы карта начала работать и рассуждаешь на уровне ОС выдаёт в тебе что ты немного припиздел про своё участие в coreboot.
Я доже когда то в древности на ROM.BY ошивался и биосы ковырял, но я не говорю что я участник проекта внесший какой то там вклад, хотя препарировал ряд биосов , нашёл адреса смещений, нашёл возможности подмен модулей, и не помню уже что то я там с памятью намудрил а да нашёл как проддержку диска болльше не помню уже 8 вроде гигов врубить что то там с режимами LBA ну реально это маловажная древность для меня, дедушка забыл. Но я микрокод этих модулей не писал, и если они были не в чистом виде то и кода их в диасамблере не видел и понимал что они работают как черный ящик. То есть не надо припёздывать про свою роль, это выдаётся не знанием работы элементарных вещей.
no subject
Date: 2022-05-02 12:23 am (UTC)а что по твоему крутится на чипсете как не ОС, раньше это была RTOS threadx, на новых чипсетах minix (жидки в Интел решили сэкономить на выплате лиценз. отчислений)
При этом в UEFI тебе даже не поможет втыкание старой сетевухи типа RTL8139D так как там есть универсальная микропрограмма для работы с любыми сетевухами на стадии их инициализации.
Я в свое время драйвер для DOSa с нуля писал для почти идентичного чипа RTL8139C. Поэтому, кишки устройства сетевых интерфейсов знаю хорошо, но фишка в том, даже с учетом того, что они похожи, наличием RingBuffer-ов на прием и отдачу пакетов, и некоторыми другими общими моментами, все они отличаются адресами и размером управляющих регистров, адресами портов ввода-вывода и.т.п, т.е. отличается в деталях, и именно эти отличия в деталях и дает такой зоопарк драйверов, иначе бы был универсальный драйвер для всех карт и наступила бы гармония и радость с сетевыми интерфейсами.
Чипсет и так знает какое прерывание он выделил карте. Сетевая карта и так идентифицирует себя как сетевая карта при последовательном опросе, диапазонов ввода вывода не так уж и много. И более того обмен данных , хотя и со сбоями возможен и при неправильном диапазоне ввода вывода даже если он не реконфигурируем программно.
Сетевая карта сама себя не идентифицирует в том плане, что должен быть кто-то внешний по отношению к ней, кто бы по VendorID & ProductID идентифицировал её как сетевую карту, я тут речь про PCI устройства говорю, а не про USB сетевые устройства, которые да, оповещают систему, что они за тип устройств.
Хранение ProductID&VendorID, и связанных с этим устройством разных настроек и адресов, и знание того, что это за адреса(управляющие регистры, кольцевые буфферы и.т.п.) это по сути и есть хранение драйверов этих устройств, а их всех хранить накладно в чипсете.
Поэтому либо хранить драйвера только самых распространенных сетевух, либо использовать набор эвристик в надежде, что это не вызовет зависание компьютера или синий экран при вмешательстве в работу сетевой карты.
no subject
Date: 2022-05-02 01:52 pm (UTC)советую тебе взять пятьдесят разных сетевух в том числе и намонтированных и ты очень удивишься тому что портов ввода вывода диапазонов в реальности не так уж и много.
Кроме того есть метод определить эти порты последовательным опросом на хост — если отправка пакета не производится — порт закрыт. Если производится порт открыт, таким образом очень легко определяется диапазон портов. Да конечно на уровне ОС высокого уровня это сделать сложно. На уровне более низком — легко.
Стучатся именно изнутри.
Ещё раз если ты хочешь передать данные со скоростью 10 мегабит совершенно пофиг на внутреннюю архитектуру карты — то что нужно для передачи узнаётся очень легко , а адрессное пространство это вообще — если ты на аппаратном уровне общаешься с чипом сетевой карты даже через PCI то ты можешь выделить любое адресное простраство, это не важно. Это лишь отвечает за взаимодействие с ОС — не с железом. Управляющие регистры ? ты о чём ? О переключении режимов симплекс дуплекс, определения скорости ? а это совершенно не важно для самой возможности подключится.
??? ты думаешь что имея на борту кварк на 200 мегагерц и ПЗУ на 64 мегабайта нельзя запустить программу для идентификации сетевого устройства plug&play ? 64 мегабайта это жесткий диск 1993 года. И то туда игры пихали. Работали они нормально и в 1998 году. И сетевые карты там если плуг энплейные спокойной определялись. И 200 мегагерцовый пень тоже тогда был довольно дорогой. Я вот себе не мог такой позволить даже с летними подработками на стройках. А это и есть IntelME
Как это может вызвать синий экран когда компьютер в режиме standby ? Опрос то изнутри проводится в этом режиме. Даже если он ничего не получил при этом, то при включеном режиме он так же не может быть потому что обращения ОС высокого уровня к железу к которому обращается IntelME в это время обладают меньшим приоритетом и просто образуется задержка в несколько тактов пока IntelME не свалит увидев что идёт внешнее обращение. Ты даже ничего не заметишь на частоте 3000 Мгц это например 30 тактов то есть 0,00000001 с Ты заметишь расхождение в 0,00000001с ? Очевидно что нет. ОС тоже не заметит — никто не заметит вообще.
no subject
Date: 2022-05-01 10:44 pm (UTC)