Quartz Compositor er vinduessystemet , der bruges i Mac OS X. Det er ansvarligt for at præsentere og vedligeholde rasteriseret og gengivet grafik.
Quartz Compositor er det underliggende værktøj, der bruges til at overføre billeder til grafikkorthukommelse i Mac OS X. Bitmapdata genereret af Quartz 2D , OpenGL , Core Image , QuickTime eller andre systemprocesser skrives til et særligt hukommelsesområde kaldet page hukommelse . Compositoren læser derefter dataene fra sidehukommelsen og konverterer dem til et billede til visning ved at skrive det til videokortets framebuffer . Quartz Compositor accepterer kun bitmapdata, og er den eneste proces, der har direkte adgang til grafikkortets framebuffer. [en]
Når du manipulerer individuelle vinduer, tager Quartz Compositor en bitmap , der indeholder vinduets indhold fra dets renderer, såvel som dets position. Gengiveren kan variere fra applikation til applikation, men de fleste bruger Quartz 2D. Quartz Compositor fungerer således som en "visuel mixer" ved at tilføje dette vindue til den aktuelle skærmscene. Denne model gør Mac OS X-vinduesystemet unikt, da individuelle processer ikke kan kræve det fulde ejerskab af hele scenen på skærmen. [2]
Quartz Compositor har i sin rolle som vinduesmanager også en begivenhedskø, der modtager begivenheder såsom tastetryk eller museklik. Quartz Compositor sætter hændelser i kø ved at bestemme, hvilken proces der ejer vinduet, hvor hændelsen fandt sted, og videregiver hændelsen til processen. [3]
Mac OS X v10.2 introducerede Quartz Extreme-teknologi: grafikbehandlingsenhed (GPU) Quartz Compositor acceleration. Med Quartz Extreme bruger scenekomposition ikke processorcyklusser . Quartz Compositor fungerer ved hjælp af en grafikbehandlingsenhed (GPU), der indkapsler hver gengivet grafikside i et OpenGL-overflade- eller teksturkort. GPU'en kortlægger og overflader derefter, hvilket giver det færdige billede, som leveres direkte til videokortets framebuffer.
Quartz Extreme bruger kun OpenGL-kommandoer og kræver et grafikkort tilsluttet en AGP 2X eller hurtigere port (inklusive AGP 4X, 8X og PCI Express ), understøtter teksturer og kort af enhver størrelse, da mange renderere ikke har nogen størrelsesbegrænsninger (f.eks. Quartz 2D ). [1] Denne teknologi er som standard aktiveret på Mac -computere med følgende typer grafikkort : [4]
Quartz Extreme er ikke det samme som Quartz 2D Extreme, hvor GPU-accelerationer er valgfrie. Desuden er enhver type GPU, der er i stand til at gengive Core Image - kommandoer, også kompatibel med Quartz Extreme.
macOS | |
---|---|
Ansøgninger | |
Hjælpeprogrammer |
|
Teknologi og brugerflade _ |
|