X vinduesmanager - X window manager
En X-vinduesadministrator er en vinduesadministrator, der kører oven på X Window-systemet , et vinduessystem, der hovedsageligt bruges på Unix-lignende systemer.
I modsætning til MacOS Classic , macOS og Microsoft Windows- platforme (undtagen Microsoft Windows explorer.exe shell-udskiftninger ), som historisk har leveret et leverandørstyret, fast sæt måder til at kontrollere, hvordan vinduer og ruder vises på en skærm , og hvordan brugeren kan interagere med dem, blev vinduesstyring til X Window System bevidst holdt adskilt fra softwaren, der leverede det grafiske display. Brugeren kan vælge mellem forskellige vinduesadministratorer fra tredjeparter, som adskiller sig fra hinanden på flere måder, herunder:
- tilpasning af udseende og funktionalitet:
- tekstlige menuer bruges til at starte programmer og / eller ændre indstillinger
- dokker og andre grafiske måder at starte programmer på
- flere desktops og virtuelle desktops (desktops større end den fysiske skærmstørrelse) og personsøgere for at skifte mellem dem
- forbrug af hukommelse og andre systemressourcer
- grad af integration med et skrivebordsmiljø , der giver en mere komplet grænseflade til operativsystemet og giver en række integrerede hjælpeprogrammer og applikationer.
Sådan fungerer X-vinduestyrere
Når en vinduesadministrator kører, omdirigeres nogle former for interaktion mellem X-serveren og dens klienter gennem vinduesadministratoren. Især når et forsøg på at vise et nyt vindue foretages, omdirigeres denne anmodning til vinduesadministratoren, der bestemmer vinduets startposition. Derudover reparerer de fleste moderne vindueschefer , hvilket normalt fører til, at et banner placeres øverst i vinduet og en dekorativ ramme trækkes rundt om vinduet. Disse to elementer styres af vinduesstyringen snarere end af programmet. Derfor, når brugeren klikker eller trækker disse elementer, er det vinduesadministratoren, der tager de relevante handlinger (såsom at flytte eller ændre størrelse på vinduet).
Vinduesadministratorer er også ansvarlige for ikoner . Faktisk findes der ikke ikoner på X Window System-kerneprotokolniveau . Når brugeren anmoder om, at et vindue ikonificeres, kortlægger vinduesadministratoren det (gør det ikke synligt) og træffer de relevante handlinger for at vise et ikon i stedet. De fleste moderne vinduesadministratorer viser ikke bogstaveligt talt ikoner, der repræsenterer ikoniserede vinduer længere. Ofte giver et hjælpeværktøjslinjeprogram adgang til ikoniserede vinduer.
Mens hovedvinduet med en vinduesadministrator er at administrere vinduerne, har mange vinduesadministratorer yderligere funktioner såsom håndtering af museklik i rodvinduet , præsentation af ruder og andre visuelle elementer, håndtering af nogle tastetryk (f.eks. Alt-F4 kan lukke et vindue ), beslutter, hvilket program der skal køres ved opstart osv.
Der findes standardiserede protokoller, der tillader normale klienter at kommunikere med vinduesadministratoren. Den oprindelige er Inter-Client Communication Conventions Manual (ICCCM), men dette er blevet erstattet af Extended Window Manager Hints (EWMH). Disse protokoller giver klienter mulighed for at anmode om titler til windows og ikoner, kontrollere om et vindue er ikonificeret, som muligvis er tilsluttet eller minimeret, og muligvis tilpasse windows-dekorationer, hvilket virtuelt skrivebord vinduet optager. Yderligere oplysninger fra vinduesadministratoren er tilgængelige gennem kerneprotokollen, herunder synligheden af vinduer, f.eks. Hvis et vindue er skjult på et andet virtuelt skrivebord , og finde ud af justeringerne til vinduesadministratorrammerne.
Typer af vinduesadministratorer
Stacking af vinduesadministratorer
En stabelvinduesmanager gengiver vinduerne en efter en på skærmen ved specifikke koordinater. Hvis det ene vindues område overlapper et andet, overskriver vinduet "ovenpå" en del af det andet synlige udseende. Dette resulterer i det udseende, der er kendt for mange brugere, hvor windows fungerer lidt som stykker papir på et skrivebord, som kan flyttes rundt og få lov til at overlappe hinanden.
I modsætning til at sammensætte vinduesadministratorer (se nedenfor) kan manglen på separate buffere uden for skærmen betyde øget effektivitet, men effekter som gennemsigtighed er ikke mulige.
Stacking af vinduesadministratorer inkluderer Amiwm , Blackbox , Oplysning , Fluxbox , FVWM , IceWM , MWM , Openbox og Window Maker .
Flisebelægning af vindueschefer
En vinduesmanager til fliser er en vinduesmanager med en organisering af skærmen i gensidigt ikke-overlappende rammer (deraf navnet fliser ) i modsætning til den traditionelle tilgang til koordinatbaseret stabling af objekter (windows), der forsøger at efterligne skrivebordsparadigmet .
Tiling-vinduesadministratorer inkluderer awesome , dwm , ion , larswm , ratpoison , Stumpwm , wmii , i3 , xmonad og XWEM .
Sammensætning af vinduesadministratorer
En sammensætningsvinduesmanager kan forekomme for brugeren, der ligner en stabling af vinduesmanager. Imidlertid gengives de enkelte vinduer først i individuelle buffere, og derefter sammensættes deres billeder på skærmbufferen; denne totrinsproces betyder, at visuelle effekter (såsom skygger, gennemskinnelighed) kan anvendes. Det betyder også, at sammensætningsvinduesadministratorer i sagens natur er mere ressource-sultne end en tilsvarende kraftfuld stablingsvinduesmanager. Af denne grund understøtter nogle vinduesadministratorer til X ikke komponering som standard, såsom Openbox . Komponering i Lubuntu
Historisk set gik Amiga i 1985, OSX i 2001, Java Looking Glass i 2003 og Windows Longhorn demo i 2003 (forsinket indtil Vista i 2007) forud for kompositionsindsats under X11. Kompositørvinduesadministratorer til X inkluderer:
- GNOME 's Mutter née Metacity (første dev-branch compositor i 2.7 eller 2.8 Wayback Machine fra 2004 Linux i dag - Release Digest: GNOME, 30. august 2004 - oprindelig compositor med stabil gren siden 2.14 i 2005 Re: Om Compositing eller 2006 Metacity branched til 2.14 — nuværende komponistarkitektur siden 2.22 Aktivér metacitetssammensætning i GNOME 2.22 | Tombuntu i 2008 — Metacity + Clutter, der blev født Mutter i 2011),
- Xfce 's Xfwm (siden 4.2 2004 eller 2005 Xfce 4.2.0 frigivet! ),
- Unity 's Compiz (siden 2005 - blev forkælet som Beryl i 2006, men projekterne blev slået sammen igen i 2007), og
- KDE 's KWin (siden 4.0 fra 2008).
Kompositeringsstøtte kan føjes til vinduesadministratorer, der ikke er sammensat, ved brug af kompositorer som compton .
Virtuelle vinduesforvaltere
En virtuel vinduesadministrator er en vinduesadministrator, der bruger virtuelle skærme, hvis opløsning kan være højere end opløsningen på ens skærm / skærmadapter og således ligne et todimensionelt virtuelt skrivebord med dets visningsport . Dette miljø er meget nyttigt, når man ønsker at have et stort antal vinduer åbne på samme tid. Der er oprettet et antal virtuelle vinduesadministratorer, herunder FVWM , Tvtwm , HaZe og andre.
Vinduesadministratorer, der kan udvides
Nogle vinduesadministratorer kan udvides eller programmeres af brugerskripter.
I disse vinduesadministratorer kan brugerne definere nye handlinger eller tilsidesætte standardindstillingerne eller reaktioner på forskellige begivenheder, som f.eks. Vinduesstørrelse og placeringsændringer, vindues oprettelse og sletning, nøgle og mus input, timer osv. De giver ofte on-the-fly kodeudførelse også.
Nogle eksempler på sådanne vinduesadministratorer og de anvendte sprog er:
- Fantastisk - Lua
- KWin - ECMAScript
- Qtile - Python
- Savfisk - "rep", en Lisp- dialekt
- Xmonad - haskell
- StumpWM - Common Lisp
- GWM - "ULL", en Lisp-dialekt
- Bspwm - C
Se også
- Sammenligning af X-vinduesadministratorer
- Re-parenting vinduemanager for en populær implementeringsteknik
- X Window System-protokoller og arkitektur til kontekst
- Windowing-system
- Wmctrl - et kommandolinjeprogram, der bruges til at kontrollere vinduer i EWMH- og NetWM-kompatible vinduesadministratorer
- xdotool - et andet kommandolinjeprogram, der bruges til at kontrollere windows
- Wayland komponist