Также как и слив Intel я увидел этот слив у Antifa, который потом объединили в один архив на другом канале Telegram и выложили на 4channel. Таким образом, слив скорее всего произошел не на 4chan. Слив включает в себя также исходники DirectX 8 и Microsoft Paint и весит 12.9 Гбайт в распакованном виде и 2.539 Гбайт в запакованном (обе ОСи). Есть также полный торрент (magnet в комментах), вам нужен файл nt5src.7z (не windows_xp_source.rar, это другой запароленный паролем _microsoft пустой архив). Сборка занимает 3 часа, и вот видео youtu.be/8IyW-bwGQTQ этого!
Во многих файлах добавлена поддержка IA64 и amd64 (да, есть поддержка Windows XP 64 bit edition). Есть pow.s, на ассемблере. mspaint в XPSP1\NT\shell\osshell\accesory\mspaint\ вполне компилируется! Содержит игры Hearts (на C++), Reversi, Solitare! Также есть исходники mssipotf, которые позволяют подписывать файлы шрифтов и проверять эти подписи (MD5 + RSA). Есть mscms, система управления цветом от Microsoft. Есть UI драйвер Postscript шрифтов NT\printscan\print\drivers\usermode\driverui\ps и makentf. Есть charmap.exe исходники. Есть исходники vocalizer, а вы знали, что 66 = звук f, 259 = звук uh, 6b = звук k?
The Verge написала о том, что Microsoft имела секретную тему “Candy”, которая заставляла Windows выглядеть, как интерфейс Aqua от Apple двухтысячных. Тема неполная.
Как собрать.
tools\razzle.cmd и создать файлы, которые потребует скрипт
tools\buildx.cmd /z
tools\postbuild.cmd
Сборка 3 часа, желательно на Windows XP. Компилятор cl.exe в составе медленный.
Материал, возможно, будет дополняться, так как слив просто огромен.
Molokastiy
Скорее всего разработчики ReactOS не будет ничего оттуда заимствовать, боюсь даже смотреть постремаются и будут изобретать велосипед лишь бы не нарушать лицензионную чистоту.
Cryvage
Ну так правильно. Какой смысл в ReactOS, если она не будет лицензионно чистой? Те, кому плевать на лицензии, всегда могут поставить крякнутую винду. Это тривиально. А вот легальная, свободная альтернатива — это уже намного сложнее, и интереснее.
atri1
смысла в РеактОС нет никакого
всегда быстрее взломать готовую систему чем пилить свою кривую
так было в 80-х с кучей эелектроники с запада, так было и с игровыми приставками в 90-х-2000-х когда они официально не поставлялись в СНГ и их просто продавали уже взломанными
а пока есть официальная поддержка(сейчас) смысла в своем костыле вообще никакого, если Микрософт уйдет из СНГ тогда все вернуться на взломанную винду(и прочий софт) и ничего не изменится
Old_Chroft
На предприятиях куча специфического софта, написанного под ранние версии винды. Переписывать его нет никакого смысла — «работает — не трогай» (да и недешевое/небыстрое это занятие). А вот запасы старого железа не безграничны. Можно конечно возразить типа «виртуалки и все такое» — но нет, виртуалки плохо дружат с производственным оборудованием. Так что ХР-подобная ОС, которая дружит с новым железом нужна.
fougasse
Поддержка embedded XP есть до сих пор, если что, но не для всех, конечно.
Ну и она в тыкву не превратится и не превратилась, когда срок поддержки закончится.
Если софт настолько немодифицируем — оно в интернет вряд-ли смотрит и никто не органичивает использование легальной ОС.
geher
Она отказывается "дружить" с новым компьютерным железом, драйвера на которое есть только под десятку. Даже семерку порой уже не водрузить на новый компьютер.
Придет время, и все совместимое компьютерное железо превратится в тыкву по причине банального физического старения, а останется в доступе только новое. А вот железка стоимостью, на порядки превышающей стоимость самого крутого современного компьютера, сделанная в отличие от этих самых компьютеров на века, может продолжать жить, и ею надо будет как-то управлять.
tyomitch
Каким способом эта железка подключается к компьютеру?
А то у нас есть одна такая железка, работающая через RS-232. Компьютер, с которым она работала изначально, давно на помойке, а она продолжает работать через USB-адаптер под WinXP в виртуалке.
geher
Через последовательный порт. И все бы хорошо, оно даже "правильного" последовательного порта не требует, довольствуется USB переходником, но управляющая программа, зараза такая, напрочь отказывается работать в виртуалке (а еще при запущенном отладчике и при установке на ту же машину некоторых средств разработки), громко вопя про попытку бедную программу взломать (точнее ругается на запуск под отладчиком, что считается ею недопустимым). А еще она почему-то "не любит" винды версии выше ХР.
Am0ralist
Ну и да, когда тебе новый лабораторный прибор поставляют с современным системным блоком, на котором крутится более-менее свежая винда, гипервизор и в нём вин 2000 то ты понимаешь насколько IT далёк от реального мира зачастую…
tyomitch
Разница в том, удастся запустить этот управляющий софт под VM, или нет.
Если, например, к железке для подключения к компьютеру прилагается плата ISA, то VM не поможет.
khajiit
Зато поможет pci-isa bridge.
Собственно, ISA, кажется, до сих пор есть в компьютерах (Intel) в виде LPC. Эта штука делает то же самое, что PCI-LPC bridge, и как pci-устройство, может быть проброшена в VM. А в свою очередь, для ВМ можно эмулировать соответствующий процессор.
Разумеется, без реального устройства сложно говорить наверняка, но как минимум, видны обходные пути.
И даже если мост с платой не заработает, можно подключить плату к плисине, умеющей со стороны хоста в нормальный pci-e.
Am0ralist, в общем, как раз IT'шник в лице одной пушистой морды, видит пути решения.
Am0ralist
Слушайте, у нас на производстве меняли системник при итальянском чпу. Просто через два компорта работающий.
Инженер полдня ковырялся, не заводится и всё. Потом сказал в духе, что между инженерами сей компании ходя слухи, что с компами с чипами риалтека не работают чпу. Взяли первый попавшийся комп у технологов без риалтека, чпу взлетел с полпинка.
Под медаппарат от сименса было немного не так, но там тоже замена матери на другое поколение процов/чипов привела к тому, что несколько дней их инженеры долбились, пытаясь свой софт на этом франкеншетйне завести, а в итоге вроде как привезли такую же мать из-за границы. Хотя там, как я понял, не зависит начинка прибора от железа блока. В идеале. А в реале…
Внимание, вопрос: вы виртуалки под каждую такую магию шаманить будете? А верифицировать результат того, что работа в виртуалке полностью равна работе на голом железе для подобных аппаратов как будете?
khajiit
Не зная, какой именно чип имеется ввиду (не звук/сеть же?), сложно гадать. Вполне возможно была кривая реализация опорной частоты, в результате чего на используемой скорости происходила рассинхронизация.
Причем, не факт, что проблема была не на стороне устройства.
А вот за закупку и производство таких чудес — вообще надо банкротить принудительно, чтоб неповадно было.
А это обязательно, особенно, если проблема решается заменой мелкого устройства-посредника на более совместимый вариант?
Собственно, ответ и будет ответом на ваш вопрос.
Am0ralist
Вполне может быть. Только ЧПУ стоил 6 лямов + лизинг, а системник 30к.
Мать — серверный асус. Просто уже старая и в РФ отсутствующая. Прибор по сути из двух независимых вещей: платформа и интегрированный комп. В идеале. На практике… Может какой инженер самого сименса по конкретной серии их приборов смог бы сделать и быстро, но работали местные представители.
вы сейчас про сименс или про коммерческую лабораторию, закупающую как бы известных и качественных по мировым стандартам производителей медоборудования?
на совместимый с чем, извините?
единственный вариант, когда от компа ничего не зависит, когда управляющая приблуда встроена в прибор (в этом случае если она сдохнет — вообще ничего не замените без ремкомплекта).
вот только мало кто пишет свою ось для этого и разрабатывает встроенное железо сам, либо пытается под производство в условных тысячу приборов протестировать совместимость со всем многообразием ПК в мире.
Обычно используют либо брендованные (HP, например, что в чпу, что в разных медприборах встречал) железки, ну или конкретное, хоть и всем доступное, железо (как выше серверные мамки от асус) с чем и тестят, попутно где-то нечаянно завязавшись на него жестко из-за особенностей реализации.
До инженерного подхода в повсеместной разработке нам ещё далеко…
khajiit
Звучит как плохопрожареная дичь, атакующая в филей…
Скорее всего, случайная корреляция. Наиболее частая причина сбоев последовательного порта — это разные опорные частоты. Для МК даже приходилось специально искать неровные кварцы, чтобы стабильная передача была не на одной-двух скоростях из возможных.
В старых компах (PCI) uart'ы могли тактироваться от системного источника с n?33,3(3), в компах поновее (PCI-e) — 100МГц. Ни то, ни другое к стандартной сетке толком не приводится.
Потому если порты не снабжены своим собственным кварцем и генератором, то стабильность работы, сами понимаете, оставляет желать лучшего.
Увы.
Про производителей и потребителей тивоизации. Будь они хоть карманными фирмами лично президента.
Всеми лапами за. И хвостом.
Paskin
Это не тивоизация — это требование FDA и других национальных регуляторов о сертификации программно-аппаратной платформы. В Сименсе просто не заморачиваются проверками совместимости с рандомным железом — поскольку это низачем им не надо. В том числе и в плане ответственности — если что-то глюкнет с новой платой и пациент как-то пострадает.
khajiit
Промстандарты, как бы, отлично документированы. И тот же Сименс, покупая консьюмерское железо вместо промкомпа должен вести списки совместимости. Если инженеры вышли за пределы списков самовольно — это их косяк, конечно.
Если соблюдать стандарты и подбирать совместимое железо (а без этого не получится серийного производства) то ломаться на ровном месте будет нечему, и никакая процедура получения бумажек тут не может помешать, потому что работающего железа они не касается никак.
А если и так сойдет, и вообще клиент же тогда к нам опять обратится — то получаем что имеем.
Paskin
Сименс не покупает «консьюмерское железо». Сименс заключает договора с ведущими OEM-производителями (Dell, например) и поставляет какую-то одну модель компьютера со своими системами (например, томографами). За какое-то время до того, как эта модель планируется к end-of-life — тот же Dell предлагает замену, она всесторонне проверяется и весь комплекс по новой сертифицируется FDA и другими регуляторами.
Разумеется, количество геморроя сильно зависит от того, чем управляет этот компьютер — планированием татуировок на фото (Class I) или NFC-программатором кардиостимулятора (Сlass III).
khajiit
Ну, как вам сказать. Комп в ATX, даже если в нем стоит вендорлокнутая мать, не становится промышленым.
Даже если сертификатов хватит обклеить комнату вместо обоев.
И именно такие игры и становятся причиной того, что где-то как-то вроде — а нифига, которые без бубнов не решаются.
Paskin
По поводу «отличного документирования промстандартов» — любой уважающий себя стандарт (да тот же HTTP) имеет столько вариаций, версий и подверсий, что ни одна имплементация не пройдет тесты на 100%. Это я вам говорю из опыта работы в «доинтернетном» телекоме, где совместимостью еще заморачивались — и с фирмами уровня Nokia и Ericsson.
khajiit
HTTP — это часть монстра под названием web, которого лучше просто так не призывать… На этой неделе, вроде уже был про него топик.
Хотя отдельные части могут быть и довольно просты.
dragonnur
А причём тут «стандартная сетка», которую довольно несложно получить синтезатором частоты?
khajiit
То есть, вы предлагаете на удешевленную плату (Realtek вместо Intel), из которой для удешевления выкинули кварц и генератор, поставить отдельным корпусом синтезатор частоты? )
Этот может и ошибаться, но оно так не должно работать.
dragonnur
Зачем «отдельный корпус»? где-то в недрах рилтека может валяться IP ядро синтезатора частот. Персональные кварц/генератор не так и нужны, когда на плате есть разводка тактовой (НЯП мосты имеют такие выходы в PCI, а для синтезатора может хватить и самосинхронизации на имеющихся сигналах даже)
grumbler66rus
Синтезатор частот при необходимости дробного деления частоты «несколько» не даёт точности.
Вы забыли про погрешность.
khajiit
Синтезатор может быть выполнен на простом делителе. ФАПЧ, кажется, приказала долго жить с аналоговыми умножителями частоты?
И если используется системный генератор, то все упирается в его реальную частоту. А RS 232/485, емнип, автосогласования не умеет.
grumbler66rus
Знаете, общался я с «какими инженерами Самого Сименса». Либо они считают русских инженеров идиотами, либо моя инженерная квалификация выше. Общались по английски.
Paskin
> медаппарат от сименса
> замена матери на другое поколение
Вообще-то, в медтехнике запрещено менять железо на что-то другое.
Jogger
Смысла в Linux нет никакого, всегда быстрее взять взломанный Unix чем прилить свой кривой. /sarcasm
NeoCode
Смысл в ReactOS еще и в том, что она открытая и можно тем или иным способом проверить что там нет бэкдоров.
gecube
Винду тоже в теории можно проверить на наличие бекдоров. У них есть программы, по которым можно получить доступ к исходникам. Это, конечно, не отвечает на вопрос — а действительно ли конкретные бинарно были скомпилированы именно из этих исходников. Но это же справедливо и до реактос. А сами Вы компилировать ничего не будете.
А ещё… ещё мелкософт pdb файлы с отладочной информацией давал. Так что, да, они — корпорация зла, но не абсолютного ))))
Balling Автор
>pdb файлы с отладочной информацией давал
Не на все. Например, atmfd.dll. В котором столько уязвимостей было, что пришлось его выпилить.
angryRamulus
«Обезжиренное зло»(С)Доктор Зло из кф Остин Поверз
4ainik
Можно подумать это тривиальный процесс для исходников такого уровня
artmv32
Когда гос органы делают валидацию кода Windows они запускают билд и потом сравнивают полученные файлы с тем что есть на их тестовом компьютере.
gecube
В это очень мало верится. Потому что на окончательный бинарный код влияют библиотеки, магические константы, и флаги компиляции (всякие оптимизации и все такое). Да и теория повторяемых (бинарно!!!) сборок стала зарождаться совсем недавно.
netch80
Их тоже можно повторить, для этого требуют точные инструкции.
Недавно — это когда? Рассказ от Сергея Кубушина, как софт для игровых автоматов проверяла соответствующая комиссия в США и требовала повторяемости результата, для чего им пришлось подпилить GCC и оторвать у него генерацию таймштампов — это 2000 или 2001. И им не нужна была какая-то "теория", им достаточно было нескольких простых действий. И это только тот случай, что мне лично знаком, а наверняка это делали и раньше.
Если вы про "теорию" имели в виду обеспечить повторяемость между разными компиляторами — по-моему, это сейчас нереально. А вот убрать явно мешающие элементы в виде таймштампов и укротить абсолютные пути (или предписать конкретные при сборке), убрать параллельную сборку — это вещи, которые грамотный программист ловит за пять минут спокойного раздумья.
Вот что интересно в этом плане в связи именно с Windows — насколько на результат сборки будут влиять принудительные апдейты 10ки...
tyomitch
У меня с GCC был случай, когда переименование локальной переменной приводило к изменению в генерируемом машкоде. Закопавшись в отладчик, удалось выяснить, что register allocator обрабатывает переменные по порядку, в котором они лежат в некой хеш-таблице, и переименование переменной поменяло порядок обхода.
Предполагаю, что влиять на генерируемый машкод могут и более тонкие факторы, типа абсолютного пути самого компилятора и стандартных заголовков, или например hostname.
gecube
все так, к сожалению
sumanai
Ну, для отладочной сборки я нашёл 4 изменённых байта для обычного исполняемого файла, так что не всё так плохо.
netch80
Это изменение кода. Всё законно, даже если парадоксально.
Вообще как раз где-то в начале 2000-х Linux мир озаботился проблемой проверки зависимости сборки пакетов от ряда факторов, включая порядок установки зависимостей (были плачи на это), корректности исполнения настроечных пакетов и т.п.; как результат, например, была порождена OBS. Этот подход, или его клоны для более странных дистрибутивов, сейчас основной, и подходы типа "пересобираем с нуля раз в сутки, а если что поменялось без объяснения — ищем причину" приняты, соответственно, сильно больше десяти лет. И влияние hostname и пути к компилятору исключено тоже очень давно. Фирма, где я работал 2008-2014, делала свой дистрибутив, и этот процесс я наблюдал в подробностях (работали как раз через OBS).
(Уточнение: если путь к компилятору означает путь к libgcc_s или аналогу — то разница, конечно, будет. В RedHat devtoolsets это пришлось специально отрабатывать, вместе с версией стандартной библиотеки C++.)
Да, подход OBS означает наличие сборочного контейнера (ещё в до-докеровские времена, это может быть и простой chroot). Но это доступно в Unix мире ещё с конца 80-х, и потому проблемы не составляет.
tyomitch
А компилятором каким компилируют — тоже валидированным из исходников, или полученным как чёрный ящик?
www.cs.cmu.edu/~rdriley/487/papers/Thompson_1984_ReflectionsonTrustingTrust.pdf
netch80
Думаю, достаточно варианта типа "взять 3 основных дистрибутива, собрать целевую версию GCC/Clang/etc. в них, этим промежуточным — собрать целевой компилятор на целевой среде и сравнить побайтно".
Да, может, 1e-20 вероятность получить Томпсона и будет… для этих целей — устроит.
Paskin
Думаю, что для вставки серьезных бэкдоров, серьезные же организации используют небольшие «доработки» криптофункций, ГСЧ и т.п. — для поиска которых придется затратить немало времени и усилий.
pansom
У них был лет 7-8 большой скандал ибо подсмотрели. Не думаю что вновь вступят на эти грабли.
NeoCode
Посмотреть как устроено и скопировать это разные вещи. Вот не думаю, что они совсем не подсматривают:) Но официально конечно говорят что не подсматривают. А на практике наверняка понять многое можно только с дизассемблером и отладчиком.
Balling Автор
Дизассемблирование законно и разрешено, и они это открыто используют, чтение исходных кодов это уже совсем другой вопрос.
NeoCode
Я говорю не о законе, а о реальности. Да, по закону чтение скорее всего запрещено, и поэтому говорить об этом нельзя, и никто никогда не скажет и будут всячески отрицать, чтобы соблюсти букву закона и избежать даже возможных зацепок для судебных исков. Но в реальности никогда не поверю, чтобы люди с Хакерским мышлением (а другие и не будут заниматься такими проектами) не посмотрели:)
4ainik
Если чтение исходников запрещено значит они что-то скрывают, вполне возможно что-то плохое и/или незаконное
tyomitch
Дадите почитать содержимое вашего почтового ящика, дабы убедиться, что в вашей переписке не скрывается что-то плохое и/или незаконное?
4ainik
Не дам! Это персональные данные и охраняются законом о тайне переписки.
tyomitch
А исходники — это коммерческая тайна, и охраняются ст. 183 УК РФ и аналогичными законами в других странах.
dartraiden
Значит, вы скрываете что-то плохое и незаконное.
tiandrey
Напомните, какой закон нивелирует пункт EULA о том, что дизассемблирование запрещено?
SomeDD
С некоторой натяжкой — ГК РФ, ст. 1280, п.3
pansom
Я забыл «подсмотрели» в кавычки заключить. Там были куски кода из утёкших исходников 2000 винды или какой там.
tyomitch
Не «куски кода из утёкших исходников», а «куски кода, совпавшие с утёкшими исходниками».
Они утверждали, что код с требуемой функциональностью можно написать только одним способом, так что совпадение было неминуемо.
pansom
Тогда они закрыли доступ к исходникам и около года вычищали. Там были факты непосредственного копирования.
unxed
Нет, таких фактов там не было. Был наброс, потом долгая нудная проверка. Ничего сомнительного не нашли.
tyomitch
Насколько я помню, сомнительного было много (из-за чего проверку и начали), но ничего несомненно скопированного в итоге не нашли.
Tangeman
Можно даже и подсматривать, но при этом подсматриваюший должен написать спецификацию (что и как делать), а кодер уже может по этой спецификации сделать свою реализацию. Если кодер не будет в контакте с подсматривающим, то это вполне законно, в том смысле что кодера никак не привлечь (если не нарушены другие вещи, типа патентов) — а вот подсматривающий может получить по ушам, если, к примеру, он под NDA.
unxed
Не подсмотрели, а были обвинены в том, что подсмотрели. Это отнюдь не одно и то же.
u007
Есть же метод чистой комнаты, chinese wall technique. Один ковыряет код из архива, рассказывает другому, тот имплементирует. При этом второй сам код не читал и чист перед всеми.
4ainik
можно еще придумать полиморфную белую комнату с элементами испорченного телефона :)
sumanai
Собственно часть исходных кодов утекало и раньше, и они утверждают, что туда не смотрели. Как минимум прямого копипаста там точно нет, хотя с другой стороны, те части, которые до этого не утекали, реализованы хуже или не реализованы вообще, по сравнению с теми, у которых уже были утечки.