Сярод навін са свету адкрытага кода за мінулы тыдзень нельга прапусціць інтэрв'ю Лінуса Торвальдса для інтэрнэт-выдання H-Online, дзе Торвальдс раскрывае стратэгію развіцця ядра за папярэднія гады. І, як прыклад паспяховасці гэтай стратэгі, разгледзім некалькі падзеяў, якія адносяцца да мабільнай АС Android.
Эпоха Post-PC і Linux
На мінулым тыдні кіраўнік распрацоўкі ядра Linux Лінус Торвальдс даў сродкам масавай інфармацыі некалькі інтэрв'ю, адно з якіх для інтэрнэт-выдання H-Online заслугоўвае асаблівай увагі (пераклад на рускую мову). У ім Лінус кажа аб галоўных мэтах у развіцці ядра за апошнія пяцігодкі. Гэтыя мэты шмат у чым і тлумачаць сучасны стан Linux у кампутарным свеце.
Але спачатку вернемся да скандальнага меркавання кіраўніка Valve Гейба Ньюэла аб праблемах на платформе PC, з якім патрыёты Windows не згодныя, мяркуючы па каментарах да папярэдняга агляду ВПЗ.
Калі б я быў патрыётам Windows, я б таксама абураўся. Аднак, напрыклад, факты, якія сведчаць аб невясёлвм стане спраў у кампаніі AMD, як раз кажуць пра рацыю Ньюэла у тым, што ўсё ж такі "мы страцім некаторых топавых PC вытворцаў, якія сыдуць з рынку".
І справа не толькі ў бягучых праблемах AMD, якія рэгулярна ў гэтай кампаніі здараюцца. PC сябе вычарпаў як канцэпцыя, сутнасць якой была ў гнуткім маштабаванні вылічальнай магутнасці кампутара пры дапамозе перманентнага апгрэйду. Разнастайнасць пастаўшчыкоў камплектуючых для PC-сумяшчальных кампутараў дазваляла збіраць гнуткія канфігурацыі, сумяшчальныя з канкрэтным кашальком спажыўца.
Але з кожным годам гэтая гнуткасць памяншалася і практычна знікла з з'яўленнем ультрабукаў, якія, можна сказаць, з'яўляюцца "аднаразовымі" кампутарамі, што мала чым адрозніваюцца ад планшэтаў ці іншай прадукцыі Apple. Пры гэтым сектар мабільных рашэнняў на архітэктуры ARM проста кішыць новымі рашэннямі, пачынаючы з айпэдаў і заканчваючы Raspberry Pi.
Іншымі словамі, колькі б у далейшым не выходзіла новых версій Windows для дэсктопаў - гэта ўжо не верне для PC былую маладосць. Няўзброеным вокам відаць, што кампутарны свет няспешна, дрэйфуе ў бок "хмарнай" маштабаванасці і мабільных рашэнняў. Адпаведна галоўнымі тэхналогіямі наступных гадоў у кампутарнай індустрыі будуць энергазберажэнне і падтрымка шматпрацэсарнасці.
Менавіта ў гэтых кірунках як раз і рабіліся асноўныя намаганні пры распрацоўцы ядра Linux. Пра што і кажа Торвальдс у сваім інтэрв'ю:
"H-online: Звяртаючыся да апошніх пятнаццаці гадоў распрацоўкі ядра, якія ключавыя падзеі ў яго гісторыі вы маглі б вылучыць?
Лінус Торвальдс: Асноўная і найважнейшая для мяне рэч - гэта ўся праведзеная намі праца над маштабаваннем сістэмы. Мы пачыналі з стабільнай працы на 2 або 4 працэсарах, а зараз вы можаце ўсталяваць хоць 4000. Вядома, маштабаванне будзе неідэальным, але ў большасці выпадкаў прычынай таго будзе не ядро. Калі вашы працэсы працуюць адэкватна, то і маштабаванне таксама адбудзецца адэкватным. На гэта і спатрэбіліся сур'ёзныя намаганні ...
Было прыкладзена шмат сілаў дзеля таго, каб атрымаць зразумелую кодавую базу, для якой перад кампіляцыяй можна пазначыць: эй, мне трэба, каб ядро працавала на 4000 працэссарах, - і якая б згенеравала код для гэтага выпадку. У той жа час, калі б вы сказалі: не, мне трэба ядро для працы на дзвух працэссарах, - то і другое ядро сабралося б з таго ж зыходнага кода ...
Але акрамя гэтага ёсць і іншыя важныя здзяйсненні. Зноў жа, некалькі гадоў людзі са свету тэлефонаў былі вельмі патрабавальныя ў плане спажывання энергіі, што ім даводзілася звяртацца да брудных хакаў, асабліва на ARM-е, каб зэканоміць яшчэ трохі энергіі. Мы патрацілі гады на агульныя механізмы рэгулявання энергаспажывання, і замест ўстаўкі хакаў спецыяльна для ARM ці яшчэ некалькіх тэлефонных архітэктур, мы проста задзейнічалі механізм рэгулявання энергаспажывання глабальна для ўсяго ядра. Гэтая праца заняла пяць гадоў, але цяпер яе вынікі прыкметныя на любой прыладзе".
Сапраўды, вынікі гэтай стратэгіі прыкметныя на любой прыладзе, альтэрнатыўнай PC. І Linux дамінуе як на шматпрацэсарных суперкампутарах, так і на смартфонах.
А што тычыцца PC, так гэта платформа ў сілу ўнутраных прычын і без усялякай агрэсіі Linux ужо страціла сваю пасіянарнасць. Вядома, Windows да гэтага часу з'яўляецца лепшай запускачкай для некаторых тыпаў праграм - самапіснага вытворчага ПЗ, MS Office, некаторых праграм для вытворчасці мультымедыя.
Але вось для кампутарных гульняў, дзякуючы Ньюэлу, Windows - ужо не самая лепшая запускачка. З цягам часу і астатняе ПЗ, уключаючы аўтакады, эвалюцыйным шляхам перапаўзуць на Linux.
AOSP 4.2 і CyanogenMod 10.0
Аперацыйная сістэма Android - гэта як раз прыклад поспеху стратэгіі развіцця ядра Linux, якую Торвальдс, калі верыць яго інтэрв'ю, выбраў пяць гадоў таму назад. 13 лістапада Google прадставіла AOSP 4.2 (Android Open Source Project). Гэта зыходнікі новай версіі Android 4.2, прэзентацыя якой нядаўна адбылася. Таксама можна загрузіць і завадскія вобразы прашывак смартфона Google Nexus 4 LG і планшэта Google Nexus 10 Samsung.
Як мы не раз тлумачылі, практычна ўсе мабільныя прылад цалкам не падтрымліваюць AOSP. Гэта значыць, нельга, запампаваўшы зыходнікі Android, сабраць з іх вобраз і тут жа запусціць на сваёй прыладзе. Большасць смартфонаў і планшэтаў маюць зачыненыя кампаненты - напрыклад, закрытую прашыўку (firmware) для GPU.
І ўсё ж такі многія карыстальнікі смартфонаў на базе Android сутыкаліся з перавагамі AOSP на прыкладзе так званых кастомных прашывак. Найбольш вядомай і папулярнай сярод такіх прашывак з'яўляецца CyanogenMod.
Не толькі карыстальнікі, але і шматлікія кампаніі паважаюць гэты праект. Напрыклад, Samsung прыняла на працу заснавальніка праекта і бясплатна распаўсюджвае новыя мадэлі сваіх тэлефонаў сярод іншых распрацоўнікаў CyanogenMod.
Папулярнасць CM такая, што адзін з былых распрацоўшчыкаў праекта паспрабаваў нават зарабляць на рэкламе, прысвоіўшы сабе даменнае імя cyanogenmod.com. Але на працягу кароткага часу гэты "камерцыйны" канфлікт быў уладжаны.
На мінулым тыдні адбыўся выхад важнай версіі CyanogenMod 10, які адкрывае новы перыяд у развіцці праекта. Выпуск CyanogenMod 10 характэрны пераходам на выкарыстанне AOSP 4.1. І адначасова з выхадам AOSP 4.2, пачалася праца над версіяй CyanogenMod 10.1, якая будзе заснавана на кодавай базе Android 4.2.
З-за таго, што распрацоўнікам ў поце твару даводзіцца здабываць зачыненыя кампаненты для мабільных прылад, CyanogenMod можа паўнавартасна ўсталёўвацца на абмежаванай колькасці смартфонаў. На дадзены момант падтрымліваецца 30 мадэляў.
Гэтак жа існуе і магчымасць усталёўкі CyanogenMod на іншыя прылады, але са стратай некаторай функцыянальнасці. Напрыклад, можа не працаваць FM радыё, могуць быць праблемы з камерай, "блютуз".
CyanogenMod - гэта пераасэнсаванне некаторых бакоў працы фірменных варыянтаў Android.
У першую чаргу ў CyanogenMod надаецца шмат увагі прадукцыйнасці і цюнінгу карыстацкіх кампанентаў сістэмы. У наладах CM маецца дадатковы профіль налад хуткасці працы сістэмы, карыстацкага інтэрфейсу, гукавой падсістэмы і метадаў ўводу. Тут прысутнічае набор сэрвісных функцый для кантролю над выкарыстаннем акумулятара, сачэннем за спажываннем рэсурсаў, ацэнкі энергаспажывання асобных прыкладанняў.
У CM павялічана і штатная функцыянальнасць сістэмы. У камплект ўключаны BusyBox, rsync, htop, nano, powertop, bash і г.д. У сістэму ўваходзіць дыспетчар прашывак ROM Manager, ўтыліта Superuser для атрымання правоў суперкарыстальніка, эмулятар тэрмінала. Для кіравання выкананнем прывілеяваных дзеянняў выкарыстоўваецца спецыяльны мэнэджэр доступу, які дазваляе дазволіць або забараніць атрыманне root-правоў для пэўнага прыкладання. Прысутнічае падтрымка OpenVPN.
З асаблівасцяў CyanogenMod 10 можна вылучыць новы музычны прайгравальнік Apollo з падтрымкай кодэка FLAC і дыспетчарам апаратнай апрацоўкі гуку. Шмат каму можа спадабацца і абноўленае прыкладанне "Гадзіннік" з таймерам і зваротным адлікам. У якасці інтэрфейсу для запуску прыкладанняў задзейнічаны Trebuchet Launcher.
Вялікая ўвага ў CM нададзена бяспекі і прыватнасці. У штатным браўзэры падтрымліваецца прыватны рэжым навігацыі, пры якім не захоўваецца гісторыя наведвання, і дадзеныя не асядаюць у кэшы. Інтэграваны міжсеткавы экран Phone Goggles, што дазваляе здзяйсненне тэлефонных званкоў і адпраўку SMS толькі названым прыкладанням.
Сэрвісы Google Maps, Market, Gmail, Talk і YouTube не ўваходзяць у склад CM, так як патрабуюць асобнага ліцэнзавання. Але гэтыя сэрвісы можна ўсталяваць асобным дадатковым пакетам.
І для паўнаты карціны навін са свету Android трэба адзначыць выхад новай версіі SDK Android для распрацоўнікаў прыкладанняў. Асаблівасцю версіі з'яўляюцца новыя драконаўскія ўмовы ліцэнзіі на SDK, фармальна накіраваныя супраць фрагментацыі экасістэмы Android. Хоць на самай справе, не складана здагадацца, што новая ліцэнзія накіравана канкрэтна супраць вушлых кітайцаў, якія ў апошні час актыўна імкнуцца рабіць свой уласны кітайскі "Андроід". І я не ўпэўнены, што новая ліцэнзія гэтыя спробы прадухіліць.
Міхаіл АСТАПЧЫК
Горячие темы