Чтение онлайн

на главную - закладки

Жанры

Журнал «Компьютерра» № 34 от 18 сентября 2007 года
Шрифт:

В 2005 году несколько разработчиков, включая моего собеседника, предложили более системный подход: последовательная разработка WinNT-совместимого ядра и WinNT-совместимых драйверов. Вероятно, прогресс надо отсчитывать именно с этого момента.

– Сейчас многое приходится переделывать, – рассказывает Алексей. – С другой стороны, за прошедшее время была наработана какая-то известность, какое-то имя. Мы стараемся сохранить максимальную свободу для разработчиков, но при этом хотим, чтобы проект двигался не хаотично или по кругу, а в каком-то направлении. И без некоторого жесткого влияния здесь уже не обойтись, поэтому иногда я вынужден принимать такие решения, которые могут быть не очень популярными, но

в конечном итоге работают на благо проекта.

Мы разговаривали перед выпуском очередного релиза – версии 0.3.3. Я попросил Алексея рассказать, что там будет интересного для "простого смертного":

– Улучшилась стабильность. Система не будет падать, если ее включить на пять часов, на десять часов – даже если компьютер подключен к Интернету и на нем запущен mIRC. Однако пользователям, вероятно, интереснее другое: появилось что-то вроде менеджера пакетов в Linux-системах – он скачивает из Интернета инсталлятор, распаковывает и устанавливает. Там перечислены приложения, которые заведомо работают в ReactOS – список набрался довольно внушительный и включает в себя как открытые, так и закрытые программы. Штука совсем простая (не такая, как в Debian и других Linux-дистрибутивах), но производит хорошее впечатление.

Я задумываюсь о том, что от ОС сейчас, по сути, не так много и нужно. Если стабильно работает какой-то современный браузер (тот же Firefox), то это уже дает огромные возможности. Впрочем, предположение о том, что ReactOS кто-то использует на практике, Алексей отвергает категорически: "до продакшн-стадии еще далеко". Тем не менее, пользу проект приносит – если не конечным юзерам, то сообществу разработчиков.

Пользователи

ReactOS очень активно пользуется наработками и кодом других открытых проектов – в первую очередь, Wine (реализация Win32 API для поддержки Windows-приложений), Linux Kernel (некоторые драйверы), Samba (общий доступ к ресурсам). Наличие свободной кодовой базы позволяет не изобретать велосипеды там, где они уже изобретены. С другой стороны, наработки самого ReactOS приносят пользу всему сообществу уже на текущем этапе. Например, долгое время основным способом получить под Linux безопасный доступ к NTFS-разделам с возможностью записи было использование «родного» Windows-драйвера. (Сейчас разработан полностью свободный ntfs-3g.) Чтобы запустить его под Linux, использовалась «обертка», представляющая собой ядро ReactOS, из которого убрали все лишнее и заставили компилироваться и запускаться под Linux.

Алексей вспоминает еще одну историю:

– Я периодически ищу упоминания «ReactOS» в блогах и форумах – интересно ведь, что люди о нас говорят. Вот один разработчик драйверов пишет: "Я посмотрел в исходники ReactOS и посмотрел в «утекшие» исходники Windows. Так в ReactOS все намного лучше откомментировано! Зачем мне исходники Windows? Я теперь в ReactOS смотрю!" Мы долго по этому поводу смеялись.

Если есть интерес с чьей-то стороны, то обычно есть и помощь: в Linux сейчас множество заинтересованных компаний вкладывает огромные деньги – в основном в виде кода и труда разработчиков, в чьи обязанности входит участие в свободных проектах. ReactOS пока не достиг этого этапа, но…

– Есть одна компания… Наш разработчик из Швеции делает в ReactOS реализацию DirectX. У него есть определенные соглашения с одной фирмой, которая разрабатывает, кажется, чипы к графическим акселераторам – и, в частности, занимается разнообразным кодированием видео. И вот им зачем-то нужны наши DLL, и они возвращают нам свои доработки этих DLL через этого разработчика. Но действуют на условиях неразглашения своего участия – не хотят, чтобы мы писали "этот код предоставлен фирмой такой-то". Видимо, не хотят принимать на себя ответственность. Я подозреваю, что наш код используется и другими компаниям, но об этом никто громко не говорит.

Еще

одна заманчивая точка приложения – образование. Возможность заглянуть в код операционки, реализующий возможности Windows, в этом контексте трудно переоценить.

– У нас заинтересованность в этом есть. Было несколько людей (не из России), которые хотели сделать у себя курс занятий по архитектуре NT. Они не участвовали в майкрософтовских образовательных программах и хотели базироваться на ReactOS. Но пока до практической стадии никто не дошел.

Разработчики

Я прошу Алексея рассказать о разработчиках.

– Географически в основном народ из Европы: Германия, Франция, Австрия. Из России активных участников немного – человека три-четыре. В основном это молодые люди, лет двадцати пяти. У нас был разработчик из Канады – сейчас ушел – его имя Алекс Йонеску (Alex Ionescu). Он был самый молодой – девятнадцать лет. Немного эксцентричный, зато внес значительный вклад по ядру. Есть один интересный участник – ему уже за пятьдесят, он вносит существенный вклад в Win32. Он из Америки, но придерживается довольно необычных взглядов – когда я с ним общался, не мог поверить, что он значительно нас старше. Большинство людей, работающих с ReactOS, занимаются либо разработкой драйверов, либо системной разработкой в Windows или Linux. Есть еще люди, которые работают над приложениями – но они в основном делают какой-то простенький вклад, приложения типа Character map, которые, в общем-то, не очень и нужны.

