Успех программного обеспечения с открытым кодом весьма заметен. Оно не обошло стороной даже крупных производителей коммерческих программ. Компании IBM, Hewlett-Packard, Oracle и Microsoft признают его влияние и в некоторых случаях перенимают его методы. Похоже, что большинству компаний, в структуре которых имеется ИТ-служба, уже достаточно хорошо знакомы продукты с открытым кодом, а зачастую они и активно используют их.

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

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

Вернемся назад в 1997 год. Талантливый разработчик операционной системы Linux Брюс Перенс составляет документ, связанный с подготовкой и распространением дистрибутива версии Debian Linux. Позднее он удалил все упоминания о Debian и представил концепцию, известную сегодня под названием The Open Source Definition. Помимо всего прочего в документе Definition говорилось, что программное обеспечение с открытым кодом должно распространяться без каких-либо отчислений разработчикам, распространители обязаны обеспечить всем желающим бесплатный доступ к исходному коду программ и все дальнейшие доработки и модернизированные варианты программ тоже должны поставляться на этих же условиях.

По сути движение сторонников программного обеспечения с открытым кодом является близким родственником инициативы Free Software Movement, предложенной в 1983 году Ричардом Столлманом. Главной ее целью являлось бесплатное распространение программного обеспечения, освобождение его от стандартных ограничений коммерческих программ. Правила распространения бесплатного ПО регламентируются лицензией General Public License (GPL), которая в октябре 2006 года была утверждена в своей третьей редакции.

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

Почему именно программы с открытым кодом?

Первая причина, по которой компании обращают внимание на программное обеспечение с открытым кодом, очень проста - это цена. И показатели окупаемости инвестиций в модель с открытым кодом наглядно это демонстрируют. ПО с открытым кодом можно загружать, устанавливать и использовать совершенно бесплатно. Поначалу низкие затраты привлекали разработчиков, желающих опробовать новые инструментальные средства или заняться проектированием новых приложений, не вкладывая в это никаких средств. Открывающаяся свобода способствовала тому, что многие из них стали поддерживать движение сторонников ПО с открытым кодом. В результате наряду с тысячами других проектов в мире стало появляться ПО с открытым кодом промышленного уровня, например, операционная система Linux, Web-сервер Apache, сервер приложений Java JBoss и среда разработки Eclipse.

В конце 1990-х годов на программы с открытым кодом наконец обратило внимание и руководство предприятий. В условиях постоянного сокращения бюджетов ИТ-служб разработчики хвастались качеством и экономией, достигаемой при использовании ПО с открытым кодом, и во многих компаниях стали всерьез задумываться о применении программных компонентов с открытым кодом при реализации корпоративных проектов. Первыми крупными предприятиями, которые стали внедрять у себя программное обеспечение с открытым кодом, были компании The Weather Channel, Cendant Travel, Employease и Sabre.

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

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

Причины отказа от ПО с открытым кодом

Аргументы против программного обеспечения с открытым кодом, как правило, легко пересчитать по пальцам.

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

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

    Разработка нового функционала занимает больше времени по сравнению с коммерческим программным обеспечением. На самом деле это во многом зависит от конкретного вида используемого вами ПО. Web-браузер Firefox является лучшим примером того, насколько быстро программное обеспечение с открытым кодом можно приспособить к нуждам пользователей. Можно вспомнить и о том, насколько оперативно разработчики Linux организовывали поддержку новых технологий, в частности портов USB. В этом отношении Linux практически не отставала от Windows. Но что касается корпоративного ПО, встраивание механизмов поддержки новейшей видеоплаты или аудиочипа играет здесь гораздо менее важную роль по сравнению с обеспечением высокой устойчивости и производительности.

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

С чего начать?

Сегодня в виде продуктов с открытым кодом представлены почти все разновидности ПО делового назначения, начиная с серверов электронной почты и заканчивая системами VoIP. Многие компании в первую очередь обращают внимание на Web-приложения, где есть продукты, существующие на протяжении достаточно длительного времени и уже успевшие доказать свою состоятельность. Обычно упоминают о стеке LAMP (Linux, Apache, MySQL и PHP, Perl или Python в зависимости от конкретной ситуации). Широкое распространение получила Unix-подобная операционная система Linux. Одним из наиболее популярных Web-серверов сегодня является Apache. Система управления базами данных MySQL успешно конкурирует с дорогостоящими коммерческими продуктами. А языки программирования и сценариев PHP, Perl и Python находят широкое применение в качестве средств разработки Web-приложений с открытым кодом. Web-сайты с открытым кодом на основе Java часто опираются на сервер приложений JBoss. Познакомившись поближе с инструментальными средствами с открытым кодом, выявив сходство и различия между ними и коммерческими продуктами, вы откроете для себя и другие возможности. Возможно, удивит и то, что ваши разработчики время от времени на свой страх и риск обращаются к тем или иным продуктам с открытым кодом.

