ΠΠ½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½ΠΎΠΌΠ΅ΡΠ° Π²Π΅ΡΡΠΈΠΈ ΡΠ²ΡΠ·Π°Π½ΠΎ Ρ Π²Π½Π΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π² API ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π½Π°ΡΡΡΠ°ΡΡΠΈΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ, ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΡ API. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, ΠΏΡΠ΅ΠΊΡΠ°ΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΡ API mirclient ΠΈ mirserver, Π²ΠΌΠ΅ΡΡΠΎ ΠΊΠΎΡΠΎΡΡΡ ΡΠΆΠ΅ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π΄Π°Π²Π½ΠΎ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» Wayland. Π‘Π²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ mirclient ΠΈ mirserver Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½Ρ, Π½ΠΎ ΡΠ΅ΠΏΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΡ ΡΠ΅Π»Π΅ΠΉ, Π½Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΈ Π½Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡΡΡΡ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ABI (Π½Π° Π±ΡΠ΄ΡΡΠ΅Π΅ Π½Π°ΠΌΠ΅ΡΠ΅Π½Π° Π±ΠΎΠ»ΡΡΠ°Ρ ΡΠΈΡΡΠΊΠ° ΠΊΠΎΠ΄Π°). ΠΡΠ΅ΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΡΠΊΠ°Π·Π°Π½Π½ΡΡ API ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½ΠΎ Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ UBports, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ mirclient Π² Ubuntu Touch. ΠΡΠ»ΠΎ ΡΠ΅ΡΠ΅Π½ΠΎ, ΡΡΠΎ Π² Π΄Π°Π½Π½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Mir 1.x Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π΄Π»Ρ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΠ΅ΠΉ UBports, Π° Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡ ΡΠΌΠΎΠΆΠ΅Ρ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π½Π° Mir 2.0.
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ mirclient ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ ΠΈΠ·Π±Π°Π²ΠΈΡΡΡΡ ΠΎΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² Π΄Π»Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ»ΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² API mirclient. ΠΡΠΌΠ΅ΡΠ°Π΅ΡΡΡ, ΡΡΠΎ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ ΡΠΏΡΠΎΡΠ΅Π½ΠΈΠ΅ Π½Π΅ ΠΏΡΠΈΠ²Π΅Π΄ΡΡ ΠΊ Π²ΠΈΠ΄ΠΈΠΌΡΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ ΠΈ ΠΏΠΎΡΠ»ΡΠΆΠΈΡ ΠΎΡΠ½ΠΎΠ²ΠΎΠΉ Π΄Π»Ρ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ΄Π° Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΠΌΠΈ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π² ΠΎΠ±Π»Π°ΡΡΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΡΠΈΡΡΠ΅ΠΌ Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ GPU, ΡΠ°Π±ΠΎΡΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ Π±Π΅Π· ΠΌΠΎΠ½ΠΈΡΠΎΡΠ° (headless) ΠΈ ΡΠ°Π·Π²ΠΈΡΠΈΡ ΡΡΠ΅Π΄ΡΡΠ² Π΄Π»Ρ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ°Π±ΠΎΡΠ΅ΠΌΡ ΡΡΠΎΠ»Ρ.
Π ΡΠ°ΠΌΠΊΠ°Ρ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΠΌΠΎΠΉ ΡΠΈΡΡΠΊΠΈ ΠΈΠ· ΠΏΠ»Π°ΡΡΠΎΡΠΌ mesa-kms ΠΈ mesa-x11 ΡΠ±ΡΠ°Π½Ρ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΠ΅ mesa-Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ — ΠΈΠ· Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ ΠΎΡΡΠ°Π²Π»Π΅Π½ ΡΠΎΠ»ΡΠΊΠΎ gbm, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ ΡΠ°Π±ΠΎΡΡ Mir ΠΏΠΎΠ²Π΅ΡΡ X11 Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°Ρ Ρ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°ΠΌΠΈ NVIDIA. ΠΠ»Π°ΡΡΠΎΡΠΌΠ° mesa-kms ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π° Π² gbm-kms, Π° mesa-x11 Π² gbm-x11. Π’Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π½ΠΎΠ²Π°Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° rpi-dispmanx, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Mir Π½Π° ΠΏΠ»Π°ΡΠ°Ρ Raspberry Pi 3 Ρ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°ΠΌΠΈ Broadcom. Π ΠΏΡΠΎΡΠ»ΠΎΠΉΠΊΠ΅ MirAL (Mir Abstraction Layer), ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΡ ΠΎΠ΄Π° ΠΎΡ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ Mir ΠΈ Π°Π±ΡΡΡΠ°Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ABI ΡΠ΅ΡΠ΅Π· Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ libmiral, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π΄Π΅ΠΊΠΎΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΠΊΠΎΠ½ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΡΠ΅ΡΠ²Π΅ΡΠ° (SSD), Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² Π±Π»ΠΎΠΊΠ΅ DisplayConfiguration.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru