С планшетной версией Ubuntu Touch, а так же Mir и Unity Next, мы вторглись в мир Андроида. Эта статья снова описывает, как Убунту будет работать на новой для себя платформе. С новым дисплейным сервером, новой моделью драйверов и даже другими библиотеками.
Экосистема драйверов, как правило, очень сложная и андроид не исключение. Чтобы драйвер на андроиде заработал, производитель GPU предоставляет:
Все закрытые части драйвера должны быть использованы через интерфейсы под лицензией Apache или Khronos. API меняется медленно и делается под контролем Google или Khronos. Эти API разительно отличаются от DRM или gbm, которые мы видим в "свободном стеке".
Драйвера не открыты на 100%, но и нельзя сказать, что они на 100% закрыты. Без проприетарных бинарников, вы не сможете использовать функционал GLES. Но бо́льшая часть открыта и понять что делает система в целом не сложно.
Можно построить свободную экосистему с помощью Mir, используя интерфейсы к закрытым частям.
Что касается вопроса открытости - это серая зона, если приемлемо использовать блобы (binary linked object — объект двоичной компоновки).
Разработчики знают о проблемах, которые маячат впереди. Но огромным облегчением является, устоявшаяся на андроид платформе, API от Google и Khronos, которая зарекомендовала себя на сотнях миллионах устройств.
Разработчики Canonical не изобретают колесо! Никто не изобретает свой HAL и не бьёт челом перед разработчиками GPU, чтобы выпросить поддержку нового API.
То есть мощное наследие андроида в виде управления питанием, производительностью будет использоваться дисплейным сервером Mir так, как он поставляется производителем.
Образно говоря, Mir и Unity Next будут построены не на песке, а на скале!
Мировое господство Ubuntu:
Небольшой FAQ от Kevin, который поможет разобраться в Mir и Ubuntu Touch.
Зачем Canonical создала Мир? 5 причин от Кристофера Роджерса.
Wayland, Mir, X - разные проекты.