Серверы приложений, конечно, хорошо, но что можно сказать о ПО с открытым кодом для настольных компьютеров?

Конечные пользователи довольно часто применяют различные инструментальные средства с открытым кодом, предназначенные для настольных компьютеров. Ярким примером такого решения является Web-браузер Mozilla Firefox. Офисному пакету Sun OpenOffice отдельные государственные и коммерческие организации отдают предпочтение перед Microsoft Office. Но хотя некоторые игроки и отваживаются погрузиться в неизведанное, устанавливая на своих настоль ных компьютерах операционную систему Linux, Windows продолжает сохранять безусловно доминирующее положение. Дружественные по отношению к конечному пользователю версии Linux (например, LinSpire) не могут нарушить сложившееся положение, потому что обучение пользователей требует времени и денег. Кроме того, большинство коммерческих программных пакетов - от которых зависят многие компании - разрабатываются в первую очередь для Windows и только потом для Linux (если, конечно, версия для Linux вообще выходит в свет).

Можно ли продать продукты с открытым кодом?

Да, конечно, но правила Open Source Initiative запрещают чинить препятствия в продаже вашего кода и всем остальным. И все же многие компании находят способы зарабатывать на продуктах с открытым кодом. Многие, помимо собственно кода, предлагают услуги корпоративной поддержки, которые весьма охотно покупаются компаниями. Другие поставляют два варианта программного кода: один в открытой и бесплатной форме, а другой, включающий в себя дополнительные полезные функции, содержит закрытые компоненты и должен оплачиваться клиентами. Подобная смешанная модель становится все более популярной. Ее активно используют такие компании, как SourceFire, SugarCRM, Alfresco и ряд других.

Другие ресурсы с открытым кодом

Множество программ с открытым кодом можно найти в Internet:

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

    SourceForge. Гигантский сайт для разработчиков программного обеспечения с открытым кодом, объединяющий тысячи проектов с открытым кодом. Часть из них продолжает развиваться, а другие уже прекратили свое существование.

Ресурсы с открытым кодом - официальные и неофициальные

    Open Source Initiative. Некоммерческая организация, считающая основной своей задачей дальнейшее развитие программного обеспечения с открытым кодом и финансируемая рядом игроков, которые уже давно действуют на этом поле.

    Open Source Technology Group. Пожалуй, ведущий в мире проводник технологий с открытым кодом. Именно этому объединению принадлежит сайт новостей Slashdot, а также ресурсы SourceForge и FreshMeat.

    Open Source Risk Management. Предлагает механизмы, обеспечивающие соответствие нормативным требованиям.

    Open Source Development Labs. Организация, главной целью которой является продвижение операционной системы Linux в среде корпоративных клиентов.

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

Что можно считать открытым кодом?

Практически весь софт до конечного пользователя доходит уже как готовое программное обеспечение. Это вполне работоспособные программы с приятным интерфейсом и удобные в использовании. Если код этого продукта открыт, то любой может его изменить, предложить свои варианты исправления найденных ошибок или внести какое-то новшество. Таким образом, качество этого продукта со временем улучшается. Примерами операционных систем с открытым кодом являются Linux , Unix , Ubuntu .

Все знакомы с Microsoft Office , аналогом которого, но уже с открытым кодом, является Open Office . Браузеры Mozilla Firefox и Google Chrome также являются программным обеспечением с открытым исходным кодом. Подобных продуктов очень много, многие используют большое количество софта и не подозревают, что что-то из этого может быть Open Source программой.

Особенности Open Source

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

Лицензия Open Source программ

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

Плюсы и минусы Open Source программ

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

Вторым важным плюсом является то, что мы можем модернизировать данные программы . Хороший программист, разобравшись в коде, может добавить в программу новые опции или улучшить работу уже имеющихся функций. Например, пользователь MacOS не может изменить свою операционную систему, в отличие от Linux , которую каждый может не только настроить по своему усмотрению, но и добавить какие-либо индивидуальные функции. В итоге у него получится совершенно новый продукт, которым очень удобно пользоваться. Если получившаяся программа действительно хороша, то ее можно запатентовать и даже продать (!)

