Открытый и закрытый код программы

Содержание

Исходный код модели с закрытым исходным кодом не публикуется. Программное обеспечение с закрытым исходным кодом поддерживается командой, которая производит свой продукт в скомпилированном -исполняемом состоянии, к которому рынку разрешен доступ. Microsoft, владелец и разработчик Windows и Microsoft Office, вместе с другими крупными компаниями-разработчиками программного обеспечения, уже давно выступают за эту бизнес-модель, хотя в августе 2010 г., Генеральный менеджер по совместимости Microsoft Жан Паоли сказал, что Microsoft «любит открытый исходный код», и ее позиция против открытого исходного кода была ошибкой.

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

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

Открытый и закрытый исходный код. Ошибки и ситуативные баги.

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

Заблуждение, которое часто делают как сторонники, так и противники FOSS, заключается в том, что его нельзя использовать с большой буквы. FOSS может и был коммерциализирован такими компаниями, как Red Hat, Canonical, Mozilla, Google, IBM, Novell, Sun / Oracle, VMware и другие.

Коммерциализация

Закрыто- исходное программное обеспечение

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

FOSS

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

Red Hat Inc. и Canonical Ltd. — компании, которые бесплатно раздают свое программное обеспечение, но взимают плату за услуги поддержки. исходный код программного обеспечения обычно предоставляется бесплатно, а предварительно скомпилированное двоичное программное обеспечение часто сопровождает его для удобства. В результате исходный код можно свободно изменять.

Однако могут быть некоторые лицензионные ограничения на повторное распространение программного обеспечения. Как правило, программное обеспечение может быть изменено и распространено бесплатно, если указана оригинальная производитель программного обеспечения. Кроме того, FOSS, как правило, может продаваться на коммерческой основе, если предоставляется исходный код. Существует большое количество лицензий бесплатного программного обеспечения, которые определяют, как программу можно использовать, изменять и продавать в коммерческих целях (см. GPL, LGPL и Лицензии типа BSD ). FOSS также может финансироваться за счет пожертвований.

Философия программного обеспечения, сочетающая в себе аспекты FOSS и проприетарного программного обеспечения, — это программное обеспечение с открытым ядром или коммерческое программное обеспечение с открытым исходным кодом. Несмотря на критику со стороны некоторых сторонников СОПО, оно показало незначительный успех. Примеры программного обеспечения с открытым ядром включают MySQL и VirtualBox. Операционная система MINIX использовалась для этой бизнес-модели, но после 2000 года подпадала под все условия лицензии BSD.

Конкурс в сфере обработки

Эта модель оказалась несколько успешной, о чем свидетельствует сообщество Linux. Существует множество доступных дистрибутивов GNU / Linux, но многие из них являются просто модифицированными версиями какой-то предыдущей версии. Например, Fedora Linux, Mandriva Linux и PCLinuxOS являются производными от более раннего продукта Red Hat Linux. Фактически, Red Hat Enterprise Linux является производным от Fedora Linux.

Это пример того, как один поставщик создает продукт, позволяет третьей стороне изменять программное обеспечение, а затем создает третичный продукт на основе измененной версии. Все перечисленные выше продукты в настоящее время производятся компаниями, предоставляющими программное обеспечение.

Операционные системы, построенные на ядре Linux, доступны для более широкого диапазона архитектур процессоров, чем Microsoft Windows, включая PowerPC и СПАРК. Ни один из них не может сравниться с огромной популярностью архитектуры x86, тем не менее, у них есть значительное количество пользователей; Windows по-прежнему недоступна для этих альтернативных архитектур, хотя в прошлом были такие порты.

Наиболее очевидная жалоба на СОПО связана с тем фактом, что зарабатывать деньги с помощью некоторых традиционных методов, таких как продажа или использование отдельных копий и уплата патентов роялти, намного сложнее и иногда непрактично с FOSS. Более того, FOSS считается наносящим ущерб рынку коммерческого программного обеспечения, что подтверждается документами, выпущенными в рамках утечки документов Microsoft Halloween.

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

  • Отдать программу и плату за установку и поддержка (используется во многих дистрибутивах Linux ).
  • «»: сделайте продукт дешевле или бесплатным, чтобы люди с большей вероятностью приобрели соответствующий продукт или услугу, которые вы продаете.
  • Избежание затрат / разделение затрат : продукт нужен многим разработчикам, поэтому имеет смысл разделить затраты на разработку (такова история X Window System и веб-сервера Apache ).
  • Пожертвования
  • Краудфандинг

Все чаще FOSS разрабатывается коммерческими организациями. В 2004 году Эндрю Мортон отметил, что 37 000 из 38 000 последних исправлений в ядре Linux были созданы разработчиками, напрямую оплаченными для разработки ядра Linux. Многие проекты, такие как X Window System и Apache, имели коммерческую разработку. Ent как основной источник улучшений с момента их появления. Эта тенденция со временем усилилась.

Некоторые возражают, что коммерциализация FOSS — это плохо продуманная бизнес-модель, поскольку коммерческие компании FOSS подчиняются сторонам, придерживающимся противоположных взглядов. С одной стороны, коммерческие FOSS-компании отвечают перед разработчиками-добровольцами, которым трудно придерживаться графика, а с другой стороны, они отвечают перед акционерами, которые ожидают возврата своих инвестиций. Часто разработка FOSS не идет по графику, и поэтому это может отрицательно сказаться на коммерческой компании FOSS, выпускающей программное обеспечение вовремя.

Читайте также:
Какие бывают расширения программ

Innovation

Гэри Хэмел возражает против этого утверждения, говоря, что количественная оценка того, кто или то, что является инновационным, невозможно.

Фонд свободного программного обеспечения поощряет внедрение совместимых замен FOSS для проприетарного программного обеспечения, чтобы их пользователи могли использовать FOSS вместо проприетарного программного обеспечения для Например, они перечислили GNU Octave, API-совместимую замену для MATLAB, как один из своих высокоприоритетных проектов. В прошлом этот список содержал бесплатные двоичные совместимые реализации Java и CLI, такие как GNU Classpath и DotGNU. Таким образом, даже «производные» разработки важны, по мнению многих людей из FOSS. Однако количественного анализа нет, если FOSS менее инновационен, чем проприетарное программное обеспечение, поскольку существуют производные / повторно внедряемые проприетарные разработки.

Некоторые из самых крупных хорошо известных проектов FOSS представляют собой устаревший код (например, FreeBSD или Apache), разработанный давным-давно независимо от движения за бесплатное программное обеспечение, или такими компаниями, как Netscape (которая открыла исходный код своего кода в надежде, что они смогут лучше конкурировать), или такими компаниями, как MySQL, которые используют FOSS для привлечения клиентов к более дорогому лицензионному продукту. Тем не менее, примечательно, что в большинстве этих проектов были основные или даже полностью переписаны (например, в случае кода Mozilla и Apache 2) и они не содержат большой части исходного кода.

Инновации пришли и продолжают исходить из мира открытого исходного кода:

  • Perl, новаторский язык сценариев с открытым исходным кодом, сделал популярными многие функции, такие как регулярные выражения и ассоциативные массивы, что было необычно в то время. Новый язык Python продолжает это нововведение с такими функциями, как функциональные конструкции и унификация словарей классов.
  • dcraw — это инструмент с открытым исходным кодом для декодирования изображений RAW-формата от различных цифровых камер, которые могут создавать более качественные изображения, чем инструменты с закрытым исходным кодом, предоставляемые самими поставщиками камер.
  • Доступно несколько моделей ноутбуков с особым акцентом на мультимедиа возможности. Хотя они неизменно поставляются с предустановленной копией Microsoft Windows, некоторые из них также предлагают альтернативный режим «быстрой загрузки » (например, Phoenix HyperSpace ) на основе GNU / Linux. Это позволяет сократить время загрузки Windows.
  • VLC media player, Songbird и Amarok — это музыкальные плееры FOSS, которые объединяют данные из Интернета. источников в беспрецедентном масштабе, взяв информацию о песнях с MusicBrainz, информацию о связанных треках с last.fm, обложки альбомов с amazon.com и отобразив Википедию исполнителя страница в проигрывателе.
  • Хотя, по общему признанию, вдохновленный графическим слоем Quartz в Mac OS X, Compiz Fusion является пионером концепции » подключайте «оконные декораторы и эффекты анимации». Пользователи могут создавать свои собственные творческие и уникальные эффекты.
  • Телекоммуникационные продукты с открытым исходным кодом, такие как АТС Asterisk, произвели революцию в мире.
  • Были предприняты значительные усилия для реализация семантического рабочего стола в сообществах FOSS.
  • Сегодняшние среды рабочего стола вводят новшества в отношении своей уникальной идеи Social Desktop.
  • Многие научные исследовательские проекты публикуют свои результаты как FOSS.

Качество кода

Безопасность

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

Бизнес-модели

В годовом отчете за 2008 год Microsoft заявила, что бизнес-модели FOSS бросают вызов ее модели программного обеспечения на основе лицензий и что фирмы, использующие эти бизнес-модели, не несут затрат на разработку своего программного обеспечения. Компания также заявила в отчете:

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

Существует множество бизнес-моделей для компаний с открытым кодом, которые можно найти в литературе.

