Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
12
Добавлен:
20.04.2024
Размер:
8.5 Mб
Скачать

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

Стартовый код Virus.Win32.Sality.aa в зараженном файле

Еще немного вируса, но уже в другом файле

Формат инструкции архитектуры x86

Согласно документации Intel каждый префикс может использоваться только в определенных целях, хотя, безусловно, их можно вручную добавить к произвольной команде. Все сегментные префиксы используются совместно с инструкциями, работающими с памятью, для обращения к определенному сегменту. А байты REPNE/REP добавляются только к инструкциям, работающим со строками или с массивом байт, к примеру – SCASB, MOVSD, LODSW. Префиксы размеров операнда и адреса изменяют соответственно их размеры на меньший или больший, в зависимости от режима работы.

Так что же использует генератор Sality? Во-первых, он использует однобайтовые опкоды, целиком образующие инструкцию. К ним относятся все PUSH’ы и POP’ы. Во–вторых, во всех генерируемых инструкциях поле Mod равно 3, чтобы избежать взаимодействия с памятью, а оперировать только с другими регистрами или мгновенными значениями. Исключение составляет команда LEA, в которой Mod всегда равен 2, а использование 3 приведет к генерации исключения. В-третьих, используется множество двухбайтовых опкодов, которые опять-таки не оперируют с памятью: SHLD, BSF, BTS, BTC, XADD и др. И напоследок – Sality добавляет байт 66h, а также сегментные и REPxx префиксы к произвольным инструкциям. С помощью всех этих методов получается качественный обфусцированный код, который не взаимодействует с памятью, но при этом значительно усложняет анализ кода.

А теперь можно обсудить и те моменты, которые позволяют отличить сгенерированный код от кода, полученного компилятором. Начнем с префиксов. Генератор в Sality добавляет их к совершенно произвольным инструкциям. А в документации Intel написано следующее:

«Repeat prefixes (F2H, F3H) cause an instruction to be repeated for each element of a string. Use these prefixes only with string instructions (MOVS, CMPS, SCAS, LODS, STOS, INS, and OUTS). Use of repeat prefixes and/or undefined opcodes with other IA-

32 instructions is reserved; such use may cause unpredictable behavior».

Таким образом, использование префиксов F2 и F3 возможно лишь с ограниченным списком инструкций, а в приведенном выше примере кода эти байты находятся перед командами CALL, SHL, TEST и прочими. Аналогичная ситуация и с сегментными префиксами. Их использование не по назначению может носить неопределенный характер. А в Sality байт 64h может без проблем предварять инструк-

XÀÊÅÐ 10 /141/ 10

цию CALL. Компилятор при генерации кода никогда не будет добавлять префиксы к тем командам, к которым это запрещено делать! На что еще следует обратить внимание при просмотре кода? Например, на практически полное отсутствие работы с памятью, а значит, и отсутствие локальных и глобальных переменных. Это весьма странно, так как компилятор может использовать только регистры в коротких функциях, и то при определенных условиях. Еще одна особенность полученного кода – совершенно произвольные числовые операнды. Такое, конечно, иногда бывает, когда реализуется какая–то функция из криптоалгоритма, но даже в ней нет такого обилия случайных чисел.

Переходим к самому последнему этапу генерации кода – добавление FakeAPI. Этот метод используется для обхода простых эмуляторов или виртуальных машин. А заключается он в вызове произвольной API-функции, в надежде на то, что эмулятор не поддерживает работу с таблицей импортов или не может реализовать корректное исполнение. В представленном дизассемблерном листинге в таком качестве используются две функции – FindCl ose и GetModuleHandleA. В представленном случае очень легко отличить фэйковые запуски от реальных вызовов. Во-первых, результат их работы – регистр EAX или его составные части, впоследствии просто стираются и не используются, что довольно странно для нормальной программы. Во-вторых, функции FindClose должен передаваться корректный хэндл, полученный ранее с помощью FindFirstFile. А в приведенном файле происходит исполнение FindClose (0) прямо с точки входа, что явно не может иметь место в нормальном файле. Генератор, при добавлении FakeAPI в конечный код, пользуется определенным списком, в котором перечислены API-функции, которые получают на вход только один параметр и не вносят никаких значительных изменений в систему.

ЗАКЛЮЧЕНИЕ

Итак, в этой статье мы рассмотрели все этапы работы полиморфного генератора. Как оказалось, в Sality очень эффективно используется полиморфизм и обфускация. В нем присутствует большое количество инструкций, которые не несут полезной нагрузки, значительно усложняют статический анализ и практически полностью «размывают» полезную нагрузку вируса. Добавление FakeAPI также добавляет исследователю головной боли. Но, в то же время, стоит отметить и тот факт, что применение всех этих «примочек» значительно упрощает определение вредоносного кода. Так, при должном опыте, достаточно только одного взгляда, чтобы определить, что перед тобой находится зловред. z

079

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

 

F

 

 

 

 

 

 

t

 

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

r

 

 

P

 

 

 

 

 

NOW!

 

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

w Click

to

 

 

 

 

 

 

СЦЕНА

 

 

 

 

 

 

 

m

Мария «Mifrill» Нефедова mifrill@real.xakep.ru

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

 

 

.

 

 

 

 

 

.c

 

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

ПАРАЛЛЕЛИ

IT-БИЗНЕСА

ИСТОРИЯ КОМПАНИИ Parallels

На сегодняшний день лишь считанным единицам российских ITкомпаний удалось добиться серьезных успехов за рубежом. Поставлять свои продукты на западный рынок и успешно работать с другими странами — заоблачная мечта, «пощупать» которую пока смогли лишь избранные: ABBYY, Лаборатория Касперского и Parallels. Если тебя

не интересуют виртуальные машины для «Маков», а также ПО для автоматизации , то, скорее всего, ты нечасто слышишь имя Parallels, однако достижения этой компании сложно недооценить.

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

ËÞÄÈ

Белоусова, ведьвдалеком1992 годуименно

ниясвоегопервогостартапа, Сергейпокинул

ИсторияParallels довольнозапутаннаяине

здесьзародилосьпервоеначинаниеСергея,

молодуюфирмуисразужеокунулсявдругое,

самаятривиальная. Деловтом, чтокомпанию

которесегодняназвалибыстартапом. Его

почтианалогичноепредприятие. Возникшее

создалиипосейденьпродолжаютвозглавлять

фирмазанималасьсборкойипроизводством

благадарясвязямполученнымнасборкеком-

оченьинтересныеияркиелюди. Срассказао

комповизимпортнойкомплектухи. Всеоснов-

пьютеров, начинаниеполучилоимяStandard

некоторыхизнихмы, пожалуй, иначнемнаше

ныепоставщикипоследней, кактыпонимаешь,

& Western.

повествование.

восновномсконцентрированывстранахВос-

КомпанияStandard & Western былаоснована

 

точнойАзии(Тайвань, Гонконг, Японияит.д.).

