Pull to refresh

Comments 111

Круто на самом деле.
Это событие говорит о том, что работы над MinWin не просто продолжаются полным ходом, а уже однозначно достигли стабильных результатов следующих этапа по сравнению с тем, что был показан на момент релиза Win7; ну а причесанные исходники подготовительных этапов теперь не стыдно и продемонстрировать :)
Это тут причем? Обычное привлечение сторонних разработчиков. Я бы не стал делать выводы только из того, что эти сырцы осмелились выложить.
А вообще такие штуки несолидно на быдлофайлопомойках раздавать.
UFO just landed and posted this here
Там есть код синего экрана смерти? Я хочу видеть это
UFO just landed and posted this here
UFO just landed and posted this here
Что не так? Можете себе представить, на Хабр всё ещё заходят люди у которых NAT, которым слова рапида/депозит внушают тоску.
Чем плохи iFolder и SendSpace в таком случае?
Ничем, но кому-то может привычней Letitbit.

Просто до сегодня о SendSpace не слышал, а iFolder не люблю из-за рекламы.
из наиболее беспроблемных файлообменников можно назвать ещё MediaFire, но честно говоря как-то забыл на него залить
Вообще надо-бы перебрать все современные файлообменники на предмет ам/кг, пригодится.
«The WRK packages core Windows XP x64 and Windows Server 2003 SP1 kernel source code...»
XP x64 как раз 5.2. или я что-то путаю?
да, не прошло и шести лет. Видно этот код вообще уже не используют раз выложили.
Да, вы что-то путаете, у XP версия 5.1, 5.2 — это 2003.
А ведь точно, пардон)
и под какой лицензией они выложены?
а то может на них и смотреть нельзя
было бы действительно нельзя — не утекло бы ;-)
оно никуда и не утекало.
В принципе код к устаревшим виндам всегда можно было получить через образовательные программы Майкрасофта под этими исследовательскими лицензиями.
кто хотел, давно ознакомился.
код к устаревшим виндам всегда можно было получить

Покажите, что можно получить, кроме огрызков ядра?

Под «утекло» я подразумевал «попало в свободный доступ». Далеко не каждому захочется косить под учебное заведение, чтобы покопаться в исходниках.
Для Microsoft, видимо, идеологически неприемлемо сделать просто open source для всех без ограничений, поэтому выдумывают всякую сдерживающую хрень.
ну навеное это и есть эти огрызки. ну теперь легче достать.
ну просто open source они сделать врятли смогут, даже если захотят. Да идеология мешает.
Какая к чертям идеология! Там стопудово не только наработки Microsoft, но и третьих фирм. А это лицензии, патенты и прочая, прочая. От всего этого обычно страдают даже изначально открытые ОС, чего уж говорить о коммерческой Windows! Даже если ВНЕЗАПНО главой Microsoft станет RMS, Windows скорее погибнет, чем станет открытой.
а зачем ее делать открытой?

чтобы вирусы стало писать проще?

чтобы в суд подавали из за каждого куска кода, который был повзаимствован у кого то?

чтобы появилось кучу клонов-конкурентов?
Надеюсь вы это написали от добросовестного заблуждения, а не от желания потроллить.
> а зачем ее делать открытой?
Этот вопрос в компетенции Microsoft, а не моей. Они и так открывают что могут. Единственное что мне лично могут не нравится открытые лицензии MS, но это уже мои проблемы.
> чтобы вирусы стало писать проще?
Хорошего-же вы мнения о коде Microsoft. Даже сейчас, злоумышленнику не составит труда найти исходники Windows. Однако в случае открытия кода под подходящей лицензией, скорее всего будут появляться не только вирусы, но и третьесторонние заплатки от них.
> чтобы в суд подавали из за каждого куска кода, который был повзаимствован у кого то?
Фактически вы обвиняете Microsoft в воровстве? Если это так, то суд — это справидливо. Но скорее всего чужой код там лицензирован, что препятствует полному открытию кода, однако в случае решения этой проблемы, иски подавать будет не за что.
> чтобы появилось кучу клонов-конкурентов?
Кому от этого будет плохо, интересно знать? Дистрибутивов Linux дофига и больше, и ничего — живет и развивается.