См. Также

  • Портал бесплатного программного обеспечения с открытым исходным кодом
  • Принятие Linux
  • Проект GNU
  • Открытая система
  • Привязка к поставщику
  • Сетевой эффект

Источник: alphapedia.ru

Закрытый открытый код. Действительно ли Android — открытая ОС? Или Google морочит нам голову?

«Android — это опе­раци­онная сис­тема с откры­тым исходным кодом» — имен­но таким был глав­ный аргу­мент Google в поль­зу сво­ей опе­раци­онной сис­темы. «Кор­порация доб­ра» заяви­ла, что любой про­изво­дитель может не толь­ко исполь­зовать Android в сво­их смар­тфо­нах без вся­ких лицен­зион­ных отчисле­ний, но и менять его на свой вкус, вно­ся прав­ки в исходный код. Дол­гождан­ная откры­тая мобиль­ная опе­раци­онка? Как бы не так!

Open Source Android

Google всег­да позици­они­рова­ла Android как откры­тую аль­тер­нативу гос­подс­тво­вав­шим в момент ее появ­ления на рын­ке Windows Mobile и Symbian. Чуть ли не сра­зу пос­ле выпус­ка пер­вого смар­тфо­на для раз­работ­чиков ADP1 (T-Mobile G1) ком­пания выложи­ла в сво­бод­ный дос­туп поч­ти все исходни­ки опе­раци­онной сис­темы, начиная от модифи­циро­ван­ного ядра Linux и закан­чивая набором встро­енно­го ПО.

Впос­ледс­твии такая модель рас­простра­нения при­вела к появ­лению боль­шого чис­ла раз­личных модифи­каций не толь­ко от энту­зиас­тов, но и от ком­паний — про­изво­дите­лей смар­тфо­нов. Поч­ти каж­дый про­изво­дитель ста­рал­ся выделить свой смар­тфон сре­ди дру­гих и добав­лял в про­шив­ку допол­нитель­ный фун­кци­онал, изме­нял внеш­ний вид и поведе­ние сис­темы. Мно­жес­тво энту­зиас­тов взя­лись за раз­витие сво­бод­ных про­шивок на осно­ве офи­циаль­ных исходни­ков, и некото­рые из них дос­тигли в этом деле пре­вос­ходных резуль­татов (дос­таточ­но вспом­нить хотя бы CyanogenMod и Paranoid Android).

Paranoid Android — одна из самых известных модификаций Android

Ко­личес­тво модифи­каций рос­ло, про­изво­дите­ли все глуб­же внед­ряли в ОС собс­твен­ный фун­кци­онал, переса­жива­ли поль­зовате­лей на собс­твен­ные сер­висы, и в опре­делен­ный момент в Google приш­ли к выводу, что, если ничего не пред­при­нимать, они потеря­ют кон­троль над сво­ей же опе­раци­онной сис­темой. Пер­вым шагом в решении этой проб­лемы ста­ло доведе­ние Android до такого уров­ня, что­бы необ­ходимость в модифи­кации не воз­никала. Так появил­ся интерфейс Holo в Android 4.0, Project Butter в Android 4.1, штор­ка с панелью быс­трых нас­тро­ек и мно­жес­тво дру­гих модифи­каций, которые хотели видеть юзе­ры и поэто­му при­меня­ли в сво­их про­шив­ках про­изво­дите­ли смар­тфо­нов (с выходом Android L эта тен­денция ста­ла замет­на даже блон­динкам).

Вто­рой шаг зак­лючал­ся в соз­дании такой эко­сис­темы, при которой Android ста­новил­ся бы бес­полез­ным без сер­висов поис­ковика. Google с самого начала делила Android на две час­ти: AOSP, то есть та часть Android, исходни­ки которой находи­лись в откры­том дос­тупе, и так называ­емые Google Apps — набор зак­рытых при­ложе­ний, которые допол­няли AOSP и завязы­вали его на Google. Но если рань­ше Google Apps сос­тавля­ли лишь неболь­шое количес­тво при­ложе­ний (мар­кет, Gmail, YouTube. ), без которых мож­но было впол­не обой­тись, то сегод­ня это боль­шой кусок самой ОС.

Сей­час это не толь­ко мар­кет и Gmail, но и рабочий стол, кла­виату­ра, камера, Google Now вмес­те с поис­ковым движ­ком, диалер, при­ложе­ние для обме­на SMS (да, ско­ро оста­нет­ся толь­ко Hangouts). Это мно­гочис­ленные API, в том чис­ле для дос­тупа к кар­там, поис­ковику, движ­ку рас­позна­вания речи и рас­позна­вания лица. Это мно­жес­тво низ­коуров­невых биб­лиотек и сер­висов.