Еще одним неоспоримым плюсом программ является их защищенность от вирусов. Практически все вирусы пишутся под приложения Windows , а вредоносных программ на тот же Linux ничтожно малое количество. Таким образом, вероятность получить вирус, используя операционную систему с открытым кодом, очень мала.

Сегодня многие организации переходят на использование программ именно с открытым исходным кодом. Это позволяет снизить расходы и минимизировать вероятность взлома системы.

Но у любой медали, как известно, имеется две стороны, расскажем о минусах Open Source программ.

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

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

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

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

Появление программ данного класса связано с идеей создания ПО, свободного от ограничений в обороте. В 1998 г. по предложению американских разработчиков Брюса Перенса и Эрика Рэймонда создана организация "Инициатива открытых кодов"

(Open Source Initiative, OSI). Это движение разработало и опубликовало "Определение программного обеспечения с открытым программным кодом".

Лицензия программ с открытым кодом предусматривает следующие правомочия:

  • 1) на доступ к исходному коду;
  • 2) на изменение программы для ЭВМ;
  • 3) на распространение измененной программы на тех же условиях, на основании которых данное программное обеспечение было получено лицензиатом;
  • 4) лицензиата на использование программы для ЭВМ по назначению;
  • 5) на дальнейшее распространение пользователем программы без уплаты отчислений и вознаграждений.

В качестве дополнительных правомочий лицензии программ с открытым кодом могут содержать:

  • 1) описание изменений, производимых каждым из лицензиатов;
  • 2) отказ от предоставления гарантий,
  • 3) отказ от ответственности за убытки;
  • 4) регулирование патентных вопросов;
  • 5) положения о совместимости данной лицензии с другими лицензиями;
  • 6) регулирование авторского права на текст открытой лицензии;
  • 7) указание на произведенные изменения в полученном открытом коде;
  • 8) положения о применимом праве и компетентном суде.

Однако это не означает, что лицензия на программу с открытым кодом обязательно предоставляется бесплатно, могут быть варианты и платного предоставления (например, платная сервисная поддержка или коммерческая лицензия для использования свободного кода для разработки программного обеспечения). Использование программы с открытым кодом означает, что код открыт, его можно переработать и на основании такого кода создать свою программу – "производное произведение". Программное обеспечение, пользователям которого не предоставляется право на модификацию открытого кода, является несвободным – независимо от любых других условий.

С января 2012 г. в Российской Федерации впервые введено понятие программы с открытым кодом, как программного обеспечения, распространяемого на условиях простой (неисключительной лицензии) или исключительной лицензии, которые предоставляют пользователю доступ к исходным кодам программы .

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

Концепция свободного программного обеспечения основывается на четырех основных свободах:

  • 1) свобода воспроизводить на компьютере и запускать программу для любых целей;
  • 2) свобода изучения работы программы и адаптации ее к нуждам пользователя;
  • 3) свобода тиражировать и распространять полученные копии свободного программного обеспечения;
  • 4) свобода улучшать программу, т.е. модифицировать ее и распространять в модифицированном виде.

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

Существуют следующие виды лицензий с открытым программным кодом:

  • – General Public License (GPL);
  • – Apache Software License;
  • – лицензия Berkeley Software Distribution (BSD);
  • – лицензии Massachusetts Institute of Technology (MIT);
  • – Mozilla Public License (MPL) и др.

Общий смысл GPL, BSD, MIT заключается в расширении полномочий пользователя программы и одновременном возложении на него некоторых обязанностей, которые не свойственны лицензиям, предусмотренным законодательствами РФ и зарубежных стран. Но в настоящее время разработка такого программного обеспечения стала поддерживаться и в Российской Федерации. Кроме того, приняты Концепция об административной реформе в Российской Федерации и Федеральная целевая программа "Электронная Россия".

Перечислим главные характеристики открытого программного обеспечения .

1. Свободное распространение

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