Но вообще-то, открытие кода Windows — это фантастика. Я говорю о нем только с позиции «что было-бы если...». Думаю, что переоформить такую прорву соглашений не реально. Может лет через 20.
А вы думали о том, что вместе с третьесторонними заплатками для одних дыр очень соблазнительно запихнуть собственный бекдор/руткит?
Ну вообще-то, open source — это не анархия. Софт устанавливается как правило с сайта производителя ПО, или из репозитория дистрибутива. Производитель не станет портить себе репутацию, а в репозитории дистрибутива — довольно жесткая модерация. Что касается совсем уж левых приложений, то дисочки типа «Zver», разумными людьми не используются и в нашей реальности.
Что-то не наблюдаю вала вирусов ни под Макось (ядро открытое), ни под Линукс, ни под Фряху.
доля рынка сказывается
Компов с макосью счас больше, чем десять лет назад было с виндой, ничего такого я не замечаю.
Почитайте как-нибудь какие ошибки чинятся обновлениями безопасности для макоси. Там 70% это уязвимости типа «arbitrary code execution». Просто макось — она как неуловимый Джо, зачем писать под неё, когда под Винду уже всё наработано и пользователей на порядок больше.
До 10 процентов в некоторых странах это уже далеко не неуловимый Джо.
>Кому от этого будет плохо, интересно знать? Дистрибутивов Linux дофига и больше, и ничего — живет и развивается.

самой же microsoft и будет плохо

зачем создавать конкурировать со своими же продуктами?

>Дистрибутивов Linux дофига и больше, и ничего — живет и развивается.

так Linux же бесплатный.
*создавать конкуренцию
>так Linux же бесплатный.

RedHat, SLED, SLES? Стоят не меньше Винды
> зачем создавать конкурировать со своими же продуктами?
О, во-первых это хороший посыл к повышению качества ОС. Во вторых, что-бы сделать вывод, достаточно посмотреть как обстоят дела у других: Так RedHat Enterprise Linux отлично продается, не смотря на открытые исходники из которых создается полный клон — CentOS
> так Linux же бесплатный.
Однако основными поставщиками кода служат производители коммерческих дистрибутивов.
Думаю что в НФ про Open Windows, версия Home без поддержки будет бесплатной, Ultimate и Server, вероятно, будут приносить даже большую прибыль.
ок. посмотрим что будет

Боюсь, ничего не будет. Как я уже говорил, это только фантазия на тему «что было-бы если...». Когда-нибудь, когда линейка Windows NT станет историей, истекут патенты, может исходники Winows и станут общественным достоянием. Но мне тогда будет наверно уже за 80, да и толку от них будет как от эмулятора Spectrum'а :)
Да и не только к устаревшим. Исходники винды были доступны и актуальные. Вон, знакомые рассказывали, как организована работа с ними в одном израильском вузе — страшное дело. Все изолировано, никакие гаджеты в комнату проносить с собой нельзя, компы опечатаны, без портов, отдельная сетка и т.п.
Смотреть можно. Но судя по тому, что написано в 1п лицензии, после этого ты не имеешь права создавать конкурирующие продукты. Ну, вобщем «открытый» код так, как его понимают в MS.
Еще вроде как утечка была и в сети выложили файлы windows_nt_4_source_code.zip (229 Мб) и windows_2000_source_code.zip (203 Мб). Не знаю насколько законно публиковать магнет-ссылки, но думаю в инете найти эти файлы не проблема. Баян, но может кому интересно будет.
это же просто ссылки, док! :)
так же как и торренты сами по себе не содержат ничего конкретного
UFO just landed and posted this here
А не реакция ли это на то, что на данный момент все те, кто хотят понять, как работает ядро NT, лезут смотреть коды ReactOS, [вместо того|вместе с тем], чтобы читать MSDN?
Что в ReactOS есть такого, о чём ещё не писали в книжках по внутреннему устройству Windows?
Работающая модель ядра.
Все кто действительно хотят понять как работает ядро, копаются в нем.