Как и рань­ше, в сос­таве AOSP сох­ранились откры­тые вари­анты этих ком­понен­тов, но подав­ляющее боль­шинс­тво из них более не раз­вива­ется. API уста­рели или фраг­ментар­ны, кла­виату­ра не под­держи­вает метод вво­да swype, камера не уме­ет делать сфе­ричес­кие панора­мы, экран бло­киров­ки не под­держи­вает фун­кцию рас­позна­вания лица, а поис­ковый дви­жок в пря­мом смыс­ле находит­ся в сос­тоянии раз­вития Android 1.5 — сто­ит толь­ко взгля­нуть на «заг­лушку» поис­ковика в некото­рых сво­бод­ных про­шив­ках. Это не что иное, как реали­зация поис­ка в пер­вых вер­сиях Android, интерфейс которо­го даже не при­вели к виду Android 4.X.

Читайте также:
Программа для определения машины

Но самое глав­ное, что сегод­ня Google Apps — это не прос­то при­ложе­ния, это часть API опе­раци­онной сис­темы, которые необ­ходимы вну­шитель­ному чис­лу при­ложе­ний сто­рон­них раз­работ­чиков. Без Google Apps перес­тают работать при­ложе­ния, исполь­зующие фун­кцию отоб­ражения положе­ния объ­ектов на кар­те, без Google Apps не работа­ют внут­рииг­ровые покуп­ки в при­ложе­ниях, фун­кции поис­ка, авто­риза­ция через акка­унт Google.

С каж­дым релизом Android сос­тав Google Apps все боль­ше рас­ширя­ется, а количес­тво воз­можнос­тей для соз­дания пол­ноцен­ного фор­ка ОС, сов­мести­мого со сто­рон­ними при­ложе­ниями, умень­шает­ся. Все боль­ше ком­понен­тов сис­темы «зак­рыва­ются», все мень­ше оста­ется путей для рас­ширения воз­можнос­тей сис­темы сооб­щес­тва­ми CyanogenMod и дру­гих сво­бод­ных про­шивок.

Хочешь, что­бы коман­да CyanogenMod добави­ла в Google Now воз­можность нас­трой­ки рас­позна­ваемых команд? Забудь. Хочешь swype в рас­ширен­ной кла­виату­ре CyanogenMod? Забудь. Хочешь рабочий стол в сти­ле Google Home, но с воз­можнос­тями нас­трой­ки? Забудь.

Забудь, забудь, забудь.

Набор библиотек, включенных в состав пакета gapps

Другие статьи в выпуске:

Хакер #187. Обходим Blizzard Warden

  • Содержание выпуска
  • Подписка на «Хакер» -60%

Почти все приложения пакета gapps можно найти в Google Play

Apache License Version 2.0

Но и это еще не все. На самом деле в Android изна­чаль­но заложе­но все, что­бы в любой момент сде­лать его зак­рытым. AOSP рас­простра­няет­ся под тре­мя откры­тыми лицен­зиями: GPL, BSD и Apache 2.0. Пер­вая пок­рыва­ет толь­ко ядро и очень неболь­шое количес­тво низ­коуров­невых ком­понен­тов (wpa_supplicant, нап­ример), вто­рая — боль­шую часть низ­коуров­невых ком­понен­тов сис­темы, третья — всю осталь­ную часть ОС (боль­ше 90% кода).

Во всех этих лицен­зиях есть сущес­твен­ные отли­чия, одна­ко для нас важ­но лишь то, что зак­рыть исходни­ки пов­торно не допус­кает толь­ко GPL. Код, лицен­зирован­ный под BSD и Apache, может быть без вся­ких пос­ледс­твий переве­ден в раз­ряд зак­рытых в любой момент. Имен­но поэто­му про­изво­дите­ли поч­ти всег­да откры­вают код ядра для сво­их смар­тфо­нов и никог­да не откры­вают код самой про­шив­ки. Они име­ют пра­во так пос­тупать.

И хоть в этой модели лицен­зирова­ния нет никако­го загово­ра (лицен­зия Apache выб­рана для того, что­бы про­изво­дитель мог вно­сить прав­ки, не раз­гла­шая при­меня­емых в них тех­нологий), она дает Google огромные воз­можнос­ти регули­рова­ния всей эко­сис­темы. Ком­пания уже исполь­зовала их для зак­рытия Android 3.X, для перево­да стан­дар­тных при­ложе­ний в раз­ряд зак­рытых (в рам­ках Google Apps), для выпус­ка Android L Preview.