2. Исходный код

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

  • 3. Вторичные продукты. Лицензионное соглашение должно давать право на модификацию и разработку собственных производных продуктов, на распространение программного обеспечения на тех же условиях, что и лицензия исходной программы.
  • 4. Сохранение авторского исходного кода. Лицензионное соглашение может ограничивать распространение продукта, исходный код которого был модифицирован третьими лицами. Соглашение может допускать распространение прикрепленных файлов с исходным кодом для модификации программы во время создания. Лицензия должна давать право на распространение собственной программы, созданной путем модификации исходного кода. Лицензионное соглашение может содержать требования об изменении названия программного обеспечения или номера версии производных продуктов.
  • 5. Никаких ограничений в отношении частных лиц или групп пользователей. Лицензионное соглашение должно быть доступно всем обратившимся.
  • 6. Никаких ограничений в отношении области применения. Лицензионное соглашение не должно содержать ограничения на использование программы в определенной области деятельности, например в коммерческой или в области других исследований.
  • 7. Распространение лицензии. Права, прилагающиеся к программе, должны распространяться на всех, кто ее использует. Дополнительная лицензия для этого не требуется.
  • 8. Лицензионное соглашение не должно быть специальным для части продукта. Права, получаемые с комплексом ПО, распространяются на каждый отдельно взятый элемент комплекса. Если программа взята из дистрибутива и используется вне его, на программу распространяются условия лицензионного соглашения дистрибутива.
  • 9. Лицензионное соглашение не должно содержать ограничений в отношении других ПО , т.е. программных средств, которые распространяются вместе с лицензионным ПО. В лицензии также не должно быть требований об открытости программных средств, не создающихся по данному лицензионному соглашению.
  • 10. Лицензия должна быть технологически нейтральной. Условия лицензионного соглашения не могут быть основаны на отдельных технологиях и стиле интерфейса.

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

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

В 2006 г. в Российской Федерации во исполнение приказа Мининформсвязи России от 29.06.2006 № 83 "О мероприятиях Мининформсвязи России на 2006 год по реализации основных положений Послания Президента Российской Федерации Федеральному Собранию Российской Федерации" был разработан план мероприятий по содействию разработке, а также использованию в органах государственной власти свободного ПО (с открытыми исходными кодами). План содержал следующие мероприятия:

  • 1) разработка требований и рекомендаций по использованию открытых стандартов и спецификаций при разработках программ для ЭВМ для государственных и муниципальных нужд;
  • 2) оценка экономической эффективности внедрения ИСО/МЭК 26300:2006 (формат открытого документа для офисных применений);
  • 3) организация участия представителей администрации связи Российской Федерации в международных организациях по стандартизации в сфере информационных технологий, а также содействие и координация участия представителей российских компаний в международных организациях по стандартизации (в случае если участие государственных органов в таких организациях не предусмотрено);
  • 4) разработка и внедрение порядка получения (включая определение объема и оценку) и схемы управления правами на программное обеспечение для ЭВМ, получаемыми заказчиками в результате выполнения работ для государственных и муниципальных нужд;
  • 5) совершенствование механизмов мониторинга условий конкурсов в целях контроля обеспечения разработчикам различного программного обеспечения равных рыночных условий;
  • 6) разработка концепции и плана мероприятий в целях повышения уровня профессионального образования и подготовки пользователей в сфере инфокоммуникационных технологий;
  • 7) разработка перечня типов (разновидностей) свободных программ для ЭВМ, целесообразность и обоснованность преимущественного использования которых доказана мировой практикой и (или) признается значительным количеством участников рынка, а также разработка для различных целей, в том числе для целей стандартизации, иных классификаторов;
  • 8) разработка концепции и плана мероприятий по развитию в Российской Федерации, в том числе для государственных и муниципальных нужд, сервис-ориентированной модели распространения программ для ЭВМ.
  • антикоррупционность;
  • безопасность;
  • защита национальных интересов;
  • дружественность к гражданам;
  • легкость адаптации;
  • экономическая выгода.

Качество таких программ для ЭВМ соизмеримо с коммерческими программами. Связано это с тем, что данное программное обеспечение тестируется, изменяется, улучшается всеми желающими, поэтому число разработчиков, трудящихся над улучшением программы, приравнивается к штату разработчиков коммерческого обеспечения с закрытым кодом (а в некоторых случаях значительно превышает их число).

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

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

Постановлением Правительства РФ от 18.10.2007 № 1447-р закрепляется право использования в школах Российской Федерации любого ПО с открытым программным кодом. В 2009 г. Федеральная служба судебных приставов отчиталась о внедрении ПО с открытым кодом – Open Office, с целью реализации государственной политики в области использования свободного ПО. "В апреле – мае 2009 г. проведены сеансы видеоконференцсвязи с руководителями территориальных органов ФССП России с использованием свободного программного обеспечения.