В Windows куча недокументированных функций ядра, которые не пишут в книжках. Их нужно находить дебаггером ring0 либо читать мануалы в интернете, благо умных людей много.
Да, как раз хотел упомянуть про дебаггеры и дизассемблеры. Привет реверсерам! :)
Уверен, кто очень хотел — давно разобрал ядро по косточкам.
В таком случае ReactOS давно бы уже вышел из альфы.
ReactOS это не только ядро.
Да, но, почитывая NewsLetters, складывалось впечатление, что основные проблемы у них в ядерной и околоядерных областях. Хотя, в их новостях не подкованному в этой теме человеку не так легко всё понять =).
Ядро как раз сейчас более-менее стабилизировалось. Множество проблем до сих пор присутствует в подсистеме win32, но и для этого нашли workaround.
Уверен, кто очень хотел — давно разобрал ядро по косточкам.
Как бы вам сказать помягче… дебажить «Hello Wold» и ковырять ядро ОС, это не одно и тоже.
Автор, нельзя ли написать, по какой причине исходники Windows Research Kerne оказалисьl в свободном доступе? Что это, утечка или добрая воля майкрософта? До хабраката нифига не понятно, а дальше уж слишком техническое описание.
ReactOS уже почти дописали, в MS поняли, что пролетают, вот и зашевелились. ;-)
Это добрая воля MS. Не смотря на обилие ссылок на рапидшары, архив можно скачать с сайта MS, залогинившись под LiveID и приняв соглашение.
Microsoft активно использует goto в этом продукте. Хоть ни разу не писал дрова на си, только на асме, подозреваю, что в низкоуровневом коде писанном на ЯВУ без него тоже сложно обойтись. Я прав?
Я ни разу еще в системном коде, тем более в своих дровах не применял goto. Собственно и не в системном коде применял только, когда осваивал qbasic
Ух ты! А как насчёт алгоритмов которые невозможно реализовать эффективно без goto? Прежде всего это конечно же выходы из вложенных циклов. Плюс, разбор протоколов и всякого рода структур, где можно конечно применить и массу функций, но сильно потеряете в производительности на передаче параметров.
Я не помню, чтобы в последнее время писал циклы с вложенностью больше двух. Goto иногда бывает оправдан, но у меня пока таких случаев не возникало.
Если код с goto будет проще, короче, понятнее, то стоит его применять! Тем более, что он ещё и быстрее будет
В C и C++ есть некая недоработка — невозможность выхода / continue из вложенного цикла. Для этого применяется goto.
И проверки на каждом уровне цикла, да ещё и в каждой итерации? :) смешно. Особенно для ядра, где производительность наиболее видна.
Ну ядро, это конечно особый случай, а так, с флагами все по крайней мере ясно видно, где вход, а где выход. А я всегда предпочитаю ясность кода скорости.
чукча не читатель, чукча писатель
Кстати, потери не такие уж большие, т.к. во внутреннем, самом часто повторяющемся цикле цикле проверка есть всегда, а внешние по определению повторяются реже. Зато в любом цикле видно, как происходит выход из цикла.
Во внтуреннем (каждом внутреннем) добавляется как минимум одна дополнительная проверка. Т.е. кол-во проверок как минимум удваивается. Если же учесть, что простые циклы (со счётчиком или одной проверкой) очень эффективно оптимизируется компилятором, а две проверки оптимизируются намного хуже (ничего тут не поделаешь — одна проверка — это одна или две команды ассемблера, а две проверки могут вылиться в десяток), то потеря на проверках больше чем в два раза. Плюс добавьте дополнительную нагрузку на блоки предсказаний процессора — эта дополнительная проверка может стать той самой каплей, которая переполнит память переходов/возвратов, то потеря производительность может стать совсем заметной.
Короче говоря, порочная это логика, особенно для ядра.
> Во внтуреннем (каждом внутреннем) добавляется как минимум одна дополнительная проверка.

Вот в этом месте я не понял, почему дополнительная проверка? На мой взгляд, нет ее. Пусть нужно выйти из внутреннего цикла.
Вот кусочки псевдокода, как я понимаю:

1) C GOTO:
if(condition) {
goto label;
}


2) С флагом:
if(condition) {
exit_flag = True;
break;
}