В теории лицен­зии BSD и Apache могут поз­волить Google сде­лать гораз­до боль­ше. Нап­ример, раз­делить ОС на две вет­ки: пол­ноцен­ную зак­рытую и уре­зан­ную откры­тую. Или дер­жать код новой вер­сии ОС зак­рытым нас­толь­ко дол­го, нас­коль­ко взду­мает­ся.

Ну или наладить коопе­рацию с избран­ными про­изво­дите­лями устрой­ств с целью дать им воз­можность получить дос­туп к коду рань­ше дру­гих (в сущ­ности, с про­изво­дите­лями девай­сов линей­ки Nexus это уже работа­ет). Вари­антов мож­но при­думать мас­су — столь­ко, на сколь­ко хва­тит фан­тазии. Сом­нитель­но, что Google дей­стви­тель­но будет при­менять их на прак­тике, но все воз­можнос­ти для это­го у нее есть.

Closed doors development

Дру­гой спо­соб взять власть в свои руки, которым успешно поль­зует­ся Google, — это зак­рытая модель раз­работ­ки. Одна из клю­чевых осо­бен­ностей клас­сичес­кой модели Open Source зак­люча­ется Wow­се не в наличии исходни­ков как таковых, а в том, что на про­цесс раз­работ­ки про­дук­та может пов­лиять прак­тичес­ки любая заин­тересо­ван­ная сто­рона, глав­ное — что­бы она смог­ла убе­дить в необ­ходимос­ти изме­нений дру­гих раз­работ­чиков. В такой модели исходни­ки откры­ты на всем про­тяже­нии жиз­ни про­дук­та, а не толь­ко от релиза к релизу.

В слу­чае с Android вся власть скон­цен­три­рова­на в одних руках. Руках самой Google. Раз­работ­ка ведет­ся за зак­рытыми две­рями, и ник­то не зна­ет, в какую сто­рону Google решит раз­вивать сис­тему, ник­то не смо­жет пред­ложить свои идеи и ожи­дать, что они будут реали­зова­ны в сле­дующем релизе сис­темы. На бумаге, конеч­но, сущес­тву­ет спе­циаль­но соз­данный для этих целей аль­янс про­изво­дите­лей OHA, одна­ко, судя по все­му, он носит номиналь­ный харак­тер и нужен толь­ко для того, что­бы, спря­тав­шись от глаз пуб­лики, обсуждать тен­денции раз­вития с круп­ными про­изво­дите­лями гад­жетов.

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

www

Binary blobs

Драй­веры — еще одна серь­езная проб­лема «откры­тос­ти» Android. Железяч­ные ком­пании, кле­пающие чипы для мобиль­ной тех­ники, очень и очень неохот­но откры­вают драй­веры для сво­его обо­рудо­вания, прик­рыва­ясь прес­ловуты­ми ком­мерчес­кими тай­нами. Собс­твен­но, «неохот­но» здесь не сов­сем под­ходит, а луч­ше ска­зать — не откры­вают Wow­се.

В сред­неста­тис­тичес­ком Android зак­рытыми могут быть: драй­вер виде­оадап­тера, драй­вер камеры, драй­вер тачс­кри­на, драй­вер Wi-Fi-адап­тера и GSM-модуля, драй­веры всех дат­чиков и сен­соров, демон rild, отве­чающий за связь с сотовой сетью, биб­лиоте­ка OpenGL ES, биб­лиоте­ка вывода видео и аудио, биб­лиоте­ка уско­рения вос­про­изве­дения видео. Час­то это бинар­ные бло­бы, либо встро­енные в код ядра Linux, либо рас­простра­няемые в виде биб­лиотек без исходни­ков.

По боль­шому сче­ту это нор­маль­ная ситу­ация, к которой все при­вык­ли. Проб­лемы она соз­дает толь­ко тог­да, ког­да про­изво­дитель смар­тфо­на/план­шета отка­зыва­ется от под­дер­жки устрой­ства и оста­ется наде­ять­ся лишь на энту­зиас­тов, которые пор­тиру­ют новый Android на девайс годич­ной дав­ности. Дело в том, что внут­ренне Android меня­ется куда стре­митель­нее внеш­них изме­нений, видимых поль­зовате­лям. В сис­теме пос­тоян­но меня­ются внут­ренние API, заменя­ются низ­коуров­невые ком­понен­ты, объ­явля­ются уста­рев­шими час­ти сис­темы, появив­шиеся два релиза назад.

Как в такой ситу­ации, ког­да код боль­шинс­тва драй­веров и полови­ны сис­темных биб­лиотек зак­рыт, пор­тировать новую вер­сию Android? Пра­виль­но, кос­тыли и вся­чес­кие огра­ниче­ния фун­кци­ональ­нос­ти. Отсю­да и появ­ляют­ся нес­табиль­нос­ти и ошиб­ки в кас­томных про­шив­ках.