совместносИльейЗубаревым, кстати, тоже

СергейБелоусов(председательсоветадирек-

Взаимодействоватьснимиоказалосьудобнее

выпускникомальма-матерБелоусова— МФТИ.

торовиисполнительныйдиректорParallels)

неизРоссииидеальныимместомдляведения

Новаякомпаниятожезанималасьсборкойи

УроженецгородаЛенинградаСергейБелоусов

делоказалсяСингапур. Именнотуда, ради

производством, соднойлишьпоправкой—

— человеккрайне«нелинейной» судьбы. Его

всеобщегоудобства, иперебралсяБелоусов.

вместокомповS&W производилателевизоры

биографиянепохожанастандартное«родился,

Забегаявпередскажем, скажем,чтонасегодня

икомпьютерныемониторы. Забавно, ноиэто

учился, женился, работал», затоза20 послед-

онявляетсягражданиномСингапура, хотяи

начинаниеБелоусовавбудущемждалнемалый

нихлетонуспелпринятьучастиевосновании,

нельзясказать, чтоон«тамживет». Деловтом,

успех— впоследствии«железное» подразде-

работеиразвитии50 слишнимпроектов.

чтофактическиСергейживетвдорогеиотелях,

лениеS&W переродитсявхорошоизвестный

Нет, Сергей— неочереднойгениальныйи

аграджанствоСингапураполучиллишьпотому,

насегодняшнийденьбрендпопроизводству

удачливыйсамоучка, сумевшийпойматьволну;

чтопутешествоватьсроссийскимпаспортом

электроникиRolsen. Ноостанавливатьсянадо-

почастиобразованияунегополныйпорядок:

былонеудобно: приходилосьполучатьмного

стигнутомСергейБелоусовснованепожелал,

онимеетдипломбакалаврафизики, диплом

виз.

нивтотраз, нивпоследующиегоды.

сотличиеммагистрафизикииэлектротехни-

Новернемсякделамдавноминувшихднейи

Несложнодогадаться, чтотам, гдеимеется

киистепенькандидататехническихнаукпо

сборкекомпьютеров— делаумолодойкомпа-

«железо», всегданайдетсяместоисофту. ПО

специальности«Информатика» Московского

ниишлинеплохо, онауверенноразвивалась,

наконец-топривлекловниманиеБелоусовав

физико-техническогоинститута(МФТИ).

однакоБелоусовувскорезахотелосьбольшего.

середине90-хгодов, ипроизошлоэто, поего

ИменноМФТИисталотправнойточкойдля

В1994, спустявсегодвагодапослеоснова-

собственномупризнанию, случайно.

08074

XÀÊÅÐ 10 /141/ 10

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

PARALLELS DESKTOP — ВИРТУАЛЬНАЯ

 

МАШИНА ДЛЯ «МАКОВ»

СЕРГЕЙ БЕЛОУСОВ

Всеначаласьстого, чтобудущемуRolsen Electronics потребовалосьвнедритьбухгалтерскуюсистему. ДоступавИнтернеттогда небыло. Покаким-тосвоимканалам, через бывшихвыпускниковМФТИ, проживавших вАмерикеиработавшихвбанках, удалось составитьсписокиз16 ERP-продуктов. После долгихпереговоров, изэтогоспискаосталась

Именнотогда60 российскихинженеровS&W сталиработатьизСингапура, фактически выполняявесьциклинженерныхразработок ПОSolomon.

КомандаS&W натотмоментсостояла, в основном, изнашихстобойсоотечественников— тамбылиивыпускникитогожеМФТИ, и другиероссийскиеинженеры, окончившиене

НЕМНОГО СТАТИСТИКИ:

КомпанияParallels имеетболее30 наградиболее55 патентов.

УParallels более500 партнеров, средикоторыхтакиемонстры, какMicrosoft, Apple, Intel, AMD, Dell, HP иIBM.

НароссийскомрынкеклиентамиParallels являютсятакиекрупныекомпании, какМастерхост, РБК, СофтлайниРусоникс.

Продуктыкомпанииподдерживаютболее1 млн. серверовинастольныхПК. Parallels обслуживаетсвыше10 млн. конечныхпользователейв125 странахмира. Понекоторымданнымот90% до98% выручкиParallels получаетзарубежом.

ПословамСергеяБелоусоваParallels СевернаяАмерикаобеспечиваетчутьменьше60% выручки, Европа— больше30%, аРоссияпокаприноситменьше3%.

Parallels Desktop дляMac, помнениюмногихэкспертов, являетсятулзойдляMac №1 от стороннихразработчиков. Ейпользуютсясвыше2,5 млн. повсемумиру.

лишьоднакомпания— Solomon Software.

ПолучитькопиюихдорогостоящегоПО, можно былолишьпройдясертификациюназнаниеих продуктаиставреселлеромкомпании. Так, в целяхбанальнойэкономии, с«Соломон» были наведеныпартнерско-дистрибьютерскиемос- ты, ноктобымогподумать, чтооднимитолько бухгалтерскимисистемамиискидкамиделоне ограничится.

Следующийэтапвжизникомпанииможно назватьэтапомпродвинутогоаутсорсинга.

менеехорошиероссийскиевузы. Деловтом, чтоихтрудстоилсущественнодешевле, чем трудихзападныхколлег, затоуровеньзнаний

иквалификация, напротив, находилисьнатом жеуровне, илибыликудавыше. Впрочем, был

иещеодиннюанс. Деловтом, чтонанимать другихлюдейпростонеполучалось— нанимая русских, можнобылооценитьуровеньихзнаний, хотябыисходяизтого, какойВУЗзакончил человек. Сдругимиженациональностями существоваликультурныепробелы— мало

того, чтокомандаБелоусованемогласудить, например, обуровнеобразованиясоискателей, ноипростонепредставляла, чегоможно отнихожидать.

ОсуществлятьработуизРоссиитоженеполучалось. ВладельцыSolomon беспокоились поповодусохранностиисходныхкодовиих возможногоиспользованиявплохозащищеннойпатентнымправомстране. Такчтонестоит удивлятьсяиспрашивать: «Зачемэтоони везлиработниковизРоссиивСингапур, когда моглинанятьместныхзакопейки?».

Итак, Standard & Western заинтересовался разработкойсофтаидовольнобыстросориентировалсявтонкостяхразработкиПО, атакже

внюансахегодистрибуциинарынкахдругих стран. Партнерство, заключенноесSolomon Software случайно, обернулосьбыстрорастущимбизнесом. S&W прекрасносправлялись слокализацией, продвижениемиподдержкой

вЮго-ВосточнойАзииERP-системSolomon, ориентированныхнасегментсреднегоималогобизнеса. Авскореу«Соломона» нашелся ещеодинпроект, которыйониоченьхотели поручитькому-нибудьизсвоихпартнеров; нужнобылозаниматьсяразработкойсофта длякомпанииPervasive, поставщикасистем управлениябазамиданныхSolomon. Standard