В целях своевременного и регулярного размещения информации на официальном интернет-сайте центрального аппарата ФССП России, систематического информирования граждан и организаций о деятельности ФССП управлением информационных технологий проведены работы по доработке программной платформы и дизайна сайта, что позволило значительно расширить его функциональные возможности сайта, повысить информативность и посещаемость" .

Концепция развития свободного ПО в Российской Федерации предполагала создание до 2010 г. следующих продуктов:

  • 1) стандартных комплексных офисных решений для государственных гражданских служащих, а также работников бюджетной сферы;
  • 2) стандартных решений для обеспечения работы образовательных учреждений;
  • 3) ПО для пунктов коллективного доступа к сети Интернет;
  • 4) ПО для интернет-сайтов государственных услуг;
  • 5) интеграционной платформы для целей электронного правительства;
  • 6) защищенных решений для критически важных объектов;
  • 7) развитие сервис-ориентированной модели распространения программ для ЭВМ.

В настоящее время многое из заявленных пунктов выполнено. Таким образом, специфика лицензионного соглашения на использование ПО с открытым программным кодом определяется объемом передаваемых исключительных прав лицензиату. Важно отметить, что такие лицензионные договоры никак не влияют на личные неимущественные права авторов программ, более того, они в большей степени защищают такие права. Данные программы обладают большей надежностью, безопасностью, так как код программы можно проверить и в случае необходимости перепрограммировать, что в рамках выполнения Доктрины информационной безопасности Российской Федерации , а также Стратегии национальной безопасности Российской Федерации до 2020 года является основополагающей задачей обеспечения национальной безопасности. В Стратегии национальной безопасности к средствам обеспечения национальной безопасности отнесены в том числе технологии, а также технические, программные, лингвистические, правовые, организационные средства, включая телекоммуникационные каналы, используемые в системе обеспечения национальной безопасности для сбора, формирования, обработки, передачи или приема информации о состоянии национальной безопасности и мерах по ее укреплению.

Использование программ с открытым кодом на территории РФ позволит не только разнообразить программы для ЭВМ, но и увеличить число разработчиков, уменьшив тем самым количество монополистов. Кроме того, это символизирует развитие качественно новых явлений во взаимоотношениях автора программы для ЭВМ и пользователя программного обеспечения с открытым кодом на территории РФ. Положительным фактором является и то обстоятельство, что территориальный признак, применяемый законом для исключительных прав, отсутствует в программах с открытым кодом. Таким образом, использование такого класса программ на территории РФ будет способствовать устранению многих правонарушений в области авторского права.

С введением в 2012 г. в Национального стандарта РФ ГОСТ Р 54593-201 свободное программное обеспечение является безопасной, надежной и финансово-привлекательной платформой для построения информационных систем в корпорациях и государственном секторе. Свободное программное обеспечение обеспечивает: технологическую независимость разработки и использования программного обеспечения от монополиста; независимость в выборе аппаратной платформы; низкую начальную стоимость оборудования; раннее обнаружение дефектов в программном обеспечении и возможность быстрого их исправления; отсутствие обязательной платы за право использования продуктов.

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

Итак, раскроем правомочия, передаваемые по различным видам лицензий на программы для ЭВМ с открытым программным кодом.

  • См.: Национальный стандарт Российской Федерации ГОСТ Р 54593 201 "Информационные технологии. Свободное программное обеспечение. Общие положения", утвержденный приказом Министерства промышленности и торговли РФ и Федерального агентства по техническому регулированию и метрологии от 06.12.2011 № 718-ст.
  • Утверждена Президентом РФ 9 сентября 2000 г.: см. на сайте МИД РФ mid.ru/ns-osndoc.nsf/d06bd3f5303124fe432569fa003a70ff/4db27 49a4b55f02f432569fb004872a4?OpenDocument.
  • Указ Президента РФ от 12.05.2009 № 537 "О Стратегии национальной безопасности Российской Федерации до 2020 года".

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

Бесплатное программное обеспечение (Freeware)

Впервые термин «freeware» появился в 1982 году, его зарегистрировал в качестве товарного знака американский программист Андрю Флеглеман (Andrew Flegleman) для разработанной им коммуникационной программы.

Бесплатно можно скачать:

  • бета-версии программ
  • упрощенные аналоги полноценных пакетов
  • драйверы
  • программы, использование которых подтолкнет к приобретению дополнительных ресурсов.