Многие из этих системных библиотек закрыты

Replicant

Собс­твен­но, все, что я ска­зал до это­го, лишь прис­казка, ну или вве­дение, которое дол­жно про­яснить смысл сущес­тво­вания таких про­ектов, как Replicant, F-droid, сто­рон­них реали­заций мар­кета и дру­гих «игру­шек для чудако­ватых гиков». Все эти про­екты нап­равле­ны в пер­вую оче­редь на избавле­ние Android от проп­риетар­ных ком­понен­тов и их замену на откры­тые ана­логи. Рядово­му поль­зовате­лю такая задача может показать­ся глу­пой тра­той вре­мени, но одно­го лишь фак­та обна­руже­ния бэк­дора в GSM-модуле смар­тфо­нов Samsung раз­работ­чиками Replicant дос­таточ­но для того, что­бы эта про­шив­ка име­ла пра­во на сущес­тво­вание (да, в Replicant бэк­дор заб­локиро­ван).

Итак, что же такое Replicant? Это про­шив­ка на базе Android, избавлен­ная от всех проп­риетар­ных ком­понен­тов, вклю­чая драй­веры, служ­бы и при­ложе­ния Google. В качес­тве базы про­шив­ки выс­тупа­ет CyanogenMod, а вмес­то Google Play исполь­зует­ся мар­кет F-droid, содер­жащий толь­ко откры­тые при­ложе­ния. Офи­циаль­но про­шив­ка дос­тупна для сле­дующих устрой­ств: HTC Dream / HTC Magic, Nexus One, Nexus S, Galaxy S/S2/S3, Galaxy Note, Galaxy Nexus, Galaxy Tab 2, Galaxy Note 2 и пол­ностью сво­бод­ного смар­тфо­на GTA04.

Про­ект пос­тоян­но раз­вива­ется и, кро­ме того, вклю­чен в спи­сок при­ори­тет­ных для Фон­да сво­бод­ного ПО (а зна­чит, получа­ет финан­сирова­ние), но раз­витие идет не так быс­тро, как мож­но было бы ожи­дать. Пос­ледняя вер­сия про­шив­ки базиру­ется на Android 4.2 (CyanogenMod 10.1), а часть фун­кци­она­ла недос­тупна. Нап­ример, в слу­чае со смар­тфо­ном Galaxy Nexus не работа­ют Wi-Fi, Bluetooth, NFC, 3D-уско­рение, камера и аппа­рат­ное декоди­рова­ние видео. Все эти ком­понен­ты рас­простра­няют­ся в виде зак­рытых драй­веров или заг­ружа­емых в перифе­рий­ные чипы firmware, раз­работать качес­твен­ные откры­тые ана­логи для которых пока не уда­лось.

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

В дан­ный момент Replicant, конеч­но же, не пред­назна­чен для при­мене­ния обыч­ными юзе­рами, но некото­рые из его ком­понен­тов уже переко­чева­ли в CyanogenMod и дру­гие про­шив­ки. Кро­ме того, наработ­ки про­екта могут быть исполь­зованы для соз­дания по‑нас­тояще­му откры­того и защищен­ного от прос­лушива­ния и управле­ния сов­ремен­ного смар­тфо­на (воз­можно, кто‑то соз­даст такой про­ект на Kickstarter). Пока же порт Replicant дос­тупен для единс­твен­ного откры­того, но без­надеж­но уста­рев­шего смар­тфо­на GTA04.

Читайте также:
Кербал спейс программ группы действий

F-Droid

В качес­тве пре­дус­танов­ленно­го мар­кета в Replicant исполь­зует­ся F-Droid, раз­работан­ный для пуб­ликации исклю­читель­но откры­тых при­ложе­ний. В нас­тоящее вре­мя в катало­ге F-Droid нас­читыва­ется более 1100 наиме­нова­ний, сре­ди которых мож­но най­ти такие извес­тные при­ложе­ния, как Adblock+, ADW.Launcher, AndroidVNC, Apollo, ConnectBot, FBReader, DashClock, Firefox, VLC, Wikipedia и мно­гие дру­гие.

Ко­неч­но, это не Google Play с его мил­лионом при­ложе­ний и даже не Amazon Appstore, но это по‑нас­тояще­му откры­тый мар­кет, в каж­дом при­ложе­нии которо­го мож­но быть уве­рен­ным на 100%. В дан­ный момент это все­го лишь воп­лощен­ная в реаль­ность идея иметь откры­тый Android с откры­тыми же при­ложе­ниями, но до репози­тори­ев нас­толь­ного Linux с их сот­нями тысяч откры­тых при­ложе­ний ему еще очень далеко.

F-Droid собственной персоной