& Western натотмоментбылизаинтересованы втакогородаработеничутьнеменьшепотенциальногозаказчика, такчтодоговоренность быладостигнутабыстро.

НиколайДобровольский(вице-президентпо развитиюпродуктов)

ОдновременносисториейСергеяБелоусоваразвиваласьисторияещеодногочеловека, который такжесыгралвParallels однуизглавныхролей.

БудущийлауреатпремииимениЗворыкина,

XÀÊÅÐ 10 /141/ 10

081

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

СЦЕНА

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

 

 

 

ВЫСТУПЛЕНИЕ БЕЛОУСОВА НА PARALLELS

 

 

 

 

SUMMIT 2009

 

 

 

 

 

 

 

 

 

 

 

 

 

 

чтоонпринялсяоттачиватьееидалее, уже

 

 

 

послетого, какпроектподтогосамого, первого

 

 

 

заказчикабылсделан. Посути, Николайзаго-

 

 

 

релсямысльюсоздатьотдельный, собствен-

 

 

 

ныйпродукт, ноэтотребовалобольшихзатрат,

 

 

 

каквременных, такифинансовых.

 

 

КОМПАНИЯ

 

 

 

 

Насегодняшнийденьголовнойофиском-

 

 

 

панииParallels расположился, нимногони

 

 

 

мало, вШвейцарии, аофисыпродаживовсе

 

 

 

раскиданыповсемчастямсвета(болеечемв

 

 

 

15 странахмира). Известнотакже, чторазра-

 

 

 

ботчикиобитаютпреимущественновМоскве,

СЕРГЕЙ БЕЛОУСОВ С ПРЕМИЕЙ CNEWS AWARD

 

 

авНовосибирскесконцентрированныслужбы

 

 

 

поддержки. Иихнемало, этихразработчиков,

 

 

 

НиколайДобровольский, родилсявМоскве, в

мистом, Добровольскийначалуженатретьем

прогеров, менеджеровитакдалее— штат

1975 году, исредкимивтупорукомпьютерами

курсе, чтонеслишкомхарактернодлянашей

компаниинасчитываетуже700 человекповсей

судьбасвелаегосовершеннослучайно. Вна-

странывообще, идлятоговременивчастности.

планете.

чале80-хгодов, послепереезданановоеместо

ПервыехалтурыНиколаюподбросилегонауч-

КакжезанеполныйдесятоклетБелоусовууда-

жительства, Добровольский(тогда— ученик

ныйруководитель. Хотяфактическогоопытау

лосьпровестикомпаниюотсреднихразмеров

4-гокласса) решилзаписатьсявкакой-нибудь

Добровольскогонебыло, онбыстроучилсяи

стартапакмиллионнымприбылямизванию

кружок, благоДворецпионеров— тот, чтона

схватывалналету, чтополностьюустроилоего

одногоизкрупнейшихигроковрынка? Судя

Ленинскихгорах— былсовсемрядом. Такуж

первыхработодателей. Вскореподработкапре-

повсему, рецептпростинесодержитникаких

вышло, чтосвободныеместатогдаоставались

вратиласьвпостояннуюработу.

«особенныхингредиентов» — лишьтяжелая

тольковкружкеинформатики, кудаНиколайи

Такимобразом, кмоментуокончанияунивер-

 

 

 

работа, жизньвразъездах, морезатраченной

подался.

ситетаНиколайприобрелнемалыйопыт. Унего

энергии, атакжеумениенаходитьобщийязык

Какпоказаловремя, Добровольскийнепрога-

появилисьиполезныезнакомства, иопре-

ссамымиразнымилюдьмииникогда, никогда

далипопалвсвоюстихию. Начавспрограм-

деленныйфундамент, иглавное— желание

несдаваться.

мированиякалькулятороввкружкеДворца

достигнутьбольшего. Делосталозамалым:

Итак, вышемыпрервалиисториюStandard &

пионеров, ужеввозрасте14 летонвыиграл

осталосьперестатьработатьнакого-тоиначать

Western натом, чтокомандавконце90-хзаня-

всероссийскийконкурспопрограммированию,

работатьнасебя. Такпоявиласьнасветфирма

ласьпродвинутымаутсорсингом, физически

затемпоступилвшколуприМГТУим. Баумана,

Parallels, вкоторойнапервыхпорахтрудилось

разместившисьвСингапуре. Какое-товремя,

апосленаавтоматебылзачисленивсаму

всегооколодесяткачеловек(восновномребя-

примерновплотьдо2000 года, этоработало—

«Бауманку». ОднакосМГТУуДобровольского

та, скоторымиДобровольскийперезнакомился

средипартнеровкомпаниичислилсяужене

несложилось. Деловтом, чтоНиколайподал

поработе).

толькоSolomon Software, ноицелыйряддругих

бумагиещеивМосковскийинститутрадио-

Стемойвиртуальныхмашиннадесктопах,

фирм.

техники, электроникииавтоматики(МИРЭА),

котораяистанетвпоследствииегоконьком,

Кстати, вэтотжепериодStandard & Western

кудатожеблагополучнопрошелигде, витоге, и

Николайвпервыестолкнулсяименнопорабо-

Software успелпереименоватьсявSWsoft.

остался. Непоследнююрольвнелегкомвыборе

те. Увы, небылоникакихкрасивых«гениальных

Имясменилиизпрактическихсоображений:

междудвумявузамисыгралитотфакт, чтов

идей», вовремяпосетившихгения, ипрочих

во-первых, наслухStandard & Western можно

МИРЭА, приподдержкекомпанииSiemens,

изящныхповоротовсудьбы. Простов2000 году,

легкопринятьзаStandard investment, во-вто-

тогдабылсозданфакультет, готовившийай-

впроцессеработынадпроектомдляиност-

рых, прежнееимябылопризнанночересчур

тишников. Нопомимоайтишныхпремудростей

ранногозаказчика, понадобилосьзапуститьна

длиннымисложным.

вМИРЭАдавалиибизнес-дисциплины, что

новыхкомпах, неимеющихподдержкиIBM, ряд

АпотомнаЗападе, какгромсредиясного

дляНиколаябылонеменееважно. Этооконча-

старыхсистем. Такиродиласьмысль, чтобыло

неба, грянулкризис, иприключилсяпечально

тельнорешилодело— выборбылсделаннев

быкрутозапуститьнесколькоОСвиртуально,

знаменитый«dot-com bubble». Экономический

пользу«Бауманки».

внутриодногофизическогокомпьютера. Эта

пузырьдоткомовлопнул, множествоIT-ком-

Работатьпоспециальности, тоестьпрограм-

идеянастолькозахватилаДобровольского,

панийпошликоднувместесним, аустоявшие

082

XÀÊÅÐ 10 /141/ 10

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