Достоинство freeware одно - не надо платить деньги, недостатков немного больше:

Практически любая коммерческая программа под Windows имеет свои бесплатные аналоги:

  • Архиваторы (7-Zip)
  • ПО для работы с FTP (FileZilla)
  • Антивирусы (CureIt, Avast!, AVZ)
  • Текстовые редакторы (Notepad++)
  • Браузеры (Mozilla, Firefox, Opera, GoogleChrome)

Бесплатные приложения под Windows доступны в Интернете на сайтах разработчиков. После скачивания архива и установки ПО на компьютере автоматически формируются все необходимые для нормальной работы приложения каталоги и файлы в них. Бесплатные приложения для Android и iOS можно скачать при помощи маркетплейсов PlayStore и AppStore.

Скачивая бесплатные программы, вы рискуете столкнуться с эффектом «троянского коня»: разработчик включает в бесплатно распространяемый пакет другие программы, которые автоматически размещаются на компьютере при установке пакета. Не всегда это ПО безопасно!

Особое место в категории бесплатных программ занимают проекты open source. Часть из вышеперечисленного ПО (Mozilla Firefox, 7-Zip, FileZilla, Notepad++, Miro, VLC, Apache OpenOffice, LibreOffice, Media Player Classic, GIMPshop, Google Chrome) относится именно к этой категории.

Open Source ПО

Программное обеспечение может распространяться с закрытым исходным кодом (Microsoft Windows, MS Office – проприетарное ПО), и с открытым кодом (open source). Появившийся в 1984 году термин «free software» (свободное программное обеспечение) относится к ПО, которое можно бесплатно получить, модифицировать, используя доступные исходные тексты программ, и распространять дальше.

Программы распространяются по лицензии GNU GPL и должны удовлетворять следующим требованиям:

  1. Нет ограничений на использование ПО в определенных областях деятельности.
  2. Исходный код распространяется вместе с исполняемым модулем или его можно получить из доступного источника бесплатно/по умеренной цене. Код должен быть читаемым.
  3. Модифицированная версия распространяется на общих условиях. Допускается изменение названия или номера версии.
  4. Программа доступна всем желающим.

В 1998 году было введено понятие «open source software» – ПО с открытым кодом. Формально, все свободное программное обеспечение можно считать ПО с открытым кодом. Принято относить программы open source к бесплатным, хотя не запрещено их использовать в коммерческих целях. Обычно, оно распространяется по лицензии Apache 2.0. Но есть и другие варианты (подробнее о лицензиях в мире open source см. ).

Преимущества работы с проектами open source:

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

Недостатки:

  • для компиляции могут потребоваться дополнительные библиотеки, которые придется искать в Интернете
  • если возникнут вопросы при использовании этого ПО, ответ нужно будет искать на форумах в Интернете.

Концепция Open Source основана на повышении надежности и качества ПО за счет обнаружения и исправления ошибок многими пользователями. Находящийся в открытом доступе open source проект постоянно тестируется огромным количеством программистов.

Давно широко внедряет технологию «открытого кода» компания Google. Все ее проекты такого типа, их примерно 200 (изначально и Kubernetes был разработан здесь, а затем передан под управление Cloud Native Computing Foundation), доступны на портале компании GOOGLE OPEN SOURCE. На ресурсе лежат не только коды программ, но и документация по их использованию и поддержке. Насколько широко можно использовать открыто предоставляемый код - указано в лицензии, обычно непосредственно размещаемой в тексте программы.

Компания Apple, открыв исходные коды языка Swift, пытается увеличить количество доступных приложений для Apple. Текущая версия языка на настоящий момент имеет ограничения: чтобы загрузить свою разработку на AppStore, придется приобрести лицензированный Swift. Вся необходимая по языку информация размещена на сайте swift.org и в облачном хранилище GitHub. Выпущен релиз Swift под Linux.

Условно-бесплатное программное обеспечение

Некоторые программы, распространяемые бесплатно, имеют ограничения:

  • по сроку работы
  • по количеству запусков
  • по функциональности

Для ограничения срока работы и числа запусков используется trial-защита – специальные счетчики. В качестве ограниченного по функционалу ПО предоставляют демо-версию или версию с ограниченным сервисом. Иногда разработчик вставляет в код программы рекламу, затрудняющую работу с пакетом. Чтобы избавиться от рекламного баннера, придется заплатить.

Примеры программ с лицензией shareware:

  • Архиватор WinRAR (30 дней)
  • Антивирус Nod32 (30 дней)

AcrobatReader – пример программы, ограниченной по функционалу. Эта программа, нижний сегмент пакета AdobeAcrobat, разрешает только просмотр PDF-файлов. Для полноценной работы с файлами таких типов необходимо купить более полную версию Acrobat’a.

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

Например, компания Oracle бесплатно позволяет скачивать дистрибутив СУБД и утилиты для работы с ней. При этом накладываются ограничения на объем массива обрабатываемых данных. Но для изучения принципов работы с базой данных и отработки навыка написания процедур этот вариант работы с ПО подходит.

Собственно, скачивая «исходники» открытого ПО - open source - вы должны быть готовы понести определенные затраты, чтобы его использовать. Не надо приобретать лицензию, но потребуется оплатить работу программистов, которые будут создавать на его основе программные продукты под определенную задачу.

Выводы

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

Устанавливая бесплатное программное обеспечение, обращайте внимание на дату его создания/обновления и обязательно проверяйте ПО на наличие вирусов. Такими программами пользуются как IT-специалисты, так и пользователи ПК разного уровня.

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

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

Программное обеспечение с открытым исходным кодом (Open source) - способ разработки ПО, при котором создаваемый исходный код программ открыт, то есть, общедоступен для просмотра и изменения. Это позволяет всем желающим использовать уже созданный код для своих нужд и, возможно, помочь в разработке открытой программы.

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

Подавляющее большинство открытых программ является одновременно свободными (GNU GPL) и наоборот, ибо определения открытого и свободного ПО близки, а большинство лицензий соответствуют обоим.

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

ОС Microsoft Windows

Рис. 39. Логотип OC Windows.

MS Windows (произносится Ви́ндоуз) - семейство операционных систем компании Microsoft (Майкрософт). Глава корпорации Microsoft – Билл Гейтс .

Начиная с 1995 года Windows - самая популярная операционная система на рынке персональных компьютеров – стандарт де-факто. К 2005-му году Microsoft Windows была установлена более чем на 89% персональных компьютеров.

Однако многие пользователи сделали выбор в пользу ОС Windows так как совсем не знакомы с альтернативами, такими как MacOS, Linux, BSD. В России до начала 2000-х годов почти все персональные компьютеры продавались с предустановленной операционной системой Windows. Борьба с распространением пиратских версий программных продуктов привела к появлению интереса к другим операционным системам. Так, например, стало возможным приобрести персональный компьютер с предустановленной бесплатной ОС Linux .

Хронология выпусков версий Windows


· Windows 1.0 (1985)

1. Windows 2.0 (1987)

2. Windows/386 (1987)

3. Windows 3.0 (1990)

4. Windows 3.1 (1992)

5. Windows NT 3.1 (1993)

6. Windows NT 3.5 (1994)

7. Windows 95 (1995)

8. Windows NT 4.0 (1996)

9. Windows 98 (1998)

10. Windows 2000 (2000)

11. Windows Me (2000)

12. Windows XP (2001)

13. Windows 2003 (2003)

14. Windows Vista (2007)

15. Windows рабочее название Vienna (2010)


Интегрированные программные продукты и прикладное ПО

Операционная система Microsoft Windows включает в себя стандартные приложения, такие как браузер Internet Explorer , почтовый клиент Outlook Express , проигрыватель Windows Media Player .

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

Рис. 40. Логотип пакета MS Office.

Для MS Windows существует очень удобный и освоенный большинством пользователей пакет прикладных программ Microsoft Office , включающий:

Текстовый процессор MS Word ,

Табличный процессор MS Excel ,

Органайзер MS Outlook ,

Приложение для подготовки презентаций MS PowerPoint ,

Приложение для управления базами данных MS Access .

Не стоит забывать, что и ОС Windows и абсолютное большинство популярных прикладных программ под Windows имеют лицензию copyright, т.е. являются проприетарным ПО. Соответственно каждая копия такой программы должна приобретаться за деньги. Например, на конец 2006 года цена на Windows XP Home Edition Russian BOX (SP2) - $185, Office 2003 Russian CD – $322.

Используя нелицензионное (пиратское) ПО, защищенное лицензией copyright, вы нарушаете законодательство о защите авторских прав.

ОС GNU/Linux

Рис. 41. Логотип ОС GNU/Linux – пингвиненок Tux.

Операционная система GNU/Linux (произносится «гну ли́нукс») - свободная UNIX-подобная операционная система. Обычно, по историческим причинам и для краткости, эта система называется просто «Linux». Это самая мощная альтернатива MS Windows, популярная в качестве серверной и резко набирающая популярность в качестве настольной (desktop) операционной системы в последние годы, в связи с усилением контроля за соблюдением лицензионного использования ОС Windows со стороны Microsoft в версиях XP и Vista.

К операционной системе GNU/Linux также часто относят программы, дополняющие эту операционную систему, и прикладные программы, делающие её полноценной многофункциональной операционной средой.

В отличие от большинства других операционных систем, GNU/Linux не имеет единой «официальной» комплектации. Вместо этого GNU/Linux поставляется в большом количестве так называемых дистрибутивов , в которых программы GNU соединяются с ядром Linux и другими программами. Самые распространённые в мире дистрибутивы:

Американский Red Hat и его наследник Fedora Core ;

Немецкий SuSE ;

Французский Mandriva (бывший Mandrake );

Не имеющий национальной принадлежности международный дистрибутив Debian GNU/Linux ;

Один из самых старых дистрибутивов Slackware ;

Сравнительно молодой и активно развивающийся дистрибутив Gentoo ;

Молодой, но перспективный дистрибутив Ubuntu Linux .

Создатель ядра Linux - Линус Торвальдс . GNU/Linux не имеет географического центра разработки. Нет и организации, которая владела бы этой системой; нет даже единого координационного центра. Программы для GNU/Linux - результат работы тысяч проектов. Некоторые из этих проектов централизованы, некоторые сосредоточены в фирмах, но большинство объединяют программистов со всего света, которые знакомы только по переписке. Создать свой проект или присоединиться к уже существующему может любой и, в случае успеха, результаты работы станут известны миллионам пользователей. Пользователи принимают участие в тестировании свободных программ, общаются с разработчиками напрямую, что позволяет быстро находить и исправлять ошибки и реализовывать новые возможности.

На рынке серверных операционных систем Австралии Linux уже заняла около 30%. За австралийцами последовали и бразильцы. Бразильское правительство решило отказаться от расходования средств на программное обеспечение и перейти с продуктов Microsoft на системы с открытым кодом, в частности, ОС Linux. Главная причина изменений – экономическая. В нашей стране рынок Linux пока невелик.

Файловая система

Вся информация в компьютере хранится в файлах, с которыми и работает операционная система.

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

Файлы организованы в каталоги, также называемые директориями (directory) или папками (folder). Каталог - это файл, который хранит сведения о других файлах: имя, размер, дату создания, адрес файла на диске.

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

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

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

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

Все файлы условно можно разделить на две части - текстовые и двоичные .

Текстовые файлы - наиболее распространенный тип данных в компьютерном мире. Для хранения каждого символа чаще всего отводится один байт, а кодирование текстовых файлов выполняют с помощью специальных кодировочных таблиц.

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

Двоичные файлы , в отличие от текстовых, не так просто просмотреть и в них, обычно, нет знакомых нам слов - лишь множество непонятных символов. Эти файлы не предназначены непосредственно для чтения человеком. Примерами двоичных файлов являются исполняемые программы и файлы с графическими изображениями.

Каждый файл на диске имеет обозначение (полное имя ), которое состоит из 2 частей: имени и расширения , разделенных точкой.

Расширение имени файла - необязательная последовательность символов, добавляемых к имени файла и предназначенных для идентификации типа (формата) файла. Это один из распространённых способов, с помощью которого пользователь или программное обеспечение компьютера может определить тип данных, хранящихся в файле.

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

Операционная система или менеджер файлов могут устанавливать соответствия между расширениями файлов и приложениями.

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

Драйверы

C ПК могут сопрягаться разнообразные устройства: видеокарта, звуковая карта, принтер, сканер, манипуляторы, дисководы, цифровые фотоаппараты, сотовые телефоны… Каждое из них имеет свой набор команд – свой «язык». Чтобы конкретная операционная система могла управлять конкретным устройством, прибегают к помощи программ–«переводчиков», знающих с одной стороны язык команд конкретного устройства, а с другой – язык конкретной операционной системы, под управлением которой должно работать это устройство.

Такая программа называется драйвером (driver) и поставляется вместе с устройством его производителем. Производители аппаратного ПО, как правило, также размещают драверы, созднных ими устройств, на своих web-сайтах.