Мобильные ОС с открытой моделью разработки

  • Firefox OS — опе­раци­онка раз­вива­ется коман­дой Mozilla, одна­ко весь про­цесс раз­работ­ки проз­рачен, и при желании на него мож­но пов­лиять.
  • Sailfish OS — раз­вива­ется коман­дой быв­ших сот­рудни­ков Nokia на осно­ве MeeGo, раз­работ­чики активно сот­рудни­чают с сооб­щес­твом, код открыт на всем про­тяже­нии раз­работ­ки.
  • Plasma Active — осно­вана коман­дой KDE (гра­фичес­кая сре­да для Linux/UNIX), код открыт на про­тяже­нии раз­работ­ки, при­нима­ются пред­ложения и код от незави­симых раз­работ­чиков.
  • Tizen — ОС от Intel и Samsung, раз­вива­емая под пок­ровитель­ством Linux Foundation, код открыт на про­тяже­нии раз­работ­ки, пат­чи при­нима­ются на осно­ве голосо­вания учас­тни­ков раз­работ­ки.
  • CyanogenMod — репози­торий, в котором идет раз­витие про­шив­ки, открыт для всех, пат­чи от сто­рон­них раз­работ­чиков при­нима­ются с боль­шой охо­той, решение о перера­бот­ке ком­понен­тов про­шив­ки при­нима­ется путем голосо­вания.

info

Наз­вание Replicant — это отсылка к филь­му/кни­ге Blade Runner («Бегущий по лез­вию»), где так име­нова­ли андро­идов.

info

В 2011 году кор­порация Google подари­ла раз­работ­чикам Replicant два смар­тфо­на Google Nexus One, что­бы пос­ледние смог­ли тес­тировать свою про­шив­ку, не опа­саясь «убить» свои собс­твен­ные смар­тфо­ны.

MicroG

А как быть с несов­мести­мос­тями, выз­ванны­ми отсутс­тви­ем пакета при­ложе­ний и биб­лиотек Google? В Replicant дан­ная проб­лема не решена вооб­ще, но это не вызыва­ет слож­ностей, так как при­ложе­ния из F-Droid не зависят от проп­риетар­ных ком­понен­тов Google. Для всех осталь­ных (тех, кто исполь­зует, нап­ример, 1Mobile Market) пред­лага­ется откры­тая аль­тер­натива gapps под наз­вани­ем MicroG от незави­симо­го раз­работ­чика mar-v-in с форумов XDA-Developers.

MicroG сос­тоит из нес­коль­ких ком­понен­тов. Клю­чевой из них — GmsCore, откры­тая реали­зация Google Play Services, фрей­мвор­ка, который поз­воля­ет при­ложе­ниям исполь­зовать фун­кции Google Play. Вто­рой ком­понент — Maps API v2, реали­зация API для дос­тупа к Google Maps, которая обма­ныва­ет при­ложе­ния, под­совывая им кар­ты OpenStreetMap (которые зачас­тую даже луч­ше гуг­лов­ских). В сос­тав так­же вхо­дят сер­вис NetworkLocationProvider, поз­воля­ющий опре­делять мес­тополо­жение по IP-адре­сам (исполь­зует­ся откры­тая база), FakeStore, пред­став­ляющий собой пус­тышку, зас­тавля­ющую при­ложе­ния думать, что на устрой­ство уста­нов­лен Play Store, и даже откры­тый ана­лог самого магази­на при­ложе­ний под наз­вани­ем Phonesky (в ори­гина­ле у гуг­ла кли­ент Play Store носит то же наз­вание).

Пос­ледний, одна­ко, исполь­зовать не рекомен­дует­ся, так как Google явно зап­реща­ет работать со сво­им репози­тори­ем при­ложе­ний сто­рон­ним кли­ентам. В качес­тве кары за это может быть заб­локиро­ван акка­унт. В осталь­ном же MicroG — это прек­расная аль­тер­натива для тех, кто не хочет свя­зывать с себя с Google и АНБ, но вынуж­ден исполь­зовать при­ложе­ния, завязан­ные на его сер­висы.

Выводы

Мо­дель раз­вития Android — это поис­тине пот­ряса­ющая наход­ка Google. Они умуд­ряют­ся успешно раз­вивать сис­тему, которая при внеш­ней откры­тос­ти вклю­чает в себя мно­жес­тво проп­риетар­ных ком­понен­тов, раз­вива­ется единс­твен­ной ком­пани­ей за зак­рытыми две­рями и пол­ностью ей под­чинена. Я ни в коем слу­чае не пыта­юсь очер­нить Google и ее под­ходы к раз­витию Android. В кон­це кон­цов, эта ком­пания соз­дала пот­ряса­ющую опе­раци­онную сис­тему, в раз­витие которой были вло­жены мил­лионы дол­ларов, и все это дос­талось нам задар­ма вмес­те с исходным кодом. Но, как говорит­ся, если уж наз­вался конем — полезай в стой­ло.

