Мобильные операционные системы на ядре linux
TRANSCRIPT
Мобильные операционные системы на ядре Linux
Петр Вытовтов[email protected]
Linux User Group
Android
Open Handset Alliance
Tizen
Linux Foundation
Sailfish OS
Sailfish Alliance
Mer
Linux Foundation
Firefox OS
Mozilla Foundation
Ubuntu
Canonical Ltd.
Android-based
● Android● CyanogenMod● MIUI● Replicant● Яндекс.Кит● PrivatOS● и др.
Android-based
libinput
possibly adaptations to Wayland/Mir possibly adaptations to Wayland/Mir possibly adaptations to Wayland/Mir
libxserver
X-Server X.Org Xfree86 X-Win32
X11.app
window manager metacity mutter KWin Compiz
Linux kernel, device drivers & other modules
netfilter
radeon nouveau lima etna_viv freedreno tegra-re
? kdbus ?evdev kms (Kernel Mode Setting)
Hardware
drm (Direct Rendering Manager)
D-B
us-
Daem
on
CPU & GPU cache coherent L2-Caches
main memory
Keyboard & Mouse Touch-Screen BrailleDisplay
Ethernet 802.11-(abc) Bluetooth
UMTS/CDMA/LTE GPS-receiver G-sensor
syst
em
d
(con
tain
s u
dev)
un
etw
ork
N
etw
ork
Man
ag
er
pack
ag
eki
td
Pu
lseA
ud
io-d
ALSA: emu20k1, ctxfi, hda... ath9k
kmod-fs-ext4
kmod-ltq-atm-vr9
Media Application 3D Application2D Application
SELinux TOMOYO Smack
AppArmor
ud
isks
System daemons:
avah
i-d
aem
on
User Interface Toolkits (in the form of libraries):
glibc µClibc
GLib GObject
Glib GModule GThread
GIO
System libraries:
libwayland-server
Wayland Compositor
weston, clayton, mutter, KWin
GN
OM
E S
hell
Pla
sma 2
Cair
o-D
ock
Cin
nam
on
Desktop Shells:
Display server:
Qt libwayland-client
GTK+Pango
Cairo (Xr) libwayland / COGL
ATK EFL libwayland-client
SDL libwayland-client
Alternative display servers:
esktop widgets
En
ligh
t. D
R1
9
SF SurfaceFlinger
window manager
AWM
libmir-serv
mir mir window
manager Compiz
libbioniclibhybris
Un
ity
Ubuntu Android
Widgets for Unity and Plasma
Clutter
GNUstep wxWidgets
FLTK ...
libwayland-client libX/libXCB
Linux kernel (Android-forked)
binder ashmem pmemloggerwakelocks ...
Tizen
● Приложения● Основной слой
– API
– Базовые библиотеки и компоненты
● Ядро Linux
Sailfish OS
● Полная совместимость с Android
● Управление приложениями с единого экрана
● Управление жестами
● Развитие проектов Mer, MeeGo, Maemo
Ubuntu
● Приоритет в использовании линз
● Управление жестами
● Унификация операционной системы
Firefox OS
● Gonk– Ядро Linux и
аппаратные абстракции
● Gecko– Браузерный движок
и среда выполнения
● Gaia– Пользовательский
интерфейс
Mer
● Форк MeeGo● Прослойка в
первую очередь, а не ОС
● Последователи:– KDE Plasma Active
– Nemo Mobile
– Sailfish OS
– Yuanxin OS
Язык разработки
Android
Java, C/C++ и др.
Tizen
C++
Sailfish OS
C++, QML
Mer
C++
Firefox OS
C++, HTML5, CSS,
JavaScript
Ubuntu
C/C++, QML, HTML5
Магазин приложений
Android
Google Play, F-Droid и др
Tizen
Samsung Apps
Sailfish OS
Jolla Harbour
Mer
???
Firefox OS
Firefox Marketplace
Ubuntu
Ubuntu Store
Система управления пакетами
Android
APK
Tizen
RPM
Sailfish OS
RPM
Mer
RPM + yum + zypper
Firefox OS
Firefox OS packaged apps
Ubuntu
dpkg
Многозадачность
Android
Да
Tizen
Да
Sailfish OS
Да
Mer
Да
Firefox OS
Да
Ubuntu
Да
Официальный SDK
Android
GNU/Linux, Mac OS X, Windows
Tizen
GNU/Linux, Mac OS X, Windows
Sailfish OS
GNU/Linux, Mac OS X, Windows
Mer
GNU/Linux, Windows
Firefox OS
Firefox
Ubuntu
Ubuntu desktop
Спасибо за внимание!
Петр Вытовтов[email protected]