оказалисьвоченьтрудномположении. Втаких обстоятельствахзападнымразработчикам сталонедоаутсорса, иуSWsoft резкопоубавилоськакработы, такиклиентов. Вдовершении всего, содержатьроссийскихразработчиковв Сингапуресталокрайнезатруднительно— конкурироватьстемижеиндусамипостоимости рабочейсилынепредставлялосьвозможным. Своихпродуктовукомпаниинатотмомент неимелось, ихнужнобылописатьиделать фактическиснуля, аэтоштукаресурсоемкаяи непростая.

Тобылоченьнепростойпериодвистории SWsoft. Белоусовиегокомандапонимали, что напродвинутомаутсорсингеможнопоставитькрест, азначит, пришловремякомпанию перепрофилироватьирешать, чемзаниматься дальше. Былоясно, что, скореевсего, стоит попытатьсяписатьсвойсофт(этотпроцесс былвовсехсмыслахболееконтролируемым, понятными, кактыпонимаешь, болееприбыль-

чтосегментсофта, ориентированногонануж- дыхостинг-провайдеровиижесними— это нишавесьмаперспективная, ивнейпокане слишкомтесно. Вкомпании, разумеется, нашлисьсведущиевэтихтемахинженеры(вот тебеиещеодинпример, почемухорошоиметь командуподготовленных, квалифицированныхинженеров, анекланиндусов, готовых работатьза$300 вчас), иSWsoft началработу возначенномнаправлении.

Тогдабылоприняторешениеперенести офисобратновРоссию, аточнее— вМоскву. ТеперьрасположениекомпаниивСингапуре ужескореемешало, анепомогалоделу, и ощутимобилопокарману.

Стоитотдельнозаметить, чтовэтожевремя SWsoft попыталасьсоздатьинекуюединую платформудляASP-приложений. Однако наделеоказалось, чтосразуразработатьи

операционнуюсистему, исистемууправления

ихраненияданных— этонесколькочересчур,

иврядлиэтазадачавообщеподсилуSWsoft.

«Со временем разработка ОС была прекращена, а вот систему управления и хранения данных выделили в отдельный проект Acronis»

ным). Нокакойсофтписать?.. Этотвопрос

СовременемразработкаОСбылапрекраще-

обсуждалидолго, носпокойноирассудительно,

навовсе(отнееосталсяпродуктвиртуали-

безскандалов. Всевариантыиидеивзвешива-

зацииParallels Virtuozzo Containers), авот

лисьипродумывались, ивитогерешенобыло

системууправленияихраненияданныхвы-

прислушатьсяк«народноймолве».

делиливотдельныйпроектAcronis. Коммен-

Втовремяоченьактивнообсуждалисьидеи,

тарииздесьизлишни, таккакэтоназваниеи

что«Microsoft — ужевсе», иникомувскором

сегоднязнакомокаждомууважающемусебя

будущемнебудутинтересныкоробочныепро-

IT’шнику.

дукты. Дескать, софтскоробудетпродаваться

СергейБелоусовличноотправилсяколесить

ипредоставлятьсяисключительновкачестве

посвету— онвстречалсяспредставителями

сервисов, и, сталобыть, будущеезаLinux иASP

самыхразныххостинг-провайдеровидата-

(Application Service Providers). Интересно, чтов

центров, открупныхкомпанийдокрохотных

этожесамоевремяСергейпыталсянайтиин-

частныхфирмочек. Деловтом, чтопростосо-

весторовдлясвоихприятелей, попризнанию

здатьпродукт— мало, послеэтогоегонужно

Белоусова, предлагавшихкакой-то«непо-

былоикому-топродать...

нятныйсофт». Ноделоневтом, чтоэтобылза

Какнисмешно, нопервыминадовольнодол-

софт, автом, чтовсеинвесторыутверждали,

гоевремяпоследнимклиентом, клюнувшим

чтософтможетбытькакимугодно, главное— он

натогдаещедаженедоработанное«управ-

обязательнодолжениметьотношениекASP

ленческое» ПОотSWsoft, сталнебольшойхос-

(Application service providers). Сегодняэто

теризНижнегоНовгорода. ОкомпанииБело-

называетсяSaaS — software as a service или

усовавНижнемузналивовсенеотСергея, а

облачныевычисления.

черезИнтернет. Хостерутакприглянуласьбе-

Рыноквиртуализациитогдаужезародилсяи

та-версиясофтиныVirtuozzo Containers, что

дажебылнемного«окучен» такимикомпания-

онсамприехалкразработчикамсналичными

микакVMware. Однакорешениятехднейбыли

ибуквальноумолилихпродатьемупрогув

ещевесьмадалекиотидеала— восновном

текущемвиде, хотятабылаещенеготоваи

онистроилисьнапринципевиртуализации

являласобойсыроватуюбету. Впоследствии

науровнеоборудования. Тоесть, каждому

этотхостердажеощутимопомогсбета-тес-

юзерувыделялисьфиксированные«железные

том, таккаккупленноеПОсразужепринялся

мощности» — определенноеколичествоместа

использоватьпоназначению:).

нахардах, столько-топамятиитакдалее. Само

Вэтожевремякомпанияозадачиласьи

собой, этонельзябылоназватьрациональной

активнымпоискоминвесторов, таккакдля

тратойресурсов, иэтовSWsoft понялибыстро.

разработокнужныбылиденьги, афинан-

ТакжеБелоусовсколлегамипришликмысли,

совыйпотокиз-запузырядоткомовсильно

обмелел. Инвесторыидтинавстречуроссийскимбизнесменамнеспешили, и, побольшому счету, немалуючастьсредстввSWsoft тогда изсобственногокарманавкладывалсам СергейБелоусов(наподдержкушлииденьги, полученныеотдругихпроектов, и, похоже, дажеличныесбережения). КоллегиипартнерыСергеядосихпорпоражаются, какунего тогдавообщехватилотерпенияпережитьвсе этитрудностиинеброситьвсекчерту. Примернотемжезанималсявэтовремяи НиколайДобровольский, чьяParallels тоже остронуждаласьвинвестицияхиклиентах. В русскихтогда(даисейчас) вообщеинвестироваликрайненеохотно— западнымворотиламизвенчурныхфондовплохопонятно, что завузымызаканчивали, какованашаквалификация, насколькомысерьезныиможноли вообщевестиснамикакие-тодела. Витоге, чтобыхотькак-тосводитьконцысконцамии небросатьразработку, котораявсетянулась итянулась, частькомандыParallels (включая самогоНиколая), устроиласьнавторую, постояннуюработув«Росгосстрах». Долготак, конечно, продолжатьсянемогло, нонадвух работахэтиотчаянныелюдипродержались болеегода. Послетрудногоднявофисеони возвращалисьдомойиприступаликовторой, неменеесложнойработе— писалисобственныйсофт. Ксчастью, когдасилыбылиуже совсемнаисходе, перваярабочаяверсия продукта, большенапоминавшаяпрототип, былаготова. Теперьможнобылорискнутьи расстатьсяс«Росгосстрахом», чтоДобровольскийисделал. Надворебыл2003 год.

К2004 году, уставбезрезультатноискать инвестициинаЗападе, Николайрешил попытатьсчастьявРоссии. Онпризнается, чтобылострашно— маленькаякомандас вродебыинтереснойразработкойнаруках...

Случитьсямогловсе, чтоугодно, ноиныхвариантовужепопростунеоставалось. И, какты догадался, тут-тоони, наконец, инашлидруг друга— SWsoft иParallels встретились.

НОВЕЙШАЯ ИСТОРИЯ. ПРОДУКТЫ

ВначалеНиколайДобровольскийпознакомилсясоднимизоснователейSWsoft — СтаниславомПротасовым. Этотчеловекначинал свойпутьвкомпаниисдолжностисисадмина испецавобластиUnix, нокмоментузнакомствасДобровольскимужевозглавлялмосковскийофисSWsoft, аныневообщезанимает

вParallels постстаршеговице-президентаи руководитR&D всехпродуктовкомпании.

ВтетрудныевременаПротасовсамвышелна Николая— онужебылосведомленоразработкахParallels исчиталихдостаточноинтереснымииперспективными. Встретившисьс Добровольскимличноипообщавшисьболее детально, Станиславокончательноубедился

вправотесвоихсуждений, послечегоипредставилглавуParallels СергеюБелоусову. Сталоокончательноясно, чтоотслияниявсе тольковыиграют— разработкиParallels были крайнеинтересныидолжныбылиидеально

XÀÊÅÐ 10 /141/ 10

083

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

СЦЕНА

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

ДОБРОВОЛЬСКИЙ И МЕДВЕДЕВ

ÀÍÍÃËÎßÇÛ×ÍÛÕ ÑÎÒÐÓÄÍÈÊÎÂ

Parallels Desktop дляMac былаготовачерез

Virtuozzo Containers, Parallels Workstation,

ÊÎÌÏÀÍÈÈ Ó×ÀÒ ÐÓÑÑÊÎÌÓ ßÇÛÊÓ

рекордные3,5 месяца.

Parallels Server дляMac, атакжепродуктдля

 

Стоитзаметить, чтосамApple тогдавыпустил

массовыхпользователейParallels Desktop

 

утилитуBootCamp, котораяпозволялапосле

дляMac. Вплотьдо2008 годаParallels остава-

 

перезагрузкиюзатьна«Маке» либоWindows,

ласьдочернейкомпаниейхолдингаSWsoft, но

вписатьсявлинейкупродуктовSWsoft, апос-

либоMac OS. Тоесть, ниокакойвиртуализа-

затембылоприняторешениеоребрендингеи

леднийужемогпредложитьДобровольскому

цииречинешло. Свыходомжевиртуальной

полномслиянии. Тогда-тоипроизошелстоль

иегоразработчикамстольнеобходимые

машиныДобровольскогоувсехяблофагов

редкийпрецедент— новообразованнаяком-

иминвестиции. Сделкузаключилибыстро.

наконец-топоявилсяудобныйспособполь-

паниярешилаиспользоватьнесвоепрежнее

Parallels сталчастьюхолдингаSWsoft, при

зоваться«виндовым» софтомижелезками,

имя, аимясвоей«дочки», чьипродуктыуже

этомоставшисьсамостоятельнойкомпанией.

неимеющими«дров» подMac OS, безо

успелизаработатьнарынкеопределенный

Избавившисьотголовнойболи, тоестьот

всякихребутовиизвращений. Крометого, на

весирепутацию.

постоянныхразмышленийнатему«гдевзять

протяженииполутораслишнимлетпродукт

КаковобудущееParallels — сказатьслож-

денег?» иотбумажныхпроблем, Доброволь-

Parallels былфактическиединственнымре-

но, всежемынеоракулыинепровидцы, а

скийиеголюдисмогли, наконец, всецело

шениемтакогорода— тяжеловеснымкомпа-

рынокпоройменяетсястремительно. Однако

сосредоточитьсянаработе. Помощьболее

ниям-монстрамПО-разработкипонадобилось

заявить, чтокомпанияхорошозакрепиласьв

опытныхинженеровизкомандыБелоусова

почтидвагода, чтобынаписатьивыпустить

сфереПОдлявиртуализациииавтоматиза-

здесьпришласьоченькстати. Вразличных

своианалоги. ВитогедетищеДобровольского

ции, ужеможносмело. СегодняParallels не

интервьюНиколайпотомнеразговорил, что

завоеваломиллионыпользователей(преиму-

толькоподдерживаютиразвиваютнаписан-

оноченьмногомунаучилсяуэтихлюдей, какв

щественнозападных, унас«Маки» досихпор

ныйранеесофт, ноипристальноследятза

вопросахразработкикоммерческиуспешного

нестольсильнораспространены) ипринесло

новымитехнологиями, инавернякаразраба-

ПО, такиввопросахмаркетингаиведения

Parallels миллионныеприбыли.

тываютчто-нибудьновенькое, разумнохраня

бизнесавцелом. Кпримеру, настоятельный

Втомже2005 году, ибезтогодовольно

своиновыеидеивтайне. «Продаваться»

«совет» переориентироватьсяназападный

удачномдляSWsoft, ккомпаниипришли

кому-либоParallels поканепланируют—

рынокдалиParallels именно«старшиетова-

имасштабныеинвестициисразуотряда

напротив, улидеровкомпанииестьжелание

рищи». Сказать, чтоДобровольскомутогда

солидныхвенчурныхфондов: Bessemer

идалеедержатьParallels вролинезависи-

пришлосьпочтиполностьюпеределывать

Venture Partners, Insight Venture Partners и

мойединицы, авбудущемразместитьеена

свойпроект, согласнополученнымрекомен-

Intel Capital.

бирже.

дация, небудетсильнымпреувеличением:).

НалаживалисьипродажиПОдляавтоматиза-

Интересен и тот факт, что Parallels на

СовсемскороНиколайДобровольскийдока-

ции— СергейБелоусоввсеженезряколесил

сегодняшний день очень тесно сотруд-

зал, чтовнегоинвестировалииповерилине

посветуиобщалсяслюдьми, стараясьдоско-

ничает с рядом российских вузов — с

зря. Ужев2005 годуиз-подегоперавышла

нальноузнать, чтонужносервис-провайде-

Новосибирским и Московским универ-

перваязаконченнаяверсиясофтинывирту-

рамотсофта.

ситетами, с московским Физтехом и так

ализациидесктоповдляWindows, ав2006,

Ещев2003 годуSWsoft поглотилакомпанию

далее. На вопрос «зачем?» в Parallels

буквальнопорваврынок, появилсянасвети

Plesk Inc. —крайнепопулярнуюблагодаря

отвечают, что, вкладывая свое время и

Parallels Desktop дляMac.

одноименнойпанелиуправлениядлясервис-

средства в обучение студентов, они не

Деловтом, чтоименнотогда, в2006 году,

провайдеров, и, каквыяснилось, базирующу-

только готовят себе новые кадры, но и в

Apple решилаперейтинапроцыотIntel, что

юсявНовосибирские. ИменновPlesk разра-

целом воспитывают себе смену, растят

существенноупрощалоиоблегчалорабо-

боталиивыпустилисверхпопулярныйпродукт

новое поколение айтишников. Ведь не-

тувиртуальныхмашинна«Маках». Такой

дляавтоматизациихостинга, фактически

даром лидеры Parallels всегда верили в

шансупускатьбылонельзя. Узнавосмене

ставшийстандартомвмировойиндустрии

то, что наши инженеры и специалисты —

архитектуры, Добровольскийличносъездилв

(мегодняонназываетсяParallels Plesk Panel).

одни из сильнейших и лучших в мире. И в

Германию, привезоттудановенький«Макин-

Средирешениивобластивиртуализации

случае Parallels эта вера полностью себя

тош» исголовойушелвработу. Бета-версия

имеютсявысокотехнологичныиParallels

оправдала. z

084

 

XÀÊÅÐ 10 /141/ 10

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

ИНТЕРВЬЮ С PARALLELS

НА ЭТИ ВОПРОСЫ ОТВЕЧАЕТ НИКОЛАЙ ДОБРОВОЛЬСКИЙ

ЕслиговоритьоParallelsDesktopforMacиforWindowsиLinuxинтереснобылобыузнать,насколькоохотнопроизводителижелезаидутна

встречу«эмуляторщикам»,икакдалекозаходитэтосотрудничество?

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

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

выликэтомуразработчикионых(вчастности-вы)?

Конечно, всепроизводителижелезаужедавноосозналиперспективностьвиртуализации. Всеинфраструктурныекомпонентыбудутраноили поздновиртуализированы. Ноэмуляторы– этоневиртуализация. Эмуляторсоздандлятого, чтобыэмулироватькакие-токомандыпосредством другихдоступныхкоманд. Восновном, оннужендляработыпрограмм

однойархитектурынадругой. Например, можнозапуститьприложение iPhone вэмуляторенаMac. Виртуализация– этокардинальнодругаятехнология. Практическивсекоманды, которыеисполняютсяввиртуальной машине, работаютнативнонапроцессоре. Проигрышвпроизводитель- ностиэмуляторавсотни-тысячираз, апривиртуализациионминимален, т.к. используютсяобычнопростаивающиепринормальнойработе компьютераресурсы.

Сточкизрениябезопасности-насколькобезопасноисполнениекода ввиртуальнойсредеинеможетлибыть«пенетраций»,схожихс

пофиксенымивVMwareвсвоевремя?

Ошибкивозникаютвлюбомкоде. Игипервизорнеисключение. Поэтому совсемисключатьвозможностьобнаружениятакихошибоквбудущем невозможно. Темнеменее, объёмкодавгипервизоредостаточномал, аинтерфейсыпростыипостоянноанализируютсянапредметбезопасности. Поэтомувероятностьпоявленияошибоквгипервизоре, скажем, ничутьнебольше, чемвBIOS. Вслучаежеобнаруженияошибоконибыстроисправляются, иобновлениятутжедоставляютсяпользователям. И этонамногопроще, чемеслиошибкадопущенавжелезе. Например, в процессорахIntel Pentium былаошибкаоперацииделенияикомпания отзывалаэтипроцессорыдажеизужепроданныхкомпьютеров. Поэтому сточкизрениябезопасностинетособыхотличиймеждуисполнением программыилиОСвнутривиртуальноймашиныилинапрямую, особенно учитываято, чтовсебольшеибольшефункцийберетнасебяпроцессор позапускуэтихВМ.

Любомуразбирающемусячеловекупонятно,чтобольше«фишек»будетреализовановгипервизоре,темсложнее,массивнееи«прожорливее»получитсякод.Нашлиливынекийбаланспроизводительности/

качествавэтомвопросе,набольшиели «жертвы»приходитсяидти?

Да, конечно, приразработкегипервизораоченьважнооптимизировать кодтакимобразом, чтобывнёмбылреализовантолько«минималь- но-необходимый» функционал. Мыэтоотличнопонимаемивсегда старалисьследоватьэтомупринципу. Поэтомунельзясказать, чтонам приходитсяидтинакакие-тожертвы- простомыследуембазовымпринципамразработкинашегопродукта.

Приэтом, вгипервизоренеткактаковыхфишек, естьвозможность эффективнозапускатьвиртуальнуюмашину. Всефункции, которые добавляютсякнашемуприложению, несвязанывбольшинствесвоем сзапускомВМ. Онинацеленынаповышениеудобстваработыпользователясприложением. Ведьврезультате пользователюважнанеголая производительностькакого-томикрозадания, авцеломскоростьи удобствоработысосвоимкомпьютером. Поэтомувсенашиособолюбимыепользователями«фишки», потребляякакое-томинимальноеколи- честводополнительныхресурсов, предоставляютмассупреимуществ. Например, естьфункцияSmartSelect, котораяпозволяетвамоткрыть вашWord-документсрабочегостолаМакасразуввиртуальноймашине подWindows. Ивамненадодляэтогоспециальнопредварительно запускатьвиртуальнуюмашину, переноситьтудафайлдокумента, открыватьтамWord, потомвнемоткрыватьэтотдокумент, и«черезлевоеухо» пересохранятьвнесенныеизменениясначалавВМ, апотомвверсию с рабочегостолаМака. Мывсеэтоделаемнаавтомате. Инетакважно, что дляэтогосценариятребуетсясразунесколькофишекиSmartSelect, и SharedFolders, иSharedProfiles иCoherence. Они, естественно, чуть-чуть загружаютпроцессор, затонашипользователивцеломвыигрываютво многоразвудобствеискоростивыполнениясвоихзадач.

XÀÊÅÐ 10 /141/ 10

085

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

 

 

F

 

 

 

 

 

 

 

t

 

 

 

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

r

 

 

 

P

 

 

 

 

 

NOW!

 

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w Click

to

BUY

 

 

 

 

 

 

 

UNIXOID

 

 

 

 

 

 

 

 

m

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

o

 

 

 

 

 

.

 

 

 

 

g

.c

 

Юрий «Adept» Видинеев adeptg@gmail.com

 

 

p

 

 

 

 

 

 

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

ТЕРМОЯДЕРНЫЙ

СИНТЕЗ

ОбзорпатчейдляLinux,невходящихвванильноеядро

Естьмногопричин, покоторымхорошуюперспективнуютехнологиюмогутне приниматьвофициальнуюветкуLinux — Линусславитсясвоимижесткими требованиямикновомукоду. Ноотэтогофактаменееинтереснымитакие технологиинестановятся. Ииногдарадинихстоитпересобратьядрос наложениемстороннегопатча.

КАКИМИБЫВАЮТЛИНУКСЫ

