книги хакеры / журнал хакер / 153_Optimized
.pdf
|
|
|
|
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 |
|
|
|
|
однакосуществуетнесколькоуниверсальных инструментов,которыеиспользуютизвестные Linux-дырыдляполученияпостоянногоroot’ана многихустройствах.Изпримеровможнопривести SuperOneClick(goo.gl/HIbN),реализованныйввиде десктопногоприложения,иz4root(goo.gl/Bv7tx), работающийпрямовAndroid’е.
КАКИЕБЫВАЮТ
QАЛЬТЕРНАТИВНЫЕПРОШИВКИ?
Альтернативныхпрошивоксуществует A огромноеколичество,однако95%изних полнейшаяерунда,сделаннаязадесятьминутна коленке:людипростоберутстандартную
прошивку,удаляютпарочкувстроенныхприложе- ний,добавляютпару-тройкусторонних,заливают красивуюобоинуивыпускаютэтоподименем «супер-мега-прошивкиотВасиПупкина».Наэто барахлодаженестоиттратитьсвоевремя.Есть парнипосерьезнее,которыеберутисходники ванильногоAndroid’аотGoogleиделают собственнуюсборкунаихоснове.Вбольшинстве случаевконечнойцельютакихпрошивок являетсяапгрейдверсииОС,предустанавливаемойпроизводителемустройства.Наконец, высшийпилотаж—этопортированиеразвивае- могосообществомфоркаAndroid’аподназванием CyanogenMod(www.cyanogenmod.com).Еслидля твоегоустройстваестьсборкаэтогочуда—сове- туюставитьименноего.
ВЧЕМОТЛИЧИЕCYANOGENMOD’А
QОТВАНИЛЬНОГОANDROID’А?
CyangenModразрабатываетсясообще- A ством,аэтозначит,чтовнегодобавляются нетолькотеизменения,которыесчитает полезнымиGoogle,ноивсё,чтоможеттакили иначепригодитьсяпользователям,ивособенностигикамипрограммистам.Прошивка включаетвсебямножествосамыхразных оптимизацийкода,которыепотемилииным причинамбылиотвергнутыGoogle.Имеется расширенноеменюнастроек,позволяющее
болеетонкоуправлятьконфигурациейсистемы (напримервключить/выключитьJIT,изменить цветстатуснойстроки,ееположениеисодержимое,настроитьэкранблокировки,повеситьна хардварныекнопкиальтернативныедействия, тонкоуправлятьзвуковымисигналамиимногое другое).Впрошивкеестьмеханизмпринудительногоограниченияприложенийввозможностях (например,можнозапретитьигревыходв интернетдляпоказарекламы),возможность принудительнойустановкивсехприложенийна SD-карту,механизмуправлениятемами оформления,разработанныйT-Mobile,есть встроенныйфонарик,использующийвспышку камеры,программныйэквалайзер,написанноес нуляFM-радио(дляустройствсFM-приемником), ввыезжающуюизстатуснойстрокипанель встроенинтерфейсуправлениясвозможностями устройства(включение/выключениеWi-Fi, Bluetooth,3Gит.д.).Имеетсяпредустановленный busyboxиSSH-сервер,атакженаборперво- классныхобоев.ВпоследнеевремяCyanogenMod обрелпростофеноменальнуюпопулярность, почтикаждыймесяцпоявляютсяпортынановые устройства(www.cyanogenmod.com/devices). Такжеестьбольшоеколичествоэкспериментальныхпортов,ещенеодобренныхкомандой CyanogenMod.Ихможнонайтивсоответствую- щихразделахнаxda-developers.com.
КАКПРОШИТЬ
QТЕЛЕФОН?
Ответнаэтотвопросзависитоттого,какую A прошивкутысобираешьсянакатыватьна телефон.Дляобновленияофициальнойпрошивки отпроизводителяобычноиспользуютсяспециализированныепрограммы,работающиетольков Windows.Каждыйуважающийсебяпроизводитель устройствимеетсобственнуюверсиютакой программы,собственныйформатпрошивоки собственныймеханизмбезопасности,не позволяющийзаливатьнателефонсторонние прошивки(обычнодляэтогоиспользуется проверкасертификатабезопасности).
Длязаливкипрошивок,созданныхлюдьми, неимеющимиотношениякпроизводителю (напримертогожеCyanogenMod),используется болееуниверсальныйподход.Вэтомслучаетелефонследуетзарутить,установитьнанего«кастомныйрекавери»(например,спомощьюROM Manager’аизМаркетаиливпроцессерутингас помощьюSuperOneClick),скинутьнаSD-карту zip-архивспрошивкой,зайтиврекавериодним изописанныхвследующемвопросеспособови, используяменю«Flashzipfromsdcard»,устано- витьzip-архиввсистему.
ЧТОТАКОЕ
Q«КАСТОМНЫЙРЕКАВЕРИ»?
ЛюбоеустройствонаAndroid’е(инетолько) A имеетнебольшойразделнавнутренней NAND-памяти,которыйсодержитобразтак называемогоRecovery—минималистичнойОС, предназначеннойдлявосстановления/ обновленияпрошивкидевайсавслучаеее порчи/устаревания,атакжедлявыполнения рядадругихсервисныхзадач,такихкаксбросдо заводскихнастроек(вайп).Recoveryнезависит отосновнойОС,установленнойнааппарате, поэтомудлявходавнееобычноиспользуется методвыключенияивключенияаппаратас зажатойклавишейуменьшениягромкости(в некоторыхдевайсахиспользуетсядругой способ).Далеенаэкранепоявляетсяменю,для навигациипокоторомуиспользуютсяклавиши громкости(вверх,вниз)ивключения(Enter).
Кастомныйрекавери—этомодификация стандартногоRecoveryсгораздобольшимнабором функций.Обычнотакойрекаверипредлагаеттакие функции,какустановкалюбыхпрошивокбезпроверкицифровыхподписей(основноеназначение), полныйбэкапсуществующейпрошивки(nandroid backup)иеговосстановление,изменениесистемныхнастроекAndroid’а,подготовкакартыпамяти дляпереносаприложенийилисозданияswapраздела,перемонтированиесистемныхразделовв режимечтения/записиимногоедругое.Наиболее популярныйиразвитыйкастомныйрекаверина
НЕПРОСТОЙВЫБОРРАБОЧЕГОСТОЛА
Выбирать между альтернативными рабочими столами, представленными в Android Market’е, в большинстве случаев бессмысленно. Почти все они основаны на стандартном Launcher’е,
разработанном Google, и не представляют ничего нового, кроме кучи различных и в большинстве случаев бесполезных обвесок, мешающих работе. Из всего этого многообразия достойны внимания разве что LauncherPro и Zeam.
С другой стороны, в Android Market’е есть несколько действительно «других» рабочих столов, которые стоит установить хотя бы для разнообразия. Во-первых, это Launcher7, очень хорошо имитирующий рабочий стол Windows Phone 7, многие из тех, кто установил его «на посмотреть», используют его ежедневно. Во-вторых, это рабочий стол под названием SlideScreen (рекомендую скачать бесплатную beta-версию отсюда: getsatisfaction.com/larvalabs), который вместо иконок и виджетов выводит на экран различную полезную информацию (погоду, последние SMS-сообщения, звонки, письма, RSS-новости, сообщения в твиттере, Facebook’е и т. д.) в виде удобного разворачиваемого списка. Просто обязателен для пробы, однако не совсем пригоден для ежедневного использования из-за своей инородности. Также советую посмотреть в сторону Simple Home, вобравшего в себя многие из идей Windows Phone 7, и Spark’а, представляющего собой нечто среднее между обычным рабочим столом Android’а и SlideScreen.
ХАКЕР 10/153/2011 |
119 |
|
|
|
|
hang |
e |
|
|
|
|
||
|
|
|
C |
|
E |
|
|
||||
|
|
X |
|
|
|
|
|
|
|||
|
- |
|
|
|
|
|
|
d |
|||
|
F |
|
|
|
|
|
|
|
t |
||
|
D |
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
||||
|
|
|
|
|
|
|
|||||
|
|
|
|
|
BUY |
|
|
||||
|
|
|
|
to |
UNIXOIDm |
||||||
w Click |
|
||||||||||
|
|
||||||||||
w |
|
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
|
.c |
|||
|
|
p |
|
|
|
|
|
g |
|
|
|
|
|
|
df |
-xcha |
n |
e |
|
|
|
|
|
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 |
|
|
|
|
ВнастройкахпрошивкиCyanogenModестьпункт дляуправлениярасширенныминастройками
сегодняшнийдень—этоClockworkModrecovery, созданныйKoushikDutta(Koush).
КАКСДЕЛАТЬ
QСВОЮПРОШИВКУ?
Естьдваспособа.Первыйисамый
A трудный:скачатьисходникипоследней версииAndroid’аипопробоватьсобратьОСтак, чтобыонакорректноработаланаLinux-ядре, прошитомвустройстве(будеткруто,еслиудастся раздобытьисходникиядраинужныхмодулей,но производителизатягиваютспроцессом открытиякодадопоследнего).Этопотребует глубокихзнанийнетольковобластиAndroid’а,но ивовстраиваемыхсистемах.Номожнопойтиипо гораздоболеепростомупути:модифицировать существующуюпрошивку.
Какужебылосказановыше,подавляющее большинство«авторских»прошивокдляAndroid- смартфонов—этомодификациидругихпро- шивок,напримерстоковой,тоестьустановленной нателефонпоумолчанию,либочужойсборки Android’адляданногоаппарата.Связаноэтостем, что«мод»,вотличиеотсамосборнойпрошивки, оченьлегкосделать.Посути,всё,чтодляэтого требуетсясделать,этопростораспаковатьархивс прошивкой,произвестинеобходимыеизменения (заменить/добавитьфайлы,отредактировать конфиги),запаковатьархивиподписатьего.Пошаговоэтотпроцессвыглядиттак:
Получаемархивснужнойпрошивкой: $ wget http://a.b.c/update.zip
ВоттакиекнопкиестьввыпадающейпанелиCyanogenMod
Распаковываемего:
$ mkdir myrom
$ cd myrom
$ unzip ../update.zip
Вкаталогепоявитсядваподкаталогаи файлboot.img.КаталогMETA-INFсодержит мета-информациюобобновлении,такуюкак егосоздатель,цифровыесертификатыискрипт обновленияMETA-INF/com/google/android/ updater-script,которыйподготавливаетка- талоговуюструктуру,удаляетстарыефайлы, информируетRecoveryопрогрессеобновления. Файлboot.img—этоядроLinuxизагрузочный ram-диск,ихможноизвлечьспомощьюскрипта split_bootimg.pl(goo.gl/QejM9).Наконец,каталог system—самаяинтереснаяиполезнаячасть архиваспрошивкой.Этонечтоиное,каксодержимоеодноименногосистемногораздела Android’а,вкоторомнаходятсякомпонентысамойОС.Здесьестькаталогapp,содержащийвсе системныеприложения(можноудалитьте,которыененравятся,иположитьновые),binиxbinсо- держатразличныеLinux-команды(вxbinможно распаковатьсвежийbusybox),etc—настройки различныхсистемныхдемонов,fonts—шриф- ты,framework—системныеJava-библиотеки, файлframework-res.apkсодержитстандартные ресурсысистемыиприложений,егоможноиспользоватьдляизменениястандартныхиконок, цветов(наxda-developers.comлежитмноговер- сийэтогофайласразличнымикастомизациями),
ВнастройкахпрошивкиCyanogenModестьпункт дляуправлениярасширенныминастройками
lib—Linux-библиотеки(здесьлучшеничегоне трогать),media—различныемультимедийные данные,напримерbootanomation.zip—архив, содержащийанимацию,демонстрируемуюпри загрузкеустройства,здесьжеестькаталогaudio срингтонами,звукамиоповещенияит.п.(всёв открытомформатеOggVorbis,кстати).Каталог usrможетсодержатьвсёчтоугодно,обычнов негопопадаютфайлыразличныхLinux-демонов иприложений.Файлbuild.propописываетпрошивкуизадаетнекоторыесистемныенастройки.
Послетогокакмодификацияпрошивки будетзавершена,можнозапаковатьфайлы обратновархив:
$ zip -r myupdate.zip *
Архивследуетподписать,иначеRecoveryне сможетегоустановить.Делаетсяэтоспомощью утилитыtestsign.jar:
$ wget http://goo.gl/OyBBk
$ java -classpath testsign.jar testsign \ myupdate.zip myupdate-sign.zip
ЗаливаемподписанныйархивнаSD-карту иустанавливаемспомощьюRecovery.
КАКРАЗОГНАТЬПРОЦЕССОР
QУСТРОЙСТВА?
Оченьпросто—зарутитьтелефони
A установитьнанегоприложениеSetCPU,
120 |
ХАКЕР 10/153/2011 |
|
|
|
|
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 |
|
|
|
|
РабочиестолыAndroid’а(слеванаправо):ADW.Launcher,Launcher7,SimpleHome,SlideScreen
доступноевМаркете.Программапозволяетзадать верхнееинижнеепороговыезначениядля механизмауправлениямощностьюпроцессора,а такжевыбратьодинизнесколькихпрофилей: максимальнуюпроизводительность,сохранение батареи,минимальнуюпроизводительностьит.д. ФункцияуправлениянастройкамипроизводительностипроцессораестьивCyanogenMod: «НастройкиÆНастройкиCyanogenMod’аÆПроизводительностьÆНастройкиЦП».Работает онапотомужепринципу,чтоиSetCPU.Такжев меню«Производительность»можновключить/ выключитьJIT-компиляцию,запретитьвыгрузку рабочегостолаизпамяти(оченьполезнодля устройствсмалымобъемомRAM)иизменить размерVMheap,чтовтеорииможетпривестик ускорениюработыпрожорливыхдопамятиприложений(вэтомслучаеследуетвыбратьболее высокоезначение)либоосвободитьпобольше оперативки(меньшеезначение).Этинастройки можноизменитьиспомощьюстороннегоrootсофта,такогокакJitterиVMHeapTool.
ПОЧЕМУ
QTASKKILLER—ЗЛО?
TaskKillerнезло,аглупость.Вбольшинстве A своемлюдииспользуютегонедля получениякакойбытонибыловыгоды,апростоот неспособностиперестроитьсвоемышлениена новыйстильуправлениязапущеннымиприложениями.Инженеры,проектировавшиеAndroid, сделалиприложениянеубиваемыминепросто
так,ониотличнопонимали,чтовусловиях постоянногоростаобъемовпамятивмобильных устройствахлучшийспособиспользоватьее свободноепространствоэтопоместитьтуда наиболеечастовызываемыеприложения.В результатеполучилсямеханизм,который оставляетвсезапущенныеприложениявисетьв памятидотехпор,покаеенестанетдействительномало.Вэтомслучаепросыпаетсявстроенныйв ядро«уборщик»,которыйвытесняетизпамяти наиболеередкоиспользуемыеприложения. Такимобразомпользовательполучаетсразудве вкусности:отсутствиенеобходимостизакрывать приложениясамостоятельноиоченьбыстрый доступкчастоиспользуемымпрограммам.
Основнаяпроблемаэтогоподходазаключаетсятольковтом,чтостандартныенастройки механизмавыгрузкиприложенийизпамяти чересчурдемократичны.Памятьосвобождается тольковтомслучае,еслиеестановитсядействительномалодлязагрузкиновогоприложения, поэтомувовремязапусканекоторыхприложений могутнаблюдатьсянебольшиепритормаживания,вызванныеработойуборщика.Ксчастью, уборщикобладаетинтерфейсомуправления, спомощьюкоторогоегоможносделатьболее агрессивным.Дляэтогоимеетсяфайл/sys/ module/lowmemorykiller/parameters,вкоторый записываетсяшестьзначений,управляющих поведениеммеханизмаlowmemorykiller:
echo "2560,4096,6144,12288,14336,18432" > /sys/ module/lowmemorykiller/parameters/minfree
Можносоздатьсоответствующийскриптв каталоге/system/etc/init.d,ноимейввиду,что сценарииизкаталога/system/etc/init.dотрабатываютсятольковкастомныхпрошивках,даито невовсех.Возможно,скриптпридетсязапускать вручнуюпослекаждойзагрузкиОС.
Хорошимдополнениемкизменениюнастроек уборщикабудетрасчисткасписказапускаемых вовремястартаОСприложений.ВовремязагрузкиAndroidзапускаеткучу«частоиспользуемых» софтин,многиеизкоторыхмогуттебеникогдаи непонадобиться,нотемнеменеебудутзанимать память.Это,кстати,такиесофтины,какголосовойнабор,Bluetooth,календарь,почта(неGmail, апростаяпочтоваяпрограмма),часы(те,через которыенастраиваетсябудильник).Удалитьвсё этоизавтозапускаможноспомощьюспециализированногософта,напримерStartupCleaner (бесплатновМаркете).
ЧТОТАКОЕ
QADB?
ADB—этоAndroidDebugBridge,интер- A фейснизкоуровневойотладкииуправле- нияAndroid-устройством,которыйпозволяет удаленноотлаживатьприложения,устанавливатьиудалятьих,манипулироватьфайлами, выполнятькоманды,просматриватьсистемный журналиделатьмножестводругихполезных вещей.Эташтукабылаподробноописанав статье«Большойбратизеленыйробот» (][_09_2011),такчтонебудемповторяться. z
ХАКЕР 10/153/2011 |
121 |
|
|
|
|
hang |
e |
|
|
|
|
||
|
|
|
C |
|
E |
|
|
||||
|
|
X |
|
|
|
|
|
|
|||
|
- |
|
|
|
|
|
|
d |
|||
|
F |
|
|
|
|
|
|
|
t |
||
|
D |
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
||||
|
|
|
|
|
|
|
|||||
|
|
|
|
|
BUY |
|
|
||||
|
|
|
|
to |
UNIXOIDm |
||||||
w Click |
|
||||||||||
|
|
||||||||||
w |
|
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
|
.c |
|||
|
|
p |
|
|
|
|
|
g |
|
|
|
|
|
|
df |
-xcha |
n |
e |
|
Юрий«Adept»Видинеев
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
(adeptg@gmail.com)w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
Тукс
поколения
3.0
Tux—знаменитый
символLinux’а
LINUXKERNEL3.0: ОБЗОРСАМЫХВАЖНЫХ НОВОВВЕДЕНИЙ
ВэтомгодуLinuxотпразднуетсвое20-летие.
Всвязисюбилеемвместоновойверсиизаномером2.6.40вышлаверсия3.0.Вобщем,хороший повод,чтобыоглянутьсяназадивспомнить, какиеплюшкинампринеславетка2.6.
ЧТОВИМЕНИТЕБЕМОЕМ?
ОвозможностисменыспособанумерациирелизовLinux’аговорили ужедавно.Быливариантыкак-топривязатьсякдатерелиза(на- пример2011.4.0),новконцеконцоврешенобылооставитьстарый вариант.Тольковместоверсии2.6.40сделатьверсию3.0,корректирующимрелизамоставивтретьюцифру(т.е.первымтакимрелизом стал3.0.1).Вдальнейшемперваяцифрабудетменятьсялибовслучае внесениякаких-токардинальныхизменений,либоразв40минорных версий.Число40выбранотакимобразом,чтобынавыпусктакого количестваверсийуходилопримернодесятьлет.
Сампосеберелиз3.0ненесетвсебеничегопримечательногоимог быспокойностатьочереднымрелизомвветке2.6.Средиосновных нововведений:
•СистемавиртуализацииXenбылаокончательноинтегрированав ванильноеядро.
•УвеличенаскоростьработыBtrfs’а,вчастностизасчетреализации автоматическойдефрагментации.ДругиеФСтоженезабыты:ext4 обзавеласьзащитойотмножественногомонтирования,вOCFS2 быладобавленаподдержкакомандыTRIM(увеличивающейвремя жизниSSD).CIFSнаучилимонтироватьWindows2008DFS(распределеннаяФС).
•Серьезноувеличенаскоростьфильтрациипакетовспомощью инструментовтипаtcpdump.Большевсегоэтобудетзаметнона 64-битныхсистемах.
•Поддержкафункции«WakeonWLAN».Полныйаналог«Wakeon LAN»,толькосиспользованиембеспроводногоадаптера.
•Теперьдляотправки/приемаICMP-пакетовненужныпривилегии root.БольшеникакихSUIDна/bin/ping.
•Добавленновыйтипкеша—Cleancache,вкоторомхранятсядан- ные,которыенестрашнопотерять(могутбытьлегковосстановленыиздругогоисточника).
122 |
ХАКЕР 10/153/2011 |
|
|
|
|
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 |
|
|
|
|
|
|
Тукспоколенияw3.0Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
ОчереднойинструментотIntel’адляразработчиков
•Добавленыдрайверадлямногихновыхустройств:Microsoft Kinect,процессоровIntelследующегопоколения(IvyBridge)и новыхпроцессоровсовстроеннойграфикойAMDFusion.
Практическисразупослерелизавышелнаборпатчейдляновой версиивrt-ветке(Realtime)ядра,превращающийLinuxвОСреального времени.Предыдущаяверсияпатчейбазироваласьнаверсии2.6.33. Новаяверсиябыласильнодоработанаитеперьзатрагиваетпочтив дваразаменьшефайлов(374против690),чтопозволяетнадеятьсяна слияниеветоквобозримомбудущем.
Примечательно,чтовспискефирм,внесшихбольшевсехизмененийв3.0,напятомместесосчетомв361коммитоказалась… Microsoft.Всеэтикоммитысвязанысподдержкойсобственной технологиивиртуализацииHyper-V.Кстати,этонеединственная неожиданнаяновостьнатему«MicrosoftиLinux».Вчестьвышеупомянутогоюбилеябылустроенконкурсналучшийвидеороликпро Linux,вкоторомпринялаучастиеMicrosoft,представивсвойролик натемунепрерывноменяющихсявлучшуюсторонувзаимоотношенийMicrosoftиLinux.
ВИРТУАЛИЗАЦИЯ
Можносуверенностьюсказать,чтовIT-мирепоследниелетсемь прошлиподфлагомвиртуализации.Перваясерьезнаясистемавир- туализации,появившаясявванильномядре,—KVM(Kernel-based VirtualMachine,Linux2.6.20).Болеестарая(ипокаболеепопулярная) системавиртуализацииXenполностьюинтегрироваласьвядротолькок3.0.Обеэтисистемыподдерживаюттакжеещеипаравиртуализацию(дающуюощутимоменьшийоверхед),ноKVMвлюбомслучае нуженCPUсподдержкойаппаратнойвиртуализации.
ЧтобыLinuxнормально(стабильноибыстро)работалкакгостевая ОСввиртуальныхокружениях,емунужныспециальныедрайвера. Сейчасониесть,кромеKVMиXen,такжедляVMWareиMSHyper-V.
Вядротакжевключенгипервизорlguest.ВотличиеотKVMдля работыемуненужнаподдержкаоборудованиемаппаратнойвиртуализации.ВотличиеотXenимоченьпростоуправлять.Вотличиеотобоих онсодержитвсегооколо5000строккода.Вобщем-тодлясерьезного использованияоннепредназначен:цельюегосозданиябылонаписа- ниеоченьпростогогипервизора—примерареализации.
Современемвядрепоявляетсявсёбольшевспомогательных технологий,связанныхсвиртуализацией.Однаизтаких—менеджер памятиKSM(KernelSamepageMerging),которыйпрочесываетпамять
наидентичныекускииобъединяетих.Особенноэффективенонвслучае,еслизапущенонесколькоидентичныхвиртуальныхмашин.
Наименеенакладнаявиртуализация—науровнеОС,когдавир- туальныемашиныкактаковыенеиспользуются,апростосоздается окружениессобственнымпространствомресурсовипроцессов.
СамаяизвестнаяподобнаясистемаподLinux—OpenVZ,ноонане входитвванильноеядро.Вядреестьаналог—LXC,которыйопира- етсянастандартныемеханизмы:namespaces(когдакаждыйпроцесс можетвидетьсвоеотдельноепредставлениеофайловойсистеме, запущенныхпроцессах,сетевыхнастройкахидр.)иControlGroup (дляуправленияресурсами).
БОЛЬШИЕ КОМПЬЮТЕРЫ
ВиртуализацияпозволяетзапуститьнесколькихОСнаодномкомпью- тере.Внекоторомсмыслепротивоположнаязадача—запускодной какой-тозадачинагруппесерверов(кластере).Вядро2.6добавлено многочегополезноговподдержкукластеровивообщебольшихнагруженныхсистем,убранонесколькодосадныхограничений:
•МаксимальноеколичествопроцессороввSMP-системеувеличе- нодо4096.
•Максимальноеколичествогрупп,вкоторыхможетнаходиться пользователь,увеличенос32до65536.
•Убраноограничениенапятьсимлинковвцепочке.
Серьезныекластеры,какправило,missioncritical,ичемрежеони останавливаютсяилиперезагружаются,темлучше.Однаизтехноло- гий,позволяющаяснизитьчисловыключений,—CPUиОЗУhotplug, поддержкакоторыхпоявиласьвLinux’е2.6.
Вбольшихсистемах,какправило,много-многопроцессоров (ядер),поэтомунадо,чтобыОСмасштабироваласькакможнолучше. Дляэтоговтечениевсего2.6избавлялисьоттакназываемогоBig KernelLock—технологии,котораяпоявиласьвLinux’е2.0ипозволя- лаработатьнаSMP-системах,ноустарелаинамногопроцессорных системахприводилакпадениюпроизводительности.КтемемасштабируемоститакжеотносятсятехнологииReceivePacketSteering (RPS)иReceiveFlowSteering(RFS),позволяющиераспараллеливать нагрузкупообработкетрафиканавсеCPU.
Кстати,проядра:появиласьещеподдержкапроцессоровсархи- тектуройTile,имеющихот32-хдонесколькихсотенядер.
СервернемыслимбезRAID’а.Вэтойобласти2.6тожепринеснесколькоулучшений:
ХАКЕР 10/153/2011 |
123 |
|
|
|
|
hang |
e |
|
|
|
|
|
|
||
|
|
|
C |
|
E |
|
|
|
|
||||
|
|
X |
|
|
|
|
|
|
|
|
|||
|
- |
|
|
|
|
|
|
d |
|||||
|
F |
|
|
|
|
|
|
|
t |
||||
|
D |
|
|
|
|
|
|
|
|
i |
|||
|
|
|
|
|
|
|
|
|
r |
||||
P |
|
|
|
|
|
NOW! |
o |
||||||
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
BUY |
|
|
|
|
||||
|
|
|
|
to |
UNIXOIDm |
||||||||
w Click |
|
||||||||||||
|
|
||||||||||||
w |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
|
o |
|||
|
. |
|
|
|
|
|
|
.c |
|||||
|
|
p |
|
|
|
|
|
g |
|
|
|
|
|
|
|
|
df |
-xcha |
n |
e |
|||||||
|
|
|
|
|
|
|
16000000 |
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14000000
12000000
10000000
8000000
6000000
4000000
2000000
0
0.1 |
1.0 |
1.2 |
2.0 |
2.2 |
2.4 |
2.6 |
3.0 |
|
|
|
|
|
|
|
|
Количествостроккодавядрерастетневероятнымитемпами
•РеализацияRAID6(когдаизмассивавыделяютсядвадискапод контрольныесуммы).
•Поддержка«RAID5reshaping»—добавлениедополнительных дисковвмассивбезнеобходимостиперестроения.
•ВозможностьпреобразованияRAID1вRAID5,RAID4вRAID5, RAID5вRAID6(иобратно).
ДобавленонескольконовыхкластерныхФС.Есливдвухсловах, токластерныефайловыесистемынужныдлякорректнойработыне- сколькихсерверов-нодсобщимвнешнимхранилищем(доступным, например,поiSCSIилиAoE).
•OracleClusterFilesystem(OCFS2)—изначальноразработаннаяи оптимизированнаядлясвоихСУБДкомпаниейOracle.
•GlobalFileSystem(GFS2)—вариант,поддерживаемыйRedHat’ом.
РаспределенныеФС,вотличиеоткластерных,используютдис- ковыересурсысвоихсерверов-нод.ОбеФСнаходятсявпроцессе активнойразработки(помеченыкакэкспериментальные),нозаслуживаютупоминанияосебе:
•POHMELFS(ParallelOptimizedHostMessageExchangeLayeredFile System)являетсяразработкойнашегосоотечественника(очем, собственно,нетруднодогадаться,исходяизназвания)ипозиционируетсякакраспределеннаяиболеебыстраязаменаNFS.
•Ceph—обрабатывающаяпетабайтыданных,обладающаявысо- койотказоустойчивостью(обеспеченнойхранениемкаждогофайла нанесколькихузлах)илегкорасширяемая(достаточнопросто добавитьновыйхост,иданныебудутперераспределенысучетом появленияновойноды).
Ещеоднавещь,появившаясяв2.6икасающаясяустройствхра- ненияданных,—DRBD,спомощьюкоторойможносинхронизировать посетидваблочныхустройства(посути,сетевойRAID1).
Другиенововведения:
•Файловаясистемаexofs,предоставляющаядоступкOSD-нако- пителям(ObjectStorageDevices).Вотличиеотобычныхнакопителей минимальнымобъектомявляетсянеблокданных,асразуобъект, содержащийнужныйфайл.Такиенакопителиещенеполучили большогораспространения,но,возможно,занимибудущее.
•Библиотекаlibataбыласерьезнопереписана—теперьподдер-
живаетNCQиhotplug.
|
|
|
|
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 |
|
|
|
|
•ПоддержкатехнологииInfiniBand,частоиспользуемойдлясвязи узловкластераипротоколаRDS(ReliableDatagramSockets), предназначенногодлявысокоскоростногообменасообщениями междуузлами.Всеэтиулучшенияпринеслисвоиплоды—врей- тингеТОП-500суперкомпьютеровмиравотужепродолжительное времяболее90%изнихработаютподуправлениемLinux’а.
МАЛЕНЬКИЕ КОМПЬЮТЕРЫ
Нарынкеdesktop-системспроцессорнойархитектуройвсёясно— x86/amd64,иточка.Вмиревстраиваемыхсистемсэтимвопросом покаполныйразбродишатание—нехватитпальцев,чтобыпере- считатьвсеembedded-CPU-архитектуры.Издобавленныхв2.6можно отметить:UniCore,m68knommu,m32r,FujitsuFR-V,AtmelAVR32, MicroBlaze,S-core.Кроменовыхархитектур2.6привнесмногоулучше- нийвembeddedlinux:
•Новый,полностьюпереписанныйбеспроводнойстекивозможность работывкачествебеспроводнойточкидоступаположительноповлиялинараспространениеLinux’анадомашнихроутерах.
•ТехнологияExecute-in-placeпозволяетвыполнятькодбезпред- варительногокопированияеговОЗУ.
•ПодсистемаASoC(ALSASystemonChip)обеспечиваетлучшую поддержкуALSAнаSoC(системахнакристалле).
•UBI—что-товродеLVMдляraw-flash-чипов(которыеиспользуются вовстраиваемыхустройствах).ГлавноеотличиеотLVM—коррект- наяобработкабитыхячеек.КомпанияNokiaсоздаласпециальную файловуюсистемуUBIFS,работающуюповерхUBI-томов.
•Ещеоднафайловаясистема,специальнопредназначеннаядляис- пользованиянаFlash-накопителях,—LogFS.Сжимаетданныеперед записьюиминимизируетколичествоцикловперезаписиячейки.
•ПоддержкашиныSPIимеханизмаSDIO(SecureDigitalI/O)для подключенияустройствчерезMMC/SD-слоты(GPS-приемники, Wi-Fi-,Bluetooth-иEthernet-адаптерыимногоедругое).
•ПоддержкапротоколаCAN(ControllerAreaNetwork).Одинизпри- меров,гдеэтотпротоколактивноиспользуется,—бортоваясеть автомобиля.
•Интересноедостижение—возможностьустановитьLinuxнаSony PS3(жаль,чтоуженеактуально),NintendoWiiилиGamecube.
Говоряпроembedded-решения,нельзянеупомянутьсмартфоныи планшеты.БлагодаряGoogleAndroid’унаэтомрынкеLinuxвырываетсявлидеры.ИхотяпатчиотGoogle,используемыевAndroid’е,были удаленыизванильнойветки,ожидается,чтовближайшембудущем онитудавернутся.
ПЕРСОНАЛЬНЫЕ КОМПЬЮТЕРЫ
ДоляLinux’анаPCрастетнеособоактивно—помнениюофициаль- нойстатистики,современвыхода2.6.0колеблетсяврайоне1–2%. Нотемнеменеевядропостояннодобавляютсяновыефишки,способныеоблегчитьжизньLinuxuser’а.
Первое,чтонужноdesktop-пользователю,—этоподдержкавсего егооборудования.Вэтомместеядро2.6показалоочевидныйпрогресс (вспомни,какосторожнонужнобыловыбиратьноутподLinuxещекакихтолетпятьназад).Можноотметитьследующиеосновныемоменты:
ПРОБЛЕМА3.0
Послетогокакрелиз3.0сталпоявлятьсявдистрибутивах, выяснилось,чтомногиеприложениянеправильновоспринимают версию(например,используя«#ifdef LINUX2»илиучитываятолько числопослепоследнейточкидляопределенияверсии).Всписке проблемныхоказалосьнастолькобольшоеколичествоприложений, чтодляFedora15переименовалиLinux3.0в2.6.40,чтобыобеспечить совместимостьстакимиприложениями.
124 |
ХАКЕР 10/153/2011 |
|
|
|
|
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 |
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Кадризролика,созданногоMicrosoft’омвчесть20летияLinux’а
Обновленныйmenuconfig
•СерьезноулучшиласьподдержкавидеоустройствсUSBинтерфейсомблагодарявключениювядродрайверадля устройствсподдержкойUVC(UniversalVideoClass)ивключению комплектадрайверовgspcaдлявеб-камер(поддерживаетболее 230не-UVC-устройств).
•ПоддержкаUSB3.0иACPI4.0появиласьвLinux’ераньше,чемво всехдругихОС.
•Поддержкаразличныхпротоколовбеспроводнойпередачиданных:WirelessUSB,WiMAX(IEEE802.16).
•ДлявидеокартNvidiaсиламисообществанаписанновыйвидео- драйверNouveauсподдержкой3D-ускорения.
•ЗасчетвнедрениятехнологииKernelmode-setting(определение устройстввыводаинастройкарежимовихработытеперьвозложены наядро,аненадрайверXServer)виртуальныетерминалытеперьимеютнейтивныеразрешенияипереключениемеждунимипроисходит болееплавно.КтомужеслегкауменьшилосьвремязагрузкиОС.
•ПоддержкавидеокартсинтерфейсомUSBиспециальныхпере- ходников,позволяющихподключитьVGA-мониторвUSB-порт.
•Переходвhibernationивозвратизнегозначительноускорились засчетасинхронноговключения/выключениядрайверов.
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
Тукспоколенияw3.0Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
•GPUswitching—возможностьналетупереключатьсямеждудву- мявидеокартаминаноутбуке.Правда,XServerвсеравнонужно будетперезапустить.
•ДобавленаподдержкаHDDссекторамибольше512байт(сейчас получаютраспространениемоделис4Кб).
•ПоддержкапротоколовPPTPиL2TP.СущественнаячастьпровайдероввРоссиираздаетпониминтернет.
•ДобавленаподдержкадатчиковпадениявHDDноутов.Приполучениисигналаотдатчикаголовкинемедленнопаркуются.
•ИнтерактивностьнадесктопеудалосьсущественноповыситьзасчетиспользованияпланировщикаCFS(CompletelyFair Scheduler)испомощьюнесложнойтехнологииавтоматической группировкизадач.
•Уделеномноговниманияуправлениюпитаниемнаноутах,что позволилонемногоснизитьэнергопотребление,восновномза счетвозможностисобратьядробезтиков(tickless),чтопозволяет процессорудольшенаходитьсяврежимеэнергосбережения.
ФАЙЛОВЫЕ СИСТЕМЫ
Думаю,еслипосчитатьколичествоподдерживаемыхФС,тоLinuxтут будетвнеконкуренции.Каждыйрелизприносилиликакое-нибудь нововведение,илиподдержкукакой-нибудьновойФС.Самоекруп- ноенововведениеветки2.6вэтойобласти—внедрениетехнологии FUSE(FilesysteminUserspace).Еслиневдаватьсявподробности,то онапозволяетписатьфайловыесистемыввидеобычныхпрограмм (анемодулейядра),работающихвпространствепользователя.
Этоособенноудобнодлясозданиявиртуальныхфайловыхсистем, которыесамипосебеничегонигденехранят,апростоосуществляют трансляциювызовов.ВкачествепримератакихФСможнопривести:
•SSHFS—доступкудаленнойФСчерезSFTP.
•GmailFS—сохраняетсвоиданныеввидепочтывGmail.
•WikipediaFS—представлениестатейизWikipediaввидефайлов (которыеможноредактировать).
ЕстьтакженескольковполнереальныхФС,работающихчерезFUSE:
•NTFS-3G—самаяпопулярнаяреализацияподдержкиNTFSподLinux.
•ZFS-Fuse—реализацияФСZFS(включениеподдержкикоторойв ядроневозможноиз-занесовместимостилицензий).
ДальнейшимразвитиемидеиFUSEсталмодульCUSE,позволяющий создаватьсимвольныеустройства(напримерклавиатуруилипринтер) изпространствапользователя.Покаэтатехнологияширокогораспространениянеполучилаииспользуетсянебольшимчисломпроектов, самыйизвестныйизкоторыхэто,наверное,OSSProxy,эмулирующий OSSпутемсозданияустройств/dev/dsp,/dev/adspи/dev/mixer.
ПРЕКРАСНОЕДАЛЁКО
Кмоментувыходажурналавпечатьноваяверсиязаномером3.1уже, скореевсего,зарелизится.Внейожидаютсяследующиеполезности:
•ПоддержкаOpen-Source-CPU-архитектурыOpenRISC.
•ПоддержкаизкоробкиосновногоконтроллерадляNintendoWii— WiiRemote.
•УскорениеработывстроенноговидеоядрапроцессоровIntelпоследнегопоколения(SandyBridge).
•ОткрытыйдрайверNouveauтеперьизкоробкиподдерживает GeForce400/500.
•ЗначительныеулучшениявподдержкеIntelGMA500.Донедавнего временисподдержкойэтогочипсетабылосовсемплохо—вотличие отразработанныхIntel’омснуляжелезок,нормальныйдрайвер невозможнобылосделатьиз-заограниченийлицензионного характера,таккак,посути,IntelGMA500—этоPowerVRSGX535от ImaginationTechnologies.
ХАКЕР 10/153/2011 |
125 |
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
||
|
|
|
C |
|
E |
|
|
|
|
|
|
|
||||
|
|
X |
|
|
|
|
|
|
|
|
|
|
|
|||
|
- |
|
|
|
|
|
|
d |
|
|
|
|
|
|||
|
F |
|
|
|
|
|
|
|
t |
|
|
|
|
|
||
|
D |
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
r |
|
|
|
|
|
||
P |
|
|
|
|
|
NOW! |
o |
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
BUY |
|
|
|
|
|
|
|
||||
|
|
|
|
to |
UNIXOIDm |
|
|
|
|
|
||||||
w Click |
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
||||||||||
w |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
|
o |
|
|
|
|
|
|
|
. |
|
|
|
|
|
|
.c |
|
|
|
|
|
|||
|
|
p |
|
|
|
|
|
g |
|
|
|
|
|
|
|
|
|
|
|
df |
-xcha |
n |
e |
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
13,9% |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
24,7% |
||
|
|
|
|
|
|
|
|
|
|
12,9% |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,9% |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,9% |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,9% |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1,0% |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1,1% |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1,2% |
||
|
|
|
|
|
|
|
|
|
|
11,2% |
|
|
1,3% |
|||
|
|
|
|
|
|
|
|
|
|
|
|
1,6% |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2,0% |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2,5% |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2,6% |
|
|
|
|
|
|
|
|
|
|
|
|
8,9% |
4,1% |
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
8,3% |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Пользователи |
|
LinuxFoundation |
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
Неизвестныекомпании |
|
Consultant |
|
|
Linutronix |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
RedHat |
|
SGI |
|
|
HP |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
Novell |
|
MIPSTechnologies |
|
|
NetApp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
IBM |
|
Oracle |
|
|
SWsoft |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
Intel |
|
MontaVista |
|
|
Другиекомпании |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Данныеслегкаустаревшие,нообщеераспределениенеизменилось: Linuxпишуткрупныекомпании
БылодобавленонескольконовыхФС:
•ext4—наследникext3.Болеебыстрый,менееподверженныйфраг- ментации,поддерживающийразделыдо1эксбибайта(260байт).
•NILFS2—журнально-структурированнаяФС,чтовпереводена человеческийязыкозначаетиспользованиедляхранениявсех данныхспециальныхлогов,новыеданныевкоторыхнеперезаписываютстарые.Основнымположительнымэффектомтакой организацииявляетсявозможностьсмонтироватьФСвсостоянии налюбойопределенныймоментвремени.
•BtrfsсоздаваласькаканалогZFSотSun(теперьOracle)иимеет практическитежефункции(снапшоты,прозрачнуюкомпрессию, оптимизациюдляработысSSDимногоедругое).ФСещеявляется экспериментальной,новближайшембудущемдолжнастабилизироваться.Многиедистрибутивыимеютпланыпоиспользованиюеепоумолчанию(напримерFedora17).
•Squashfs—read-only-файловаясистемасвысокимуровнем компрессии.Используется,какправило,наLiveCD/USB.
•Ecryptfs—какясноизназвания,этоФСсшифрованием.Работает поверхдругойФС,т.е.шифруетфайлы/каталоги,анеблочное устройствоцеликом.
Значительныйпрогресснаблюдалсятакжевобластиподдержки родныхФСдругихОС:реализованавозможностьзаписинаNTFS, чтения/записинаHFS+иHFSX(ФСMacOSX),чтения/записинаUFS2 (ФСBSD-систем).
СетевыеФСтоженеосталисьбезвнимания—реализованапод- системаFS-Cache,кеширующаялокальноданные,передаваемые посетевымФС,вродеNFS,AFSилиCIFS.Самокешированиедля пользователявыполняетсяабсолютнопрозрачно.
СЕТИ
Основноедостижениеветки2.6—поддержкаIPv6вовсехподсис- темах(netfilter,SELinux’е,сетевыхФС),атакженовыхпротоколови стандартов:
•UDP-lite(RFC3828)—оченьпохожийнаUDP-протокол,основное отличие—поврежденныепакетыснеправильнойконтрольной суммойнеотбрасываются.Длянекоторыхобластейприменения
(VoIP,потоковоговидео)битыйпакетлучше,чемничего.
|
|
|
|
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 |
|
|
|
|
•DCCP(DatagramCongestionControlProtocol,RFC4340)—про- токолсмеханизмамидляотслеживанияперегрузоквСети. Основнаяобластьприменения—там,гдепакеты,которыенеуда- етсяпередать,быстроустареваютилучшепопытатьсяпередать новые(VoIP,потоковоеаудио/видео,онлайновыеигры).
•IEEE802.11s—беспроводныеmesh-сети.Такиесетиобразуютсяиз множестваpeer-to-peer-соединенийузлов,находящихсявобласти радиопокрытиядругдруга.ТакжереализованаподдержкаспециальногопротоколамаршрутизацииB.A.T.M.A.N.(BetterApproachTo MobileAdhocNetworking),разработанногодляmesh-сетей.Кслову сказать,такиесетиужедовольнопопулярныинабираютоборотыза границей.Болееподробнуюинформациюисхемыужесуществую- щихсетейможнопосмотретьнасайтеwww.open-mesh.com.
Ещеодноинтересноенововведение—проектaccel-pptp,пред- ставляющийизсебяPPTP/PPPoE/L2TP-сервериPPTP-клиентпрямо вядре.Засчетработынауровнеядравсёэтоделоработаетбыстрои несильногрузитCPU.
БЕЗОПАСНОСТЬ
Вобластибезопасностисамоеважноенововведение—появлениераз- личныхсистемпринудительногоконтролядоступа(MandatoryAccess Control),посути,аналоговSELinux’а,носнесколькоинымиподходами:
•AppArmor—основнойконкурентSELinux’а,попалвванильное ядропозжевсехподобныхсистем(в2.6.36).Отличительнаяосо- бенность—определениеполномочийнаосновефайловогопути.
•TOMOYO—какиAppArmor,используетвсвоихправилахфайло- выепутидообъекта.ОдноизосновныхотличийотAppArmor’а— возможностьуказыватьвправилах,какимобразомбыло запущеноприложение.Например,дляинтерпретатора/bin/bash, запущенногочерезsshd,можноуказатьболеестрогиеограничения,чемдлявызванноголокально.
•SMACK(SimplifiedMandatoryAccessControlKernel)—внекото- ромродеаналогSELinux’а(тожеиспользуетметкидляобъектови субъектов),которыйпрощенастраивать.
Такжеизинтересныхвещей,касающихсябезопасности,можноотметить:
•Механизм,позволяющийразрешатьилиблокироватьподключе- ниеконкретныхUSB-устройств.
•IMA(IntegrityManagementArchitecture)—механизм,позволяю- щийисполнятьтолькофайлы,имеющиекорректнуюцифровую подпись.
•Addressspacelayoutrandomization(ASLR)—подход,прикотором вадресномпространствепроцессавсеважныеструктурырасположенывпроизвольномпорядке.Этозначительноусложняет атакитипапереполнениябуфера.
•Per-processsecurebits—возможностьповышенияпривилегий толькодляконкретногопроцесса,безраспространениянапорожденныеимдочерниепроцессы.
VARIOUS
Другиенововведенияразнойстепениполезности:
•Новыеинтерфейсыдляконфигурированияпараметровсборки ядра:makenconfig(посути,этообновленныйmenuconfig)иmake localmodconfig(вконфигвключаютсятолькозагруженныена текущемжелеземодули).
•ВсоставядравошелтестОЗУ(аналогзнаменитогоmemtest’а, длязапусканужнопростодобавитьопциюmemtestкпараметрам загрузкиядра)иотладчикkgdb.
•Fanotify—новыймеханизмдляотслеживанияизмененийв файловойсистеме,пришелнасменуустаревшимinotifyиdnotify, укоторыхбылипроблемысотслеживаниембольшогоколичества объектов.
•Теперьдлякаждогопроцессаможнопосмотреть,сколькотрафикапрошлочерезфункцииread()иwrite().
•ПоддержкаутилитыLatencyTopдляанализавремениреакции системныхоперацийиприложений. z
126 |
ХАКЕР 10/153/2011 |
|
|
|
|
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 |
|
df |
|
|
n |
|
|
|
|||
ГОДОВАЯ |
|
w |
|
|
|
|
o |
|
|||
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
|
p |
|
|
|
|
g |
|
|
|
ЭКОНОМИЯ |
|
|
-x cha |
|
e |
|
|||||
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
500руб.
1.Разборчиво заполни подписной купон и квитанцию, вырезав их из журнала, сделав ксе- 12 НОМЕРОВ — 2200 РУБ. рокопию или распечатав с сайта shop.glc.ru.
2.Оплати подписку через любой банк. 6 НОМЕРОВ — 1260 РУБ.
3.Вышли в редакцию копию подписных доку-
ментов — купона и квитанции — любым из |
УЗНАЙ, КАК САМОСТОЯТЕЛЬНО ПОЛУЧИТЬ |
нижеперечисленных способов: |
ЖУРНАЛ НАМНОГО ДЕШЕВЛЕ! |
•на e-mail: subscribe@glc.ru;
•по факсу: (495) 545-09-06;
• почтой по адресу: 115280, Москва, |
¶¡«¦±²«©¦°¬¡¤©®¼¥¬ÀGOOGLE CHROME |
ПРИ ПОДПИСКЕ |
|
ул. Ленинская Слобода, 19, Омега плаза, |
LULZSEC |
НА КОМПЛЕКТ ЖУРНАЛОВ |
|
|
¥¬À±§¡«©: |
ЖЕЛЕЗО + ХАКЕР + 2 DVD: — |
|
5 эт., офис № 21, |
ДЛЯ ИНТЕРФЕЙСА |
²¦®¡³²¹¡, |
|
|
ПРАВИЛЬНЫЕ ХАКИ |
FOXNEWS |
|
|
WINDOWS 7 |
|
|
ООО «Гейм Лэнд», отдел подписки. |
|
|
ОДИН НОМЕР ВСЕГО ЗА 162 РУБЛЯ |
С ПОМОЩЬЮ НОВОГО БАГА |
|
|
|
|
ВЗЛОМ PHPMYADMIN |
|
(НА 35% ДЕШЕВЛЕ, ЧЕМ В РОЗНИЦУ) |
|
МОБИЛЬНАЯ МАЛВАРЬ |
|
|
|
ДЛЯ ПЛАТФОРМЫ ANDROID |
|
|
|
ПРЯЧЕМ, ОБФУСЦИРУЕМ |
|
|
|
И КРИПТУЕМ JAVASCRIPT |
|
|
ВНИМАНИЕ! ЕСЛИ ПРОИЗВЕСТИ ОПЛАТУ В СЕНТЯБРЕ, ТО ПОДПИСКУ МОЖНО ОФОРМИТЬ С НОЯБРЯ.
ЕДИНАЯ ЦЕНА ПО ВСЕЙ РОССИИ. ДОСТАВКА ЗА СЧЕТ ИЗДАТЕЛЯ, В ТОМ ЧИСЛЕ КУРЬЕРОМ ПО МОСКВЕ В ПРЕДЕЛАХ МКАД
ЗА 12 МЕСЯЦЕВ 3890 РУБЛЕЙ (24 НОМЕРА) ЗА 6 МЕСЯЦЕВ 2205 РУБЛЕЙ (12 НОМЕРОВ)
ЕСТЬ ВОПРОСЫ? Пиши на info@glc.ru или звони по бесплатным телефонам 8(495)663-82-77 (для москвичей) и 8 (800) 200-3-999 (для жителей других регионов России, абонентов сетей МТС, БиЛайн и Мегафон).
ПРОШУ ОФОРМИТЬ ПОДПИСКУ НА ЖУРНАЛ «ХАКЕР»
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
C |
|
E |
|
|||
|
|
X |
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
||
|
F |
|
|
|
|
|
|
t |
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
r |
|
P |
|
|
|
|
|
NOW! |
o |
||
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|||
|
|
|
|
to |
BUY |
SYN/ACKm |
|||
w Click |
|
||||||||
|
|
||||||||
w |
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
. |
|
|
|
|
|
.c |
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
df |
|
|
n |
e |
||
|
|
|
|
-xcha |
|
|
|
INFO
ПриразработкеполитикиИБрекомендую предварительно ознакомитьсястакой книгой,какInformation SecurityPoliciesMade Easyзаавторством ЧарльзаКрессонВуда.
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
НикитаДыминскийakaw13ozClick |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
Борьбаза безопасность
Случиласькак-торазунашей фирмыоднанеприятность—мы проиграликонкурснапоставкуоборудованиягосзаказчику. Суммабылаболеечемсолидная, аситуацияявноговорилаотом, чтопроигралимыпотому,чтоу нашихконкурентовбылаполная информацияотехценах,которые мывыставляемнаоборудование. Послетакогоконфузадоруководствадошло,чтоинформационная безопасность—вещьнужная…
ЖИЗНЕННАЯИСТОРИЯО ПОСТРОЕНИИСИСТЕМЫ ИБВОТДЕЛЬНОВЗЯТОЙ КОНТОРЕ
так,послетогокакнашгорькийопытпоказал,чтоИБ—этоне
ИпростовыполнениетребованийФЗ-152(окоторомвсеравно малоктодумал),акое-чтодругое,иневыполнениенекоторых
элементарныхтребованийможетпривестикнемалымфинансовым убыткам,отделинформационнойбезопасностиполучилотмашкуна созданиесистемызащитыинформациивотдельновзятомпредприятии.Посмотрим,чтожеизэтогополучилось.
ЧТОБЫЛОВСАМОМНАЧАЛЕ?
Еслиоставитьвсторонерешениеорганизационныхвопросов,которыемаловолнуютчитателя(всамомделе,зачемвамзнатьпроорганизациюпропускногорежима?),товсухомостаткеостаетсязадачао созданиинеприступнойсети,решитькоторуютолькосвоимисилами унаснебылоникакойвозможности.Чтоунасбыло:небольшаяЛВС (75+пользовательскихмашин),изсобственныхсерверов—только контроллердомена,файл-серверисерверс1Ситерминальный сервер.Помимоглавногоофиса,внесколькихгородахрегионасуществовалипредставительстваиторговыеточки,которыеработалис темжесамым1Счерезтотжесамыйтерминальныйсервер,подклю- чаяськнемупоRDPбезовсякогоVPN.Почтовыеивеб-серверабыли арендованыуоднойпитерскойкомпании(названиенеприводится поэтическимсоображениям),причемвдоговореопредоставлении виртуальныхсерверовсоглашенияоконфиденциальностинебыло. Кроме,собственно,описаннойзадачи,мырешилиподшумокпротащитьсразуисозданиесистемызащитыперсональныхданных,так как,несмотрянаточтонатотмоментФЗ-152всилуещеневступил, слухиотом,чтомывошливсписок«жертвенныхагнцев»,донасдошли.Такчтозадачанесколькорасширилась.
128 |
ХАКЕР 10/153/2011 |