Во внутреннем цикле добавляется ровно одна инструкция. Причем лишней проверки в условии внутреннего цикла тоже нет, из внутреннего выходим по команде break;
Проверка exit_flag на каждой итерации.
Из самого внутреннего цикла выходим по брейку. Т.е. во внутреннем (самом критичном!) проверять exit_flag не нужно.
Флаги — это паттерн. А конструкции языка вроде labeled break и labeled continue — нету. Использование флага для выхода из сложенного цикла по многих случаях — много лишнего кода. Поэтому используют goto. BTW, это тот самый единственный случай, когда goto использовать можно и нужно. Об этом сам Дейкстра в своем «goto label considered harmfull» писал :).
Чем labeled break принципиально отличается от goto?
При умелом использовании goto, с его помощью можно прострелить себе ногу, руку, голову… Labeled break и nested break лишины такой… э… гибкости использования ^_^
Во-первых, не фиг лезть в ядро с такими умениями.
Во-вторых, не фиг применять то, что применять не умеешь — прострелить себе голову можно массой других не менее болезненных способов — начиная от неверного приведения типов. Рассчитывать системный язык программирования на идиотов довольно странно — идиоты могут пользоваться специальными языками для идиотов.
И вообще странный подход — «Кто-то по слабоумию может это применить не правильно, так давайте, нахрен, запретим такую возможность и пусть все мучаются, зато идиотам легче будет»
Не совсем понимаю о чем Вы. Вопрос был про принципиальную разницу между goto и labeled break / nested break. Goto — решение конкретной задачи универсальной конструкцией языка, labeled break и nested break — решение конкретной задачи специализированной конструкцией языка. На кого рассчитан системный язык программирования, дизайн языков, паттерны проектирования — это как бы не в этой ветке наверное?
читайте Linux Kernel Coding Style там ясно рекомендуют использовать goto в некоторых случаях
скажите мне, аццкие прогеры, кто-нибудь из присутствующих смотрел профессиональным взглядом на этот код? Как он? Не позорный?
так а разница.

главное чтобы программисты microsoft в нем могли разобраться.

а если и позорный. то что? лишний повод постебаться над microsoft?
ну например скажут гуру-сишники, что код MS гениален и всякие линукс кернелы рядом не валялись, будет очередной повод для аццкого холивара. )
UFO just landed and posted this here
Всем только лучше будет — расширение рынка несистемных приложений от MS, расширение возможностей для пользователей, ну и техноологии продвинутся сколько-то :)
А зачем вайновцам ведро? Это скорее для всяких ndiswrapper'ов будет полезно
в коде не используется их 'любимая' венгерская нотация. или это слишком старый код?
С чего вы взяли, что она их 'любимая'? Coding guidelines на msdn советуют не использовать венгерскую нотацию.
msdn.microsoft.com/ru-ru/library/ms229045.aspx
Четвертым пунктом, если быть точным
На дату документа поглядите :) Это гаэдлайн за 2007, и он касается .net-технологий. MFC и ATL, например, как и WTL, и ядро Win, полон венгерской нотации
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
Три года назад, как можно догадаться, исходники были соответствующей свежести. Да и многие ли вообще тогда знали об их существовании?
UFO just landed and posted this here
UFO just landed and posted this here
это вы тоже «свободным доступом» назовёте? ;)
UFO just landed and posted this here
А при чем здесь реестр, кто-то может сказать?
А всегда думал, что это ring3, и вообще, что это удел то ли user32.dll, то ли advapi32.dll.
UFO just landed and posted this here
Ждем выхода огромного количества эксплойтов
не будет их, потому-что что хотели уже давно нашли и изучили ;)
Похоже они решили показать Линусу свои исходники и всё-таки засудить его до смерти. Это я о давнем обвинении в том, что в Линуксе используется ворованный код. Линус на это ответил что-то типа покажите исходники.
Обвинения не по коду, а по патентам. И конкретный список патентов со ссылками на нарушающии их участки кода Linux они так и не спешат предьявлять, несмотря на то, что сами по себе патенты являются открытой информацией.
Ну так правильно, предъяви они реально претензии, патенты сразу же в унитаз отправятся, ибо дутые
Sign up to leave a comment.

Articles