Евгений Зобнин

Редактор рубрики X-Mobile. По совместительству сисадмин. Большой фанат Linux, Plan 9, гаджетов и древних видеоигр.

Источник: xakep.ru

Какая разница между программами с открытым исходным кодом и закрытым исходным кодом?

Открыть исходный код для всех, но юридически ограничить его изменение и использование. Открыть исходный код для ограниченного круга лиц — аудиторов, представителей государственных органов, ключевых заказчиков и так далее.

Что значит с открытым исходным кодом?

В этой статье разберем, что означает термин «открытый код». Под открытым кодом (от англ. opensource) понимают характеристику какого-либо продукта, который может свободно распространяться. Это означает, что лицензия не должна ограничивать продажу и распространение.

Что значит открытый и закрытый код?

Закры́тый исхо́дный код — программа, лицензия которой не подходит под определение открытого ПО. Как правило, это означает, что распространяются только бинарные (скомпилированные) версии программы и лицензия подразумевает отсутствие доступа к исходному коду программы, что затрудняет создание её модификаций.

Что такое библиотека с открытым исходным кодом?

open source software) — это программное обеспечение с открытым исходным кодом. Исходный код создаваемых программ открыт, то есть доступен для просмотра и изменения. Это позволяет использовать уже созданный код для создания новых версий программ, для исправления ошибок и, возможно, помочь в доработке открытой программы.

Что такое приложение с открытым кодом?

Несколько наиболее популярных компьютерных программ, созданных при помощи открытого кода (open source — программы, чей код доступен для изучения, просмотра и даже изменения; разработчики могут приспосабливать и заимствовать код для создания новой программы), содержат уязвимости, которые злоумышленники могут .

Какие операционные системы распространяются с открытым исходным кодом?

  • WordPress;
  • Joomla!;
  • Drupal;
  • PhpBB;
  • Opencart;
  • Prestashop.

Что вы понимаете под платформой с закрытым исходным кодом?

Программное обеспечение с закрытым исходным кодом (closed source software, проприетарное ПО) — это ПО, все права на использование, изменение и копирование которого принадлежат его автору. В общем случае к программам с закрытым исходным кодом относят все разработки, не удовлетворяющие требованиям к свободному ПО.

Чем отличается закрытое несвободное открытое и свободное программное обеспечение?

Закрытое ПО – это модель, при которой автор (или иной правообладатель) удерживает за собой ряд прав. . Открытое ПО – это модель, при которой дается гарантия свободно распространять копии программы вместе с исходным кодом, изменять программу или использовать ее части в новых открытых разработках [3].

Для чего нужен исходный код страницы?

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

Как работает программный код?

Исхо́дный код (также исхо́дный текст) — текст компьютерной программы на каком-либо языке программирования. Исходный код либо транслируется в исполняемый код при помощи компилятора, либо исполняется непосредственно по тексту при помощи интерпретатора. .

Можно ли использовать только программное обеспечение с открытым исходным кодом в школе дома и в офисе?

Открытое программное обеспечение может свободно устанавливаться и использоваться во всех школах, офисах, вузах, на всех личных компьютерах и во всех государственных, бюджетных и коммерческих организациях и учреждениях России и в странах СНГ, согласно открытому лицензионному соглашению GNU (GPL).

Как называется бесплатное программное обеспечение?

Так появился термин freeware (бесплатное ПО), а для именования свободного и открытого программного обеспечения — термин FLOSS (Free/Libre and Open Source Software). Однако Фонд свободного программного обеспечения рекомендует именовать свободное программное обеспечение как free software.

Что такое проприетарные лицензии?

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

Какие приложения имеют открытый исходный код?

  • FireFox.
  • Google Chrome.
  • Kodi (XBMC)
  • Lawnchair Launcher.
  • Open Camera.
  • Phonograpf и Shuttle.
  • QKSMS.
  • Simple Mobile Tools.

Какой графический редактор является программным обеспечением с открытым исходным кодом?

1. LibreOffice. Самая популярная свободная офисная программа среди продуктов с открытым исходным кодом. В ней есть текстовый процессор Writer, программа для обработки таблиц, презентаций, рисования, баз данных, работы с формулами и графиками.

Что относится к свободному программному обеспечению?

Например, к свободному программному обеспечению относится операционная система Android, веб-браузер Chrome (точнее, он основывается на свободном браузере Chromium), веб-браузер MozillaFirefox.

Источник: openvorkuta.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru