Скачать презентацию
Скачать статью
В современном мире высоких технологий операционная система Linux набирает все большую популярность в качестве решения для серверных станций, настольных и мобильных компьютеров во многом благодаря открытости своей архитектуры и исходных кодов базовых компонентов. Надежность, качество и, в конечном счете, успех этих систем обусловлен, прежде всего, правильным выбором разработчиков (майнтейнеров) и необходимых инструментов.
Разработка любого дистрибутива Linux состоит, по сути, в нужной комбинации и доработке, согласно поставленным целям, уже существующих открытых компонентов майнтейнерами операционной системы. Несмотря на существенные различия в интерфейсе пользователя и системной архитектуре, большинство дистрибутивов Linux придерживается трех основных целей: предоставление наиболее новых и стабильных версий программ, предоставление их наибольшего разнообразия для различных групп пользователей, а также предоставление пользователю как можно большего количества фирменных разработок в программном обеспечении, отсутствующих в других дистрибутивах.
Для достижения этих целей майнтейнерам приходится решать множество задач различной сложности. К простейшим задачам начального уровня можно отнести такие задачи как создание установочных пакетов для новых компонентов операционной системы или исправление ошибок в уже существующих компонентах. К более сложным задачам относится, например, задача по адаптации новых версий уже присутствующих компонентов в системе, которая усложняется наличием множества прямых и обратных связей между компонентами и проблемами обратной совместимости их интерфейсов. Также к сложным задачам можно отнести контроль качества пакетных репозиториев, которые могут достигать огромных размеров в несколько десятков тысяч пакетов. Такие задачи уже требуют разработки специальных автоматизированных инструментов для их решения.
От качества решения задач, возникающих при разработке, зависит стабильность будущих версий дистрибутива, от скорости – время стабилизации и частота выпуска релизов дистрибутива и, как следствие, актуальность дистрибутива для пользователей.
Эти и другие задачи майнтейнера операционной системы Linux, а также инструменты для их качественного и быстрого решения являются предметом рассмотрения данной работы.
Владимир Рубанов
Владимир Рубанов – первый заместитель генерального директора ЗАО “РОСА” и вице-президент по разработке. Руководит разработкой ПО компании – в первую очередь, созданием линейки операционных систем ROSA для различных форм-факторов. В 2011 году лично руководил проектом Минкомсвязи по разработке прототипов базовых компонентов Национальной программной платформы.
Ранее долгое время Владимир работал в Институте системного программирования РАН (ИСП РАН), где в качестве руководителя подразделения отвечал за коммерческие проекты по разработке новых технологий и сложного системного программного обеспечения. Разработанные технологии и инструменты успешно применены в проектах с зарубежными и российскими компаниями (Google, IBM, Intel, The Linux Foundation, NEC, Nokia, Samsung, Raiffeisen Bank, VIA Technologies, Вымпелком и др.). В. Рубанов стоял у истоков создания Центра верификации ОС Linux и возглавил его с момента основания.
С отличием закончил факультет управления и прикладной математики Московского физико-технического института (МФТИ). Защитил диссертацию на степень кандидата физико-математических наук, имеет ученое звание доцента по ИТ-специальности.
Является активным членом российского и международного сообщества разработчиков ПО, международным экспертом в области современных технологий разработки, стандартизации и верификации ПО. Имеет более 50 научных публикаций, десятки выступлений на ведущих отраслевых конференциях. Состоит в профессиональных ассоциациях ACM и IEEE Computer Society.
Андрей Пономаренко
Андрей Пономаренко — системный программист с 7 летним стажем работы. На данный момент работает в отделе автоматизации разработки компании “РОСА” в должности старшего инженера-программиста. Занимается проектированием и разработкой необходимого инструментария для майнтейнеров операционной системы “РОСА”.
Ранее работал в Институте системного программирования РАН (ИСП РАН), где участвовал в разработке новых технологий тестирования ПО и соответствующих инструментов для таких международных компаний как The Linux Foundation, Intel, Nokia и Samsung. В 2006-2010 годах был одним из основных разработчиков инфраструктуры базы данных LSB (Linux Standard Base). Получил сертификат и квалификацию IEEE CS “Тестировщик программных систем” в 2006 году.
Закончил факультет управления и прикладной математики Московского физико-технического института (МФТИ) по специальности системное программирование.
Является автором и активным участником множества известных проектов с открытым исходным кодом, включая ABI Compliance Checker и Upstream-Tracker.org. Имеет более 15 научных публикаций.