Я продолжаю недоумевать: "Зачем это разработчикам? Just for fun, как сказал Линус Торвальдс?"

– Большинство людей работают на опыт и на свое имя. Человека четыре в последнее время ушли в разные фирмы… из них трое в Microsoft – их там принимают просто "на ура". Или вот, например, у одного человека была курсовая: "разработать графический редактор". Ну, он его и разработал. Под ReactOS. Многие наблюдатели со стороны удивлялись: "В ReactOS работают над графическим редактором! Зачем?! У вас еще ядро не работает как следует!" Приходилось отвечать, что если человек хочет что-то сделать, нам не жалко. Все равно курсовик пишет, а так двойная польза получается.

Сам Алексей учится в аспирантуре, и тема его диссертации, что неудивительно, связана с операционными системами. Участие в ReactOS, таким образом, позволяет совмещать "приятное с полезным". Однако это не единственная и даже не основная причина участия.

– У меня есть свои цели. Во-первых, просто интересно – я туда пришел ради идеи: Linux уже есть, а можно Microsoft еще подложить небольшую свинью и сделать открытую «ЭнТю». К тому же, мне кажется, что это перспективная вещь. Уже сейчас есть люди, заинтересованные в этой системе (коммерчески). Но мы не торопимся с этим – хотим вывести ее на более высокий уровень – потому что как только начнется коммерция, начнутся и претензии.

Реверс

Претензии, впрочем, уже начались. В начале прошлого года вокруг ReactOS разразился небольшой скандал: проект был обвинен в том, что заимствует дизассемблированный код Windows. Рассказ Алексея на эту тему напоминает детективную историю.

– Это было организовано небольшой группой лиц. По каким причинам – для нас осталось неизвестным. Несколько наших разработчиков решили пойти против всех остальных. Ситуация была следующая: мы периодически проводим различные исследования – например, взяли загрузочный сектор от Windows, дизассемблировали, написали комментарии и залили в SVN-репозитарий. А есть наш собственный бутсектор – он с ним никак не коррелирует. Но, как факт – виндовый бутсектор с комментариями у нас лежит в SVN. И они это выдали как величайшую проблему и попытались провести такую цепочку: один участник сообщает о нелегальном коде, другой – владелец SVN-сервера – его закрывает; и, вроде бы, планировалось провести голосование о закрытии проекта вообще.

Поделиться:
Популярные книги

В лапах зверя

Зайцева Мария
1. Звериные повадки Симоновых
Любовные романы:
остросюжетные любовные романы
эро литература
5.00
рейтинг книги
В лапах зверя

Испытание славой

Распопов Дмитрий Викторович
5. 30 сребреников
Фантастика:
попаданцы
альтернативная история
фэнтези
фантастика: прочее
5.00
рейтинг книги
Испытание славой

Свет Черной Звезды

Звездная Елена
6. Катриона
Любовные романы:
любовно-фантастические романы
5.50
рейтинг книги
Свет Черной Звезды

Пушкарь. Пенталогия

Корчевский Юрий Григорьевич
Фантастика:
альтернативная история
8.11
рейтинг книги
Пушкарь. Пенталогия

Царь царей

Билик Дмитрий Александрович
9. Бедовый
Фантастика:
фэнтези
мистика
5.00
рейтинг книги
Царь царей

Убивать чтобы жить 7

Бор Жорж
7. УЧЖ
Фантастика:
героическая фантастика
космическая фантастика
рпг
5.00
рейтинг книги
Убивать чтобы жить 7

Идеальный мир для Лекаря 30

Сапфир Олег
30. Лекарь
Фантастика:
юмористическое фэнтези
аниме
фэнтези
5.00
рейтинг книги
Идеальный мир для Лекаря 30

Кодекс Охотника. Книга XXXIII

Винокуров Юрий
33. Кодекс Охотника
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Кодекс Охотника. Книга XXXIII

Личный аптекарь императора. Том 3

Карелин Сергей Витальевич
3. Личный аптекарь императора
Фантастика:
городское фэнтези
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Личный аптекарь императора. Том 3

Первый среди равных. Книга IX

Бор Жорж
9. Первый среди Равных
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Первый среди равных. Книга IX

Служанка царского лекаря

Семина Дия
Фантастика:
фэнтези
5.00
рейтинг книги
Служанка царского лекаря

Ефрейтор. Назад в СССР. Книга 2

Гаусс Максим
2. Второй шанс
Фантастика:
попаданцы
альтернативная история
7.00
рейтинг книги
Ефрейтор. Назад в СССР. Книга 2

Заход. Солнцев. Книга XII

Скабер Артемий
12. Голос Бога
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Заход. Солнцев. Книга XII

Ведунские хлопоты

Билик Дмитрий Александрович
5. Бедовый
Фантастика:
юмористическое фэнтези
городское фэнтези
мистика
5.00
рейтинг книги
Ведунские хлопоты