Pasaulis yra atviro kodo ir laisvai ekranas serverio technologija, kuri buvo sukurta iš žemės teikti veiksmingą paramą grafikos procesoriai GNU / Linux sistemų. Jis sukūrė Canonical pasauliui & rsquo;. Populiariausia nemokama operacinė sistema, Ubuntu
Kliento ir serverio diegimas
"Pasaulis yra paskirstomas tiek kliento (libmirclient) ir serverio (libmirserver). Ji buvo sukurta kaip lašas pakaitalas X Window System (X. Org) Ubuntu ir jos dariniai. Jis taip pat yra suderinamas su "Android" grafikos vairuotojams.
Mir ir XMir produktai bus platinami pagal nutylėjimą apie būsimus išleidžiamus Ubuntu Linux operacinė sistema sukurta Canonical. Jis taip pat yra standartinis rodmuo serveris naudojamas dėl dabartinės stabilios išleidimo Ubuntu Touch mobiliosios operacinės sistemos maitinimui smartphonach ir tablečių.
Kas & rsquo; s įtrauktos
"Pasaulis susideda iš keleto komponentų, kurios yra būtinos bet kurios šiuolaikinės ekrano serverį, tokių kaip rinkėją, įvesties vadybininkas, Output Manager, Application manager, taip pat, inter-app duomenų mainų funkcionalumą.
Programinė įranga yra kažkaip identiški funkcionalumą su ir labai įkvėpė plačiai naudojami X. Org ekrano serverį, kuris šiuo metu yra įgyvendinta 99,9% visų GNU / Linux distribucijų, taip pat visiškai naują Wayland ekrano serveryje.
Jis buvo sukonstruotas paremti daugelis esamų aparatūros rinkėjams, skirtos į EGL / GL (ES), ir pasinaudoti esamomis vairuotojams, kad įgyvendinti Android vairuotojo modelį.
Po kapotu ir palaikomų operacinių sistemų
programa yra nepriklausoma nuo platformos ir parašyta visiškai C ++ programavimo kalba, skirta paleisti GNU / Linux sistemų, BSD paskirstymo, taip pat kitų UNIX platformose.
Jis buvo sėkmingai išbandytas su tiek 32 bitų ir 64 bitų komandų rinkinys architektūros ir naujausia versija gali būti patikrintas dėl dabartinės išleidimo Ubuntu Linux operacinių sistemų arba greiferiniai naujausią kodą iš jo oficialaus saugykloje.
Kas naujo , šioje laidoje:
- Priedai:
- Pridėta naują įrankį "mirvanity", kuri galite naudoti didelės spartos vaizdo kamera matuoti klientas-ekrano vėlavimą.
- patalpintas (build-laikas) parama darbastalio visiškai OpenGL serverius (išjungta naudai GLESv2).
- įvedė naujas buferio semantika (NIST) ir ji įjungta pagal nutylėjimą.
- vengė vartoti libmirserver į mir_demo_standalone_render_overlays, todėl bringup pėdsakų mažiau užgriozdintas.
- Pašalinta TilingWindowManager nuo pvz serveriuose.
- papildė dvi naujos mir _ * _ performance_test įrankius, kurie yra paleisti kaip "mir_performance_tests".
- Pridėta žymeklis gimdymo į kliento API.
- Pridėta nauja platforma remti programinės įrangos EGLStreams.
- Pridėta įvesties platformą, kad įdėtos serverio galite naudoti.
- Leisti konfigūracija application_not_responding_detector
- Rankena server-side keymapping naudojant XKBMapper.
- Nuimkite offscreen ekraną.
- Pridėti atgalinio ryšio galimybė pranešti lukštai, kad serveris yra apie sustoti.
- Pridėti prisijungdami už ANativeWindow įvykių Android.
- ABI Santrauka:
- mirclient ABI nepakitusi 9
- mirserver ABI Iškilioji iki 41
- mircommon ABI nepakitusi 6
- mirplatform ABI Iškilioji iki 12
- mirprotobuf ABI nepakitusi 3
- mirplatformgraphics ABI Iškilioji 10
- mirclientplatform ABI nepakitęs 5
- mirinputplatform ABI nepakitęs 5
Kas naujo versija 0.18.0:
- Grafika:
- Vidaus parengiamieji darbai reikalingi Vulkan, aparatūros iššifruoti daugiaformačių optimizavimas ir latentinis patobulinimų lizdinės serverių.
- Pradėjo darbą įskiepiai renderer. Tai bus geriau pasirengti MIR DI, kur mes galime neturės Vulkan / GLEs pluoštą ant prietaiso ir gali tekti naudoti procesoriaus.
- Išspręsti grafikos korupcija, darantys įtaką Xmir (kvadratiniai juodos juostos),
- Įvairūs pataisymai MultiMonitor scenarijų, taip pat geriau parama mastelio buferius, kad tiktų monitorių jos toliau.
- Įvestis:
- Naudodami libinput pagal nutylėjimą. Mums buvo pasvirusi ant senos versijos "Android" įvesties kamino. Visiškai pašalinti šį naudai naudojant libinput.
- Klaidos:
- Gana ilgas sąrašas korekcijos klaidų. Kai kurie iš jų niekada nebuvo "natūralioje aplinkoje", tačiau egzistavo 0,18 vystymosi eigoje.
Kas naujo versija 0.17.0:
- ABI santrauka: Tik serverių ir grafika vairuotojai turi atstatyti;
- Mirclient ABI nepakitusi 9
- Mirserver ABI Iškilioji 35
- Mircommon ABI nepakitęs 5
- Mirplatform ABI Iškilioji iki 11
- Mirprotobuf ABI Iškilioji į 3 dalis
- Mirplatformgraphics ABI Iškilioji 6
- Mirclientplatform ABI nepakitusi 3
- Priedai:
- Įvesti libmircookie, paprastas mechanizmas, bendradarbiaujančių procesus grupės ranką ir patikrinti sunkiai kalvė laiko žymes į nepatikimų 3rd šalių.
- Daugiau refactorings remti kitas atvaizdavimo nei GL.
- Pridėti MirBlob į kliento API -. Įrankį serializowania ir deserializing duomenis;
- Įvesti libinput remiantis įvesties platformą, dar naudojama pagal nutylėjimą.
- numatyti mechanizmą, skirtą apvalkalas siųsti renginius paviršiaus statybos.
- Pateikite mir :: lukštais :: DisplayConfigurationController todėl lukštai teisingai pakeisti ekrano konfigūracija, pranešdama klientams, kaip tinkama.
- Nauja STO versijų vadovas.
- Siųsti renginius, susijusius su produkcijos paviršius yra šiuo metu (dpi, form factor, apimties) klientams.
- Klaidų pataisymai: "
- [stiprinimas] XMir konkrečius dokumentus reikia gyventi savo poskirsnio (LP: # 1.200.114),
- Grupiniai serverius reikia žymeklio paramą (LP: # 1.289.072),
- Pasaulis žymeklis yra nėra / nematomas, kol klientas nustato, kad kelis kartus (LP: # 1.308.133),
- [regresijos] Fullscreen programinės įrangos paviršiai (pvz Xmir -sw) gali strigti Mir serverio (LP: # 1.493.721),
- [USC] Pasaulis pasiduoda ir išsijungia dėl indėlio su MultiMonitor qtmir (std :: išimtis :: Kas: Jei siuntimas įėjimo įvykis) (LP: # 1.496.069)
- Pelės žymeklis dingsta įvažiuojant paviršiaus plotą įdėtos kliento (VP: # 1.496.849),
- [Android] įėjimas nesiunčiami, kai pritvirtinti išorinį monitorių (LP: # 1.498.045),
- [android] įvesties koordinatės yra sumažinta neteisingai, kai išorinis ekranas yra prijungtas (LP: # 1.498.540),
- [Android] Std :: išimtis :: Kas: klaidos HWC SET (), kai atjungti išorinį monitorių (LP: # 1.498.550),
- bandymai neturi sudaryti be skompilowanymi antraščių (LP: # 1.498.829),
- [Android] Std :: išimtis :: Kas: Nepavyko stebėti fd: Operacija neleidžiama, kai atjungti išorinį ekraną įdėtos konfigūracijos (LP: # 1499042)
- Pasaulis staiga nebėra stato nuo "mesa (11,0.
0-1ubuntu1) gudrus ": /usr/include/EGL/eglplatform.h:100:35: mirtina klaida:" Android "/ native_window.h: Nėra tokio failo ar katalogo (LP: # 1.499.134),
- [Android] įvairios avarijos, kai išjungiant išorinį ekraną ant įdėtos konfigūracijos (LP: # 1.501.927),
- Žymeklio tampa matomas savaime, kai išorinis monitorius yra prijungtas (LP: # 1.502.200),
- Mesa FTBFS nes nėra reikalaujama, mirclient (LP: # 1.503.450),
Kas naujo versija 0.13.3:
- MirEvent valymas
- Tęsinys buferinių semantinių pokyčių (kurie padės įdėtos aplinkkelio),
- & quot; Taikymas nereaguoja & quot; Siūloma filialas
- Pasaulis-su-X pasiūlė filialas
- Tęsinys darbą pertvarkyti QtMir naudoti WM sąsają Mir "
- Tęsinys koordinuoti su prieš srovę nuo libinput pokyčių mes pasiūlėme,
- Platformos API su nepatvirtintos Mir kodas pašalintas procese iškrovimo;
- pradžia Python pagrindu atl testas sistemos įgyvendinimą;
- Pradėtas vertinti Vulkan / KAIMO API
- Fiksuoti fd nuotėkis iš kai kurių tyrimų,
- Dukart buferinė parama;
Kas naujo versija 0.11.0:
- Pakavimo pokyčiai:
- Dėl pokyčių Mir vairuotojo modelio klientas platformos nebėra versijavimą iki soname. Thusly libmirplatform5driver- (Mesa | "Android") pakeičiamas Mir-kliento-platform- (mesa-Android). Naujas paketas Mir-kliento-platforma-mesa-dev yra įvesta, kurių sudėtyje yra antraštes anksčiau mirplatform-dev.
- Priedai:
- Daug daugiau pagrindinė vandentiekio Android kodo, kelyje į pagalbą išorinius monitorius.
- Pridėti paramą žvangėjimas 3.6.
- majoras perprojektavimo serverių klasių mir :: su lukštais, scena ir draugai (dar nebaigtos).
- Pridėta klientas API kurti dialogus ir patarimus.
- Pridėta naujų paviršiaus būsenas. Mir_surface_state_hidden ir mir_surface_state_horizmaximized
- Našumo:. Naudokite optimaliai efektyvų fragmentas spalvinimas, kai įmanoma,
- Našumo:. (Desktop) Kompozitinė dvigubas buferio vietoj trigubai sumažinti matomas atsilikimas;
- mir_proving_server: Ar dabar keisti langus iš bet krašto ar kampo naudojant esamą Alt + middlebuttondrag .
- mir_proving_server: Pridėta keletas demo užsakymą shaders (neigiamas ir didelio kontrasto režimai: super + N / C) .
- mir_proving_server:. Dabar gali artimi klientai mandagiai per Alt + F4
- patalpintas MirPointerInputEvent (dalis naujojo įėjimo API, senas MirMotionEvent vis dar palaiko taip pat dabar).
- ABI Santrauka: Serveriai reikia atstatyti, bet klientai nėra; , Mirclient ABI nepakitusi 8. Mircommon ABI nepakitusi 3. Mirplatform ABI Iškilioji į 6 d. Mirserver ABI Iškilioji 29
- Klaidų pataisymai: "
- [regresijos] mir_demo_server išeina nedelsiant padidinti bad_any_cast išimtis (LP: # 1.414.630),
- reikia kelią į padėtį meniu ir patarimams (santykinis padėties patronuojančioms) (LP: # 1.324.101),
- GLibMainLoopTest nepakankamumas matyti CI (LP: # 1.413.748),
- klingsėti stato nesugeba CI (LP: # 1416317)
- segfault į MIR :: rinkėją :: GLProgramFamily :: Shader :: init () (LP: # 1.416.482),
- GLRenderer: Numatytasis fragmentas Shader sub-optimalus alfa = 1.
0 (LP: # 1.350.674),
- Mesa :: DisplayBuffer :: post_update yra trigubas buferinis - daugiau laggy nei jis turi būti (LP: # 1.350.725),
- Nepavyko prisijungti prie įdėtos serverio, kai prasidėjo nuo Diferen VT (LP: # 1.379.266),
- [testfail] AsioMainLoopAlarmTest nepavyksta CI (LP: # 1.392.256),
- kompozitorius ataskaita nenuosekliai ataskaitos rėmo laiką aplinkkelio metu, ir padaryti gyvenimą kitaip (LP: # 1.408.906),
- [regresijos] mir_demo_client_fingerpaint nėra dažų nieko daugiau (su pele) (LP: # 1.413.139),
- Techninė įranga žymeklis yra visada šiek tiek į priekį nuo sudėtiniame įvaizdį (LP: # 1.274.408),
- integracijos bandymai išvedant (per daug) DisplayServer prisijungti pranešimus (LP: # 1.408.231),
- [regresijos] deploy-and-test.sh neveikia, bet daugiau (nebent turite umockdev jau įdiegta) (LP: # 1.413.479),
- Spalvoti Atvirkštinė ekrane. Perjungti neigiamą įvaizdį (LP: # 1.400.580),
- Mir-ubuntu-ryškus-armhf-CI nepavyksta nuosekliai (LP: # 1.407.863),
- Double-buferinis paviršiai gali atsilikti ar užšaldyti, jei varoma įvykis, o ne nuolat atvaizdavimo (LP: # 1.395.581),
- Rodyklė judesio ir kirtimo įvykiai trūksta (LP: # 1.417.650),
Kas naujo versijoje 0.8:
- Parama touchspots vizualiai parodyti lietimo vietas ekrane, nors tuo atlikimo kaina.
- Mir klientai dabar gali atskleisti informaciją apie veiklą, kaip kadravimo ir teikti kartus per nustatant MIR_CLIENT_PERF_REPORT = žurnalas aplinkos kintamąjį iškelties informacijos kokybė standartinė produkcija.
- Mažiau jautrumas ABI pertraukas pasislėpę antraštes nuo sąlyčio, kurie buvo nepanaudoti išorės projektus ir tt Taip pat yra daugiau skriptai dabar aptikti ABI lūžimo.
- Daugiau patobulinimų paliesti Atsakomumas -. Įskaitant ir mažiau lag ir sklandžiau slinkimo;
- Techninė įranga perdangos dabar įjungta pagal nutylėjimą.
- daug klaidų pataisymai.
Kas naujo versijos 0.1.2:
- Grafika: "Android":. Pagerinti sąsaja MGA :: DisplayDevice todėl jos tiesiog rūpinasi taukų ir parašėte "
- paviršiai: pervadinti & quot; paviršiai & quot; komponentas & quot; scena & quot;.
- paviršiai, apvalkalas: migruoti seanso duomenų modelis iš korpuso paviršių; .
- Grafika: Pakeisti fill_ipc_package () naudoti nekilnojamojo patarimų, .
- mir_client_library.h: Fix typo & quot; padaryti ir fiksavimo & quot; turėtų būti & quot; padaryti bet fiksavimo & quot;.
- API rodiklių valymas: Pašalinti šiek tiek klaidina * _enum_max_ vertybes ir pakeisti juos su tikslesnės daugiskaitos formas; .
- test_android_communication_package:. Nesitikėkite atidarytas fd turi būti & gt; 0, mes galime turėti uždarytą STDIN todėl šis teisingą reikšmę (LP: # 1.247.718),
- Atnaujinti dokumentai apie veikia Mir ant darbastalio paminėti naujos pakuotės ubuntu-desktop-Mir.
- offscreen: Pridėti ekraną, kuris teikia savo produkciją į offscreen buferiai;
- Grafika: "Android": nustatyti regresijos už hwc1.0 įtaisų, įmontuotų į r1228 (LP: # 1.252.433), .
- OffscreenPlatform teikia paslaugas, kad offscreen ekranas poreikius iš platformos.
- Grafika: "Android":. Konsoliduoja GLContexts klases naudoti;
- Nustatyti niezainicjowanej kintamasis sukelia atsitiktinai drm_auth_magic bandymų nesėkmes. (LP: # 1.252.144).
- Pridėti fullyish funkcinę udev įvynioti. Tai šiuo metu sėdi grafika / GBM, bet bus perkelta į aukščiausio lygio, kai pultelio aptikimo migruoja.
- Pridėti dydį paramą pavyzdžiui kodą; Demo šarvai ir klientai.
- eglapp: Išaiškinti pranešimus apie pikselių formatų (LP: # 1.168.304).
- Prideda paramą MirMotionEvent pagal pointer_coordinates vadinamų tool_type. Tai leis klientams pasakyti, kokio tipo priemonė yra naudojama, iš pelės / pirštu / etc. (LP: # 1.252.498),
- klientas, front: Blogas realius laisvų paviršius pikselių formatus klientams. (LP: # 1.240.833),
- Grafika: "Android": 1) Pakeisti hwc1.1 pasinaudoti sinchronizavimo tvoros metu kompozitorius anketa gl renderloop. Atkreipkite dėmesį, kad mes ne ilgiau laukti teikti užbaigti, mes perduoti šią atsakomybę vairuotojui ir branduolio. 2) parama Nexus 10. (LP: # 1.252.173) (LP: # 1.203.268),
- apvalkalas: neskelbia SurfacesContainer - jis gali būti privačios Mokėti .
- GBM:. Ar ne bałagan VT režimą sąrankos nesėkmės Tik atkurti ankstesnę VT režimą išjungti metu, jei tai buvo VT_AUTO
- Nustatyti avarijos dėl nepavyko eglMakeCurrent () skambučio, kai įdėtos režimu.
- apvalkalas: vienybė-Mir naudoja lukštais :: FocusSetter - padaryti antraštės visuomenę vėl
- Pridėti dydžio keitimo paramą klientų paviršių (Mir :: klientas :: MirSurface).
- Grafika: "Android": parama "senoji dar žinomas kaip 2012" "Nexus 7" HWC (NVIDIA tegra3 SoC) geriau. (LP: # 1.231.917),
- Pridėti dydį paramą * ClientBuffer klases. Dabar visada gausite matmenys nuo naujausių buferio paketą.
- "Android": paramos vairuotojas kabliukai Mali T604 (esančios "Nexus 10"),
- Pridėti plotį ir aukštį prie protokolo buferio pranešimų, rengiantis keičiamo dydžio paviršių.
- paviršiai, kriauklių, medienos ruoša, testai: neskelbia antraštes, kurie gali būti privačios paviršių. paviršiai / basic_surface.h, kaitlentės / surface_controller.h ir "Shell" / surface_builder.h
- pavyzdžiai: Restore GL framebuffer privalomas, kai sunaikinti Užkrauta tikslą
- pavyzdžiai, paviršiai, apvalkalas: pašalinti render_surfaces priklausomybę nuo BasicSurface
- geometrija: pašalinkite įgyvendinimą transliacijos operatoriai iš antraščių (LP: # 1.247.820),
- Pašalinti registracija užsakymo fokusavimo sekos, lankstymo, tai funkcionalumas, kad sesijos konteinerį.
- Patikrinkite sesijos tarpininkavimą spaudai įgytas apsaugines išteklius prieš bandant įsigyti naują buferį vardu klientui.Tai nustato veiklos regresija (LP: # 1.249.210).
- Kai patvarkymai į test_client_input.cpp.
- Factor keletą & quot krūva; ClientConfigCommon & quot;.
- Mažas valymo samdomiems konteinerių bandymo padidinti hermetizuoti.
- lukštais, paviršiai: Kitas žingsnis & quot; tvirtinimo & quot; paviršiniai hierarchijos -. tik skelbti sąsajas ir pradėti duomenų modelį į paviršių;
- Grafika: "Android":. HWC1.1 naudojimas EGL gauti papildomos informacijos apie buferio pikselių formatą;
- Nustatyti FTBS naudojant use_debflags = ON (pastatas Android armhf). (LP: # 1.248.014),
- Pridėti klientas įvesties imtuvo ataskaitą.
- dok: doxygen 1.8.4 skundžiasi pasenusią config taip bėgo & quot; doxygen U Doxyfile.in & quot; .
- Įgyvendinti Resize (), kad server-side Paviršiaus klases.
- Android: išvalyti tikroviški :: DisplayBuffer ir tikroviški :: DisplayBufferFactory
- Pridėti Resize () parama BufferStream, rengiantis keičiamo dydžio paviršių.
- Merge metaduomenų pokyčiai nuo naujai rekonstruotame lp: Mir,
- testai: pasikartojantys mg :: GraphicBufferAllocator Nepilni .
- pavyzdžiai: Pašalinti parazitinės naudoti mir / Shell / surface.h.
- front: pašalinkite ClientTrackingSurface nuo paviršiaus klasių hierarchija;
- nelygumai ABI ant serverio libmirserver11.
- nemini & quot; Renderable & quot ;. Tai sąsaja gyvuoja ne gana ilgą laiką dabar.
- Android įvestis:. Priskirti daugiau unikalių touch ID;
Kas naujo versijos 0.1.1:
- Naujos vieneto testai, įvairios pataisymai, siekiant išvengti leidyba vidaus antraštes, parama nurodant Mir įdėtos serverio pavadinimą arba per --name = argumentu ar MIR_SERVER_NAME aplinkos kintamąjį, pertvarkymą Mir "Android" ekrano klasių, ir pirmas žingsnis užtikrinant paviršiaus dydį paramą.
Komentarai nerastas