Vojmapo por plibonigi Wayland-subtenon en Fajrovulpo

Martin Stransky, prizorganto de Fajrovulpo por Fedora kaj RHEL, kiu portas Fajrovulpon al Wayland, publikigis raporton reviziantan la plej novajn evoluojn en Fajrovulpo funkcianta en medioj bazitaj en protokolo de Wayland.

En la venontaj eldonoj de Fajrovulpo, estas planite solvi la problemojn observitajn en konstruoj por Wayland per la tondujo kaj pritraktado de ŝprucfenestroj. Ĉi tiuj funkcioj ne povus esti tuj efektivigitaj pro diferencoj en la aliro al sia efektivigo en X11 kaj Wayland. En la unua kazo, malfacilaĵoj ekestis pro la Wayland-tondujo funkcianta nesinkrone, kio postulis la kreadon de aparta tavolo por abstrakti aliron al la Wayland-tondujo. La specifita tavolo estos aldonita al Firefox 93 kaj ebligita defaŭlte en Firefox 94.

Rilate ŝprucfenestrojn, la ĉefa malfacilaĵo estis, ke Wayland postulas striktan hierarkion de ŝprucfenestroj, t.e. gepatra fenestro povas krei infanan fenestron kun ŝprucfenestro, sed la sekva ŝprucfenestro iniciatita de tiu fenestro devas ligi al la origina infanfenestro, formante ĉenon. En Fajrovulpo, ĉiu fenestro povis generi plurajn ŝprucfenestrojn, kiuj ne formis hierarkion. La problemo estis, ke kiam vi uzas Wayland, fermi unu el la ŝprucfenestroj postulas rekonstrui la tutan ĉenon de fenestroj kun aliaj ŝprucfenestroj, malgraŭ la fakto, ke la ĉeesto de pluraj malfermitaj ŝprucfenestroj ne estas malofta, ĉar menuoj kaj ŝprucfenestroj estas efektivigitaj en formo de. ŝprucfenestroj konsiletoj, aldonaj dialogoj, permespetoj ktp. La situacio ankaŭ estis komplikita de difektoj en Wayland kaj GTK, pro kiuj malgrandaj ŝanĝoj povus konduki al diversaj regresoj. Tamen, la kodo por pritrakti ŝprucfenestrojn por Wayland estis sencimigita kaj estas planita esti inkluzivita en Firefox 94.

Aliaj plibonigoj rilataj al Wayland inkluzivas la aldonon de 93 skalŝanĝoj al Fajrovulpo sur malsamaj DPI-ekranoj, kiuj forigas flagradon kiam oni movas fenestron al la rando de la ekrano en mult-monitoraj agordoj. Fajrovulpo 95 planas trakti problemojn, kiuj aperas kiam oni uzas la tren-&drop-interfacon, ekzemple, kiam oni kopias dosierojn de eksteraj fontoj al lokaj dosieroj kaj kiam oni movas langetojn.

Kun la liberigo de Firefox 96, la Fajrovulpo-haveno por Wayland estas planita esti alportita al totala egaleco en funkcieco kun la X11-konstruaĵo, almenaŭ kiam ĝi funkcias en la GNOME-medio de Fedora. Post ĉi tio, la atento de la programistoj estos ŝanĝita al perfektigi la laboron en Wayland-medioj de la GPU-procezo, kiu enhavas kodon por interagi kun grafikaj adaptiloj kaj kiu protektas la ĉefan retumilon de kraŝo en kazo de ŝoforaj misfunkciadoj. La GPU-procezo ankaŭ estas planita por inkludi kodon por videomalkodado uzante VAAPI, kiu estas nuntempe prizorgita en enhavpretigaj procezoj.

Aldone, ni povas noti la inkludon de strikta reteja izolita reĝimo, disvolvita kiel parto de la projekto Fission, por malgranda procento de uzantoj de la stabilaj branĉoj de Firefox. Kontraste al la arbitra distribuo de klapeta prilaborado tra la disponebla procezgrupo (8 defaŭlte), uzata ĝis nun, la izolinia reĝimo metas la prilaboradon de ĉiu retejo en sian propran apartan procezon, apartigitan ne per langetoj, sed per domajno (Publika). Sufikso), kiu permesas plian izoligan enhavon de eksteraj manuskriptoj kaj iframe-blokoj. Ebligi Fission-reĝimon estas kontrolita per la variablo "fission.autostart=true" en about:config aŭ sur la paĝo pri:preferences#eksperimenta.

Strikta izoleca reĝimo helpas protekti kontraŭ flankaj atakoj, kiel tiuj asociitaj kun Spectre-vundeblecoj, kaj ankaŭ reduktas memorfragmentiĝon, pli efike resendas memoron al la operaciumo, minimumigas la efikon de rubkolekto kaj intensaj kalkuloj sur paĝoj en aliaj procezoj, kaj pliigas la efikecon de ŝarĝa distribuo tra malsamaj CPU-kernoj kaj pliigas stabilecon (la kraŝo de la procezo prilaboranta la iframon ne influos la ĉefan retejon kaj aliajn langetojn).

Inter la konataj problemoj, kiuj aperas kiam oni uzas la striktan izoligan reĝimon, estas rimarkinda pliiĝo en la konsumo de memoro kaj dosiera priskribilo dum malfermado de granda nombro da langetoj, kaj ankaŭ interrompo de la laboro de iuj aldonaĵoj, malapero de iframe enhavo kiam presi kaj voki la ekrankopian registran funkcion, reduktitan efikecon de konservado de dokumentoj de iframe, Perdo de enhavo de kompletigitaj sed ne senditaj formoj kiam sesio estas restarigita post kraŝo.

Aliaj ŝanĝoj en Fajrovulpo inkluzivas la kompletigon de la migrado al la Fluent-lokiga sistemo, plibonigoj al Alta Kontrasta Reĝimo, la aldono de la kapablo registri procezajn agadoprofilojn per unu klako al about:processes, kaj la forigon de agordo por redoni la malnovan. stilo de la nova langeto-paĝo kiu estis uzita antaŭ Firefox 89.

fonto: opennet.ru

Aldoni komenton