Ванильным(официальным) принятосчитать ядро, котороеможнонайтинаkernel.org, иглавнымпокровителемкоторогоявляетсясамЛинус. Насайтеможноскачатьстароеядроветки2.4.x (котороеужепрактическинеподдерживается) илинесколькостабильных(илинеочень:) ) ядер ветки2.6.x. Нестабильныеядраимеютсуффикс «-rc», аежедневныеснапшотыизgit'а— «rc-git». Обычновыходит7-9 rc-релизов, преждечемядро обретаетстатусстабильного. Всреднем, стабиль- ныерелизывыходят4-5 развгод, апоследнийна моментнаписаниястатьирелиз— 2.6.35.

LINUX-RT

Пожалуй, самыйизвестныйстороннийпатч. ПозволяетпревратитьобычныйLinux вОС реальноговремени. Ихотяглавноеприменениетакойоперационки— промышленныеи встроенныесистемы, наобычномдесктопеона

тожеможетбытьинтересна. Например, тем, кто частозанимаетсяобработкойзвукаиливидео илипостоянногрузитсистемукакими-нибудь ресурсоемкимивычислениями. Встречаются такжесвидетельстваоположительномэффекте отпримененияэтогоядранаhighload-серве- рах. Яженичего, кромеслегкаупавшейобщей производительностисистемы, незаметил. Скачатьпатчможнопоадресуwww.kernel. org/pub/linux/kernel/projects/rt/. Последняя стабильнаяверсия— 2.6.33.6-rt27. Внекоторых дистрибутивахrealtime-ядроужеприсутствует врепозитории. Например, вUbuntu дляуста- новкиrt-ядрадостаточновыполнить

$ sudo apt-get install linux-rt

Вдругихжедистрибутивахядросэтимпатчем можнолегкособрать. Дляэтогонадоналожить патчнаванильноеядроиприконфигурирова-

нииуказатьопциюProcessor type and features ÆPreemption Mode (Complete Preemption (Real-Time)). Иещерекомендуетсяотклю-

читьопциюKernel hacking ÆCheck for stack overflows, таккаконаповышаетлатентность. Чтобыможнобылособиратьнекоторуюстатистикуповремениотклика, приконфигурированиинужнотакжевключить: Kernel hacking Æ Tracers –> Kernel Function Tracer, Interrupts-off Latency Tracer, Interrupts-off Latency Histogram, Preemption-off Latency Traver, Preemption-off Latency Histogram, Scheduling Latency Tracer, Scheduling Latency Histogram, Missed timer offsets histogram. Послесборкиядродолжно содержатьвимениPREEMPT иRT, например:

$ uname -v

#1 SMP PREEMPT RT Wed Aug 4 00:40:34 YEKST 2010

086

XÀÊÅÐ 10 /141/ 10

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

Опцииgrsecurity

сразделамиreiser4, надопоставитьreiser4progs. Вомногих дистрибутивахэтоткомплектутилитестьврепозитории:

Ситуациясподдержкаминовыхфичвядре:)

$ sudo apt-get install reiser4progs

 

 

HTTP://WWW

links

kernelnewbies.org lkml.org — архив почтовой рассылки

Linux Kernel Mailing List

liquorix.net Debian-репозиторий для тех, кому лень самому собирать zen-kernel grsecurity.net ccache.samba.org zen-kernel.org ksplice.com

Чтобыпотешитьсобственноесамолюбие, можновключить сборстатистики:

# echo 1 >/sys/kernel/debug/tracing/latency_ hist/enable/wakeup

Самустатистикусмотримтут:

$ grep -v " 0$" /sys/kernel/debug/tracing/ latency_hist/wakeup/CPU0

Самоеинтересноетам: значенияминимального, среднегои максимальноговремениотклика.

BFS

Широкоизвестныйвузкихкругаханестезиолог-линуксоид КонКоливасспеременнымуспехомподдерживаетсобственнуюветку(точнее, наборпатчей) Linux. ГлавнымнововведениемвегопатчсетеявляетсяновыйпланировщикBFS (Brain Fuck Scheduler), являющийсяальтернативойстандартномуCFS ипоказывающий, порезультатамтестов, улучшеннуюотзывчивостьядранадесктопе(другимисловами, прииспользованииBFS жадныедографическихресурсов приложенияполучаютощутимыйприростпроизводительности, араздражающиепаузы, возникающие, например, припереключениимеждуресурсоемкимипрограммами, которыетребуютдоступкдиску, становятсяменеезаметными, либоисчезаютсовсем). Скачатьисходникиможноотсюда: www.kernel.org/pub/linux/kernel/people/ck/patches/2.6.

Посленаложенияпатча(текущаяверсия— 2.6.34-ck1) ста-

нетдоступнаопцияGeneral Setup Æ BFS cpu scheduler.

REISERFS

Исходяизтестовимногочисленныхотзывов, этоочень быстраяфайловаясистема. Внастоящеевремяееразработкойзанимаетсянашсоотечественник, ЭдуардШишкин, игруппаэнтузиастов. ЭдуардполоноптимизмаирешительностивключитьReiser4 вванильноеядро. Последнийна моментнаписаниястатьипатч(reiser4-for-2.6.34.patch.gz) скачатьможноздесь: ftp://ftp.kernel.org/pub/linux/kernel/ people/edward/reiser4/reiser4-for-2.6. Посленаложения патчапоявитсяопцияFile Systems ÆReiser4. Ноподдержка ядромФС— этоещеневсе. Чтобыможнобылооперировать

Соответственно, основныеоперациисФС:

mkfs.reiser4 — создатьразделсreiser4;

fsck.reiser4 — проверитьразделсreiser4;

measurefs.reiser4 — посмотретьпараметрыразделас reiser4.

GRSECURITY

Патч, содержащийпотрясающееколичествомеханизмов дляповышениязащищенностиLinux-системы. Опции компиляцииgrsecurity расположенывSecurity options Æ Grsecurity. Естьтриуровнябезопасностинавыбор: низкий, среднийивысокий. Низкийуровеньрекомендован, когда болеевысокиеуровнинеподходятиз-заиспользования нестандартногонабораПО. Онсодержит:

защитуссылокиFIFO — пользователямзапрещается переходитьпоссылкам(писатьвFIFO), владельцемкоторых являетсядругойпользователь;

*запретпользователямначтениеdmesg — увсехпользователей, кромеroot, отберутправоначтениесистемных сообщенийядра;

начальнуюзащитуchroot—рабочаядиректориядлявсехтолько чтозапущенныхвпесочницеприложенийбудетпринудительно установленавкорневуюдиректориюchroot.

Всреднемуровнезащитыдополнительнодобавятсятехнологии:

дополнительныеограничениядляприложений, запускаемыхвchroot: запретмонтированияиmknod (создание именованныхканалов, специальныхсимвольныхиблочных файлов), запретнадвойнойchroot, запретназаписьвsysctl идругое;

ограничениеправначтение/proc дляпользователей, не входящихвзаранеезаданнуюгруппу(поумолчаниюwheel);

ограничениезаписив/dev/kmem, /dev/mem и/dev/port;

рандомизацияадресногопространства;

серьезноелогированиеподозрительныхсобытий(неудавшихсявызововfork(), попытокизменениясистемного времени, сигналоввродеSIGSEGV иподобных). Высокийуровеньещебольшезатягиваетузлы, таккак дополнительно:

ограничиваетправаначтение/proc — теперьпользователисмогутчитатьиз/proc информациютолькоосвоих процессах. МожнотакжеуказатьGID специальнойгруппы, котораясможетчитатьлюбуюинформациюиз/proc.

накладываетограничениянаработупроцессоввchrootокружении: отключениевозможностиустанавливатьsuidбит, отключениевозможностипосылатьнекоторыесигналы

INFO

info

fakeroot —

эмулирует для программы получение рутовых привилегий. Позволяет создавать пакеты, не прибегая к sudo.

Шедулер BFS используется в проекте Android.

Утилита hackbench (developer.osdl.org/ craiger/hackbench/ src/hackbench.c)

может пригодиться при тестировании планировщика BFS. Она измеряет скорость создания указанного числа

процессов и скорость обмена данных между ними.

Kernel Check

(kcheck.sf.net) —

набор python'овых скриптов, позволяющих за пару щелчков мыши сделать свежий debпакет ядра, включая необходимые патчи.

XÀÊÅÐ 10 /141/ 10

087

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

UNIXOID

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

ksplice.com. Расценкинаrebootless

nconfig — заменаmenuconfig

внешнимпроцессам, ограничениенавыполнениетакихсистемных задач, какизменениесистемноговремениилиперезагрузкакомпа;

добавляетдополнительноелогирование(втомчислевсехmount/ umount);

включаетрандомизациюстекаядра;

добавляетограничениеначтениеинформацииоядречерезсистемныевызовыдляобычныхпользователей(дляroot этавозможность остается).

НеобязательновкачествеSecurity Level выбиратьодинизимеющихся уровней. ЕстьвариантCustom, позволяющийотдельновыбратьвсе необходимыеопции. Ещеоднаинтереснаяопция, Grsecurity ÆSysctl support, позволитвключать/отключатьпараметрыбезопасностичерез sysctl безнеобходимостипересобиратьядро. Таккакэтадиректива отрицательновлияетнаобщуюбезопасностьсистемы, еерекомендуется использоватьлишьвтестовыхцелях.

Помимоуровнейбезопасностиприконфигурацииможновключить/ отключитьRBAC (Role Based Access Control) — управлениедоступомна основеролей. Управлениепользователямииихролямиосуществляется

Скажи «нет!» ребуту

Допустим,утебяестьвысоконагруженныйproduction-сервер,который долженбытьдоступен24x7.Онотличноработает,давотбеда—вышел secutity-updateядратвоегодистрибутива,инадобыперезагрузиться. Норебут—этоdowntimeсервера.Иоставлятьсерверсуязвимос- тью—тоженедело.Придетсяискатьвторойсервердлявременного переносафункционаласпервого.Естьвыходгораздопроще:можно обновлятьядро,неперезагружаясь,аиспользуяksplice.com—плат- ныйсерверобновленийдляядерраспространенныхдистрибутивов. Установкаоченьпроста—добавляетсярепозиторийиставится программулинаuptrack.Потомделается

#uptrack-upgrade

Ивсеобновленияустановлены!Правда,«uname-a»всеещепоказы- ваетстаруюверсию.Зато

#uptrack-show

расскажетвсюправдуобустановленныхапдейтах.

Вдополнениесистемаещеимеетвеб-интерфейс,гдеможнопосмот- ретьстатусвсехсвоихподключенныхсерверов,умеетприсылатьна e-mailуведомленияовыходеновыхпатчей.Итакоеrebootlessсчастье стоит,впринципе,нетакужидорого—$3,95вмесяцзаодинфизичес- кийсервер(еслисерверовбольше20,то$2,95).Естьтриальныйдоступ на30дней.Аподдержкадесктопнойубунтывообщебесплатна.

Вобщем,сказка,еслибнеодно«но»—всеэтоработаеттолькосо стандартнымядромтвоегодистра—никакихтебепатчейиобновле- нийверсийядра.

спомощьюспециальнойутилитыgradm2, присутствующейвбольшинстведистрибутивов:

$ sudo apt-get install gradm2

ZEN-KERNEL

Zen-kernel — наверное, самаябольшаяпачказаплатокядраводном месте. Позиционируетсякакбыстроеядродлядесктопов. Получитьzenkernel можнотремяспособами:

скачатьархивспоследнимрелизом(заномером2.6.34-zen1);

забратьверсиюсуженаложеннымипатчамиизgit'а;

скачатьпатчдлянужнойверсиииналожитьсамому.

Унихестьдварепозитория: zen-stable.git (спатчами, наложеннымина стабильноеядро) иzen.git (синхронизациясgit-хранилищемЛинусаи наложениетестовыхпатчей).

Наборстороннихпатчейменяетсяотрелизакрелизуинаданныймоментвключаетвсебя:

патчиотКонаКоливаса(втомчислеBFS);

Reiser4;

Linux-PHC — проект, позволяющийснижатьнапряжениеCPU для уменьшенияэнергопотребленияитемпературы;

обновленныеидобавленныедрова(дляLenovo ThinkPad SL, Gamecube/Wii, Macbook, WiFi-чиповидругого);

Tuxonice — патч, реализующийпродвинутыйhibernate («спящий режим» — привыключениисодержимоеОЗУскидываетсянавинт, при включении— восстанавливается);

поддержкаFatELF — форматабинарников, содержащеговодномфайле вариантыдлянесколькихархитектур(аналогUniversal Binary вMac OS X);

DazukoFS — виртуальнаяФС, предоставляющаяon access доступк файлам. Широкоиспользуетсяразличнымиантивирусами.

УНИВЕРСАЛЬНАЯСБОРКА

Итак, ядроипатчивыбраны, можноприступатьксборке. Опишусборку своегоядранапримереUbuntu, хотявдругихдистрибутивахпоследовательностьдействийбудетаналогичной. Еслинужнопростопересобрать имеющеесяядро(изменивопцииконфигурации), топрощескачать исходникиядраспомощьюстандартногоменеджерапакетовтвоего дистрибутиваисобиратьужеих:

$ sudo apt-get install linux-source

Номнеzen-kernel нравитсябольше, чемстандартноеgeneric-ядро ubuntu, поэтомуегоибудумучить. Поставимвсе, чтоможетпригодиться длясборки:

$ sudo apt-get install build-essential libncurses5-dev \ libgtk2.0-dev libglade2-dev libqt3-mt-dev git-core

Добавимсвоегоюзеравгруппуsrc, чтобыможнобылобезпроблем собиратьв/usr/src:

088

XÀÊÅÐ 10 /141/ 10

Соседние файлы в папке журнал хакер