Mir egy nyílt forráskódú, ingyenes megjelenítési kiszolgáló technológia, amely úgy lett kialakítva, az alapoktól kezdve, hogy hatékony támogatást grafikus co-processzor GNU / Linux rendszereket. Ez által kifejlesztett Canonical a világ-ezte legnépszerűbb szabad operációs rendszer, az Ubuntu.
A kliens és szerver implementációk
Mir oszlik meg a két kliens (libmirclient) és a szerver (libmirserver). Úgy lett kialakítva, mint egy leváltására az X Window System (X.Org) Ubuntun és származékai. Azt is kompatibilis az Android grafikus illesztőprogramok.
A Mir és XMir termékek kerülnek kiosztásra alapértelmezés közelgő kiadások az Ubuntu Linux operációs rendszer által kifejlesztett Canonical. Ugyancsak az alapértelmezett megjelenítési használt szerver a jelenlegi stabil kiadás az Ubuntu Touch mobil operációs rendszer meghajtására okostelefonok és tabletta.
Mi-ezte s benne
Mir tartalmaz számos összetevők, amelyek nélkülözhetetlenek a modern megjelenítési kiszolgálón, például a szerkesztőnek, input manager, output menedzser, alkalmazás menedzser, valamint inter-app adatcsere funkciót.
A szoftver valahogy azonos funkcionalitást és erősen inspirálta a széles körben használt X.Org kijelző szerver, amely jelenleg végrehajtott 99,9% -át GNU / Linux disztribúció, valamint a vadonatúj Wayland kijelző szerver.
Azt tervezték, hogy támogassa sok a meglévő hardver compositors tervezett felé BGL / GL (ES), és kihasználják a meglévő vezetők, hogy hajtsák végre az Android modell elkészítése.
A motorháztető alatt és támogatott operációs rendszerek
A program platformfüggetlen és írt teljesen a C ++ programozási nyelv, amelynek célja, hogy fut a GNU / Linux rendszerek, BSD, valamint más UNIX-szerű platform.
Sikeresen tesztelték mind a 32-bites és 64-bites utasításkészlet architektúra, és a legújabb verziót lehet tesztelni a jelenlegi verzió az Ubuntu Linux operációs rendszer vagy a rángatás a legújabb forráskódot hivatalos tárolóból.
Mi az új ebben a kiadásban:
- Tartozékok:
- Egy új eszköz "mirvanity", amely használja a nagy sebességű kamerával mérni az ügyfél-képernyő látencia.
- Added (build-time) támogatást asztali teljes OpenGL szerverek (alapértelmezés szerint letiltva javára GLESv2).
- Bevezetett új puffer szemantika (NBS), és lehetővé tette az alapértelmezett beállítás.
- kerültük libmirserver a mir_demo_standalone_render_overlays, hogy bringup nyomok kevésbé zsúfolt.
- Az eltávolított TilingWindowManager példa szervereket.
- két új mir _ * _ performance_test eszközöket, amelyek részeként futó "mir_performance_tests".
- Added mutató szülés az ügyfél API-t.
- Hozzáadott új platform támogató szoftvereket EGLStreams.
- Added bemeneti platform, amely a beágyazott kiszolgáló használhatja.
- konfiguráció engedélyezése a application_not_responding_detector
- Handle szerver oldali keymapping segítségével XKBMapper.
- Vegye ki a képernyőn kívülre kijelzőn.
- Add visszahívási lehetőség értesíteni kagyló, hogy a szerver hamarosan leáll.
- Add naplózás ANativeWindow események Android.
- ABI összefoglaló:
- mirclient ABI változatlanul 9
- mirserver ABI ütközött a 41
- mircommon ABI változatlanul 6
- mirplatform ABI ütközött a 12
- mirprotobuf ABI változatlanul 3
- mirplatformgraphics ABI ütközött a 10
- mirclientplatform ABI változatlanul 5
- mirinputplatform ABI változatlanul 5
Mi az új verzió 0.18.0:
- Grafika:
- A belső előkészítő munka szükséges Vulkan, hardver dekódolt multimédia optimalizálást, és a lappangási fejlesztések a beágyazott szerverek.
- megkezdte bővítmény átalakításhoz. Ez jobban felkészülni mir a tárgyak internete, ahol még nincs olyan Vulkán / GLES verem be az eszközt, és lehet, hogy használja a CPU-t.
- Javítások grafika befolyásoló korrupció Xmir (kockás fekete oszlopok)
- Különböző javítások multimonitor forgatókönyveket, valamint jobban támogatja a méretezés pufferek, hogy megfeleljen a monitor az on.
- Input:
- libinput alapértelmezés szerint. Mi már támaszkodva egy régi változata az Android input verem. Teljesen távolítsa el ezt a javára használja libinput.
- Hibák:
- Elég egy hosszú listát a hiba korrekció. Néhány ezek sohasem voltak "a vad", de létezett során 0,18 fejlődés.
Mi az új verzió 0.17.0:
- ABI összefoglaló: csak a szerverek és grafika járművezetők kell újjáépítése;
- Mirclient ABI változatlanul 9
- Mirserver ABI ütközött a 35
- Mircommon ABI változatlanul 5
- Mirplatform ABI ütközött a 11
- Mirprotobuf ABI ütközött a 3
- Mirplatformgraphics ABI ütközött a 6
- Mirclientplatform ABI változatlanul 3
- Tartozékok:
- Tegyünk libmircookie, egy egyszerű mechanizmust egy csoport együttműködő folyamatok, hogy kézzel ki, és ellenőrizze a nehezen kovácsolni időbélyeggel megbízhatatlan 3. fél.
- További refactorings támogató megjelenítők más, mint a GL.
- Add MirBlob az ügyfél API - eszköz szerializálásáról és deserializing adatokat.
- bevezetése libinput alapú beviteli platform, még nem alapértelmezett.
- Adja meg a mechanizmus a héj küldeni események magasépítés.
- Adja mir :: shell :: DisplayConfigurationController lehetővé kagyló, hogy helyesen a kijelző konfigurációt, a bejelentő ügyfelek megfelelő.
- Új DSO verziószámozásáról kalauz.
- Küldés tartozó eseményeket a kimeneti felület jelenleg (dpi, form factor, skála) az ügyfelek részére.
- Bug javítások:
- [tartozékot] XMir specifikus dokumentációt kell élni saját § (LP: # 1200114)
- Beágyazott szerverek csak kurzor támogatás (LP: # 1289072)
- Mir kurzor hiányzik / láthatatlan, amíg az ügyfél határozza meg, hogy többször (LP: # 1308133)
- [regressziós] Nagyítás szoftver felületeket (mint Xmir -sw) összeomlik a Mir szerver (LP: # 1493721)
- [USC] Mir feladja, lekapcsol miatt bemenetet multimonitor qtmir (std :: kivétel :: mit: hiba küldő bemeneti esemény) (LP: # 1496069)
- Egér kurzor eltűnik való belépéskor a felület egy beágyazott kliens (LP: # 1496849)
- [android] bemenetet nem adják fel, ha külső monitort csatlakoztat (LP: # 1498045)
- [android] bemeneti koordinátákat átméretezése nem megfelelő, ha egy külső kijelző van csatlakoztatva (LP: # 1498540)
- [android] std :: kivétel :: mit: hiba alatt hwc set (), amikor kihúzza a külső monitor (LP: # 1498550)
- tesztek nem állítanak össze nélkül elõfordított fejlécek (LP: # 1498829)
- [android] std :: kivétel :: mit: nem sikerült nyomon fd: A művelet nem engedélyezett, ha kihúzza a külső kijelző egy beágyazott konfiguráció (LP: # 1499042)
- Mir hirtelen már nem épít, mivel "mesa (11,0.
0-1ubuntu1) ravasz ": /usr/include/EGL/eglplatform.h:100:35: végzetes hiba: android / native_window.h: Nincs ilyen fájl vagy könyvtár (LP: # 1499134)
- [android] különböző összeomlik, ha kihúzza a külső kijelző egy beágyazott konfiguráció (LP: # 1501927)
- kurzor láthatóvá válik, önmagában, ha egy külső monitor van csatlakoztatva (LP: # 1502200)
- Mesa FTBFS miatt hiányzó igényel mirclient (LP: # 1503450)
Mi az új verzió 0.13.3:
- MirEvent razzia
- Folytatás puffer szemantikai változások (amelyek segítenek a beágyazott bypass)
- & quot; Az alkalmazás nem válaszol & quot; ág javasolt
- Mir-on-X ág javasolt
- Folytatás munka átdolgozása QtMir használni a WM felület Mir
- Folytatás összehangolja áramlással libinput változások javasoltuk
- Platform API elavult Mir kód eltávolítjuk folyamatban leszállás
- lépések egy python alapú perf teszt keretrendszer végrehajtása
- lépések értékelésére Vulkán / WSI API
- Fix fd szivárgások néhány tesztet
- Dupla pufferelés támogatás
Mi az új verzió 0.11.0:
- Csomagolás változások:
- változása miatt a Mir illesztõprogrammodell- az ügyfél platformok már nem verziószámmal által so. Imigyen libmirplatform5driver- (mesa | android) helyébe mir-client-platformtól (mesa-android). Egy új csomag mir-client-platform-mesa-dev bevezetik tartalmazó fejlécet korábban mirplatform-dev.
- Tartozékok:
- Sokkal több nagy vízvezeték az Android kódot, azon az úton, hogy támogatja a külső kijelzők.
- Add támogatása csenget 3.6.
- Major újratervezése kiszolgáló osztályok mir :: héj, jelenet és barátai (még folyamatban).
- Added ügyfél API létrehozására dialógusok és eszközeiben.
- Hozzáadott új felület kimondja: mir_surface_state_hidden és mir_surface_state_horizmaximized.
- Performance: használja optimálisan hatékony töredék árnyékolás, ha lehetséges.
- Teljesítmény: (Desktop) Kompozit kettős pufferelés helyett hármas csökkentsük a látható lag.
- mir_proving_server: Most már átméretezése ablakok minden él vagy sarok a meglévő Alt + middlebuttondrag.
- mir_proving_server: Hozzáadott néhány demo egyéni shaderek (negatív és nagy kontraszt üzemmódok: Super + N / C).
- mir_proving_server: most közel ügyfelek udvariasan keresztül Alt + F4.
- Added MirPointerInputEvent (részben az új beviteli API, a régi MirMotionEvent még támogatott is egyelőre).
- ABI összefoglaló: Szerverek szükség újjáépítése, de az ügyfelek nem; . Mirclient ABI változatlanul 8. Mircommon ABI változatlanul 3. Mirplatform ABI ütközött a 6. Mirserver ABI ütközött a 29
- Bug javítások:
- [regressziós] mir_demo_server kilép azonnal boost bad_any_cast kivételével (LP: # 1414630)
- szükség módja helyzetbe menük és eszközeiben (relatív pozicionálás szülő) (LP: # 1324101)
- GLibMainLoopTest hiba látható CI (LP: # 1413748)
- Clang épít sikertelenek CI (LP: # 1416317)
- segfault a mir :: compositor :: GLProgramFamily :: Shader :: init () (LP: # 1416482)
- GLRenderer: Az alapértelmezett töredék shader az optimális szint alatt az alfa = 1.
0 (LP: # 1350674)
- mesa :: DisplayBuffer :: post_update a hármas pufferelt - több mint laggy lennie kell (LP: # 1350725)
- Nem lehet csatlakozni a beágyazott kiszolgáló, amikor indult a különb vt (LP: # 1379266)
- [testfail] AsioMainLoopAlarmTest meghiúsul CI (LP: # 1392256)
- Compositor jelentés inkonzisztens jelentések keret idő alatt megkerülni, render időt egyébként (LP: # 1408906)
- [regressziós] mir_demo_client_fingerpaint nem fest valami többé (az egérrel) (LP: # 1413139)
- Hardver kurzor mindig kissé megelőzve a kompozitképet (LP: # 1274408)
- integrációs tesztek kimenetre (túl sok) DisplayServer log üzenetek (LP: # 1408231)
- [regressziós] deploy-and-test.sh nem működik többé (kivéve, ha van umockdev már telepítve van) (LP: # 1413479)
- Színes Inverse látható. Toggle Negatív kép (LP: # 1400580)
- mir-ubuntu-élénk-armhf-ci nem következetesen (LP: # 1407863)
- Dupla pufferelt felületek lag vagy fagyasztva ha eseményvezérelt, és nem állandóan újrarajzoláskor (LP: # 1395581)
- Pointer mozgás- és keresztezési események hiányoznak (LP: # 1417650)
Mi az új 0.8 verzió:
- Támogatás touchspots vizuálisan mutatják kapcsolatot a helyek a képernyőn, bár a költségek teljesítmény.
- Mir ügyfelek most ki a teljesítmény adatokat, mint frame rate és megjelenítési idejének beállítása keresztül MIR_CLIENT_PERF_REPORT = log környezeti változó kiírási a teljesítmény adatokat a standard kimenetre.
- Kisebb érzékenység ABI szünetek elrejti fejléceket kitéve, hogy már nem használt külső projektek, stb Van még több scriptek most felismerni ABI törés.
- További fejlesztések megérinteni érzékenységet - beleértve a kisebb lag és simább görgetés.
- Hardver matricák már alapértelmezés szerint engedélyezett.
- Számos bug-javítások.
Mi az új verzió 0.1.2:
- grafika: android: javítani interfész mga :: DisplayDevice így a pusztán a renderelés és postázást.
- felületek: átnevezése & quot; felületek & quot; komponens a & quot; jelenet & quot;.
- felületek, kagyló: áttelepítése Session adatmodell shell felületre.
- grafika: változás fill_ipc_package (), hogy az igazi mutatók.
- mir_client_library.h: Fix typo: & quot; és reteszelő & quot; legyen & quot; nem minden zár & quot;.
- API felsorolások razzia: Távolítsuk el kissé félrevezető * _enum_max_ értékeket, és helyettük pontosabb többes számú alakokra.
- test_android_communication_package: Ne várják nyitott fd, hogy & gt; 0, akkor lehet, hogy zárva stdin hogy ez egy érvényes értéket (LP: # 1247718).
- Frissítés docs futtatásáról Mir az asztalon is beszélve az új csomag ubuntu-desktop-mir.
- offscreen: Add a kijelző, ami miatt a kimenetét offscreen pufferek
- grafika: android: fix regresszió hwc1.0 eszközök bevezetett r1228 (LP: # 1252433).
- OffscreenPlatform szolgáltatásokat nyújtja, hogy a képernyőn kívülre kijelző szüksége a Platform.
- grafika: android: megszilárdítása GLContexts osztályok használatát.
- Fix inicializált változó okozó véletlen drm_auth_magic teszt hibák. (LP: # 1252144).
- Add a fullyish funkcionális Udev wrapper. Ez jelenleg ül a graphics / GBM, de átkerülnek a felső szintet, amikor beviteli eszköz észlelési vándorol.
- Add átméretezés támogatást mintakódunkkal; demo-héj és az ügyfelek.
- eglapp: Tisztázni üzeneteket pixel formátumokat (LP: # 1168304).
- ad támogatást a MirMotionEvent alatt pointer_coordinates nevű tool_type. Ez lehetővé teszi, hogy az ügyfelek, hogy milyen típusú eszközt használ, az egér / ujj / stb. (LP: # 1252498)
- ügyfél, frontend: Jelentés a valódi álló felület pixel formátumokat, hogy az ügyfelek. (LP: # 1240833)
- grafika: android: 1) változás hwc1.1 kihasználni szinkron kerítés alatt az összeállító a gl renderloop. Vegyük észre, hogy már nem várja meg a render befejezni, átadjuk ezt a feladatot a vezető és a kernel. 2) támogatja a Nexus 10. (LP: # 1252173) (LP: # 1203268)
- shell: nem tesznek közzé SurfacesContainer - lehet saját shell.
- GBM: Ne szórakozz fel a VT mód beállítási hiba csak vissza az előző VT mód leálláskor, ha ez VT_AUTO.
- összeomlás kijavítása miatt sikertelen eglMakeCurrent () hívást, ha a beágyazott módban.
- shell: egység-mir használja shell :: FocusSetter -, hogy a fejléc nyilvános újra
- Add átméretezés támogatást kliens felületen (mir :: ügyfél :: MirSurface).
- grafika: android: támogatja a "régi aka 2012" Nexus 7 hwc (nvidia Tegra3 SoC) jobb. (LP: # 1231917)
- Add átméretezése támogatása * ClientBuffer osztályok. Most mindig méretei a legújabb puffer csomag.
- android: támogatja vezető horgok a Mali T604 (jelen nexus 10)
- Add szélességét és magasságát, hogy a protokoll Buffer üzeneteket, a felkészülés méretezhető felületekre.
- felületek, kagyló, fakitermelés, tesztek: nem tesznek közzé fejlécek, amely lehet magán a felületen. Felületek / basic_surface.h, felületek / surface_controller.h és shell / surface_builder.h
- példa: visszaállítás GL framebuffer kötelező, ha megsemmisítik a célobjektumra
- példákat, felületek, kagyló: távolítsa render_surfaces függőség BasicSurface
- geometria: távolítsa végrehajtása streaming üzemeltetői fejlécek (LP: # 1247820)
- Távolítsuk el a bejegyzés érdekében fókusz szekvencia, összecsukható ez funkcionalitást a munkamenet tartályba.
- Ellenőrizze, hogy a munkamenet mediátor kibocsátás szerzett puffer források mielőtt szerezni egy új puffer nevében az ügyfél.Ez javítja a teljesítmény regresszió (LP: # 1249210).
- Néhány cleanups a test_client_input.cpp.
- Factor ki egy csomó & quot; ClientConfigCommon & quot;.
- kis razzia a munkamenet tartály teszt növelése beágyazás.
- shell, felületek: Újabb lépés a & quot; rögzítő & quot; A felületek hierarchiák - csak közzé interfészek és a kiírt adat modellt felületeken.
- grafika: android: HWC1.1 használata EGL hogy bővebb információt a framebuffer pixel formátumban.
- Fix FTBS segítségével use_debflags = ON (építésű android-armhf). (LP: # 1248014)
- Add a kliens bemeneti vevőt jelentést.
- doc: doxygen 1.8.4 panaszkodik elavult config így futott & quot; doxygen u Doxyfile.in & quot;.
- végrehajtása átméretezés () a szerver oldali Surface osztályok.
- android: megtisztítására mga :: DisplayBuffer és mga :: DisplayBufferFactory
- Add átméretezés () támogatás BufferStream előkészítéseként méretezhető felületekre.
- Merge metaadat változás az újonnan rekonstruált LP: mir
- tesztek: ismétlődésének mg :: GraphicBufferAllocator csonkokat.
- példa: távolítsa hamis használata mir / shell / surface.h.
- frontend: távolítsa ClientTrackingSurface a Surface osztályhierarchiában
- Bumping ABI szerver libmirserver11.
- Nem beszélve & quot; & quot ;. rendereltként Ez a felület nem létezik jó ideje már.
- android-bemenet: hozzárendelése több egyedi megjelenést azonosítók.
Mi az új verzió 0.1.1:
- New unit tesztek, különböző javítások elkerülése érdekében kiadói belső fejlécek, támogatása meghatározó Mir beágyazott kiszolgáló nevét vagy keresztül --name = érv vagy az MIR_SERVER_NAME környezeti változót, újratervezés a Mir Android kijelző osztályok, és az első lépés afelé, hogy felszíni átméretezése támogatja.
Hozzászólás nem található