Kvartskompositör

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 1 september 2018; verifiering kräver 1 redigering .

Quartz Compositor  är fönstersystemet som används i Mac OS X. Det är ansvarigt för att presentera och underhålla rastrerad och renderad grafik.

Översikt

Quartz Compositor är det underliggande verktyget som används för att överföra bilder till grafikkortsminne i Mac OS X. Bitmapdata som genereras av Quartz 2D , OpenGL , Core Image , QuickTime eller andra systemprocesser skrivs till ett speciellt minnesområde som kallas page minne . Kompositören läser sedan data från sidminnet och konverterar den till en bild för visning genom att skriva den till grafikkortets framebuffer . Quartz Compositor accepterar endast bitmappsdata och är den enda processen som har direkt tillgång till grafikkortets rambuffert. [ett]

När du manipulerar enskilda fönster tar Quartz Compositor en bitmapp som innehåller fönstrets innehåll från dess renderare, såväl som dess position. Renderaren kan variera från applikation till applikation, men de flesta använder Quartz 2D. Quartz Compositor fungerar alltså som en "visuell mixer" genom att lägga till detta fönster till den aktuella skärmscenen. Denna modell gör Mac OS X-fönstersystemet unikt, eftersom enskilda processer inte kan göra anspråk på full äganderätt till hela scenen på skärmen. [2]

I sin roll som fönsterhanterare har Quartz Compositor även en händelsekö som tar emot händelser som tangenttryckningar eller musklick. Quartz Compositor avköar händelser genom att bestämma vilken process som äger fönstret där händelsen inträffade och skickar händelsen till processen. [3]

Quartz Extreme

Mac OS X v10.2 introducerade Quartz Extreme-teknik: grafikprocessoracceleration (GPU) Quartz Compositor. Med Quartz Extreme förbrukar inte scenkompositionen processorcykler . Quartz Compositor arbetar med en grafikprocessor (GPU), som kapslar in varje renderad grafiksida i en OpenGL-yta eller texturkarta. GPU:n kartor och ytor, ger den färdiga bilden, som levereras direkt till grafikkortets framebuffer.

Quartz Extreme använder endast OpenGL-kommandon och kräver ett grafikkort kopplat till en AGP 2X eller snabbare port (inklusive AGP 4X, 8X och PCI Express ), stöder texturer och kartor av alla storlekar, eftersom många renderare inte har några storleksbegränsningar (t.ex. Quartz 2D ). [1] Den här tekniken är aktiverad som standard på Mac -datorer med följande typer av grafikkort : [4]

Quartz Extreme är inte samma sak som Quartz 2D Extreme, där GPU-accelerationer är valfria. Dessutom är alla typer av GPU som kan återge Core Image -kommandon också kompatibla med Quartz Extreme.

Hjälp och länkar

  1. 1 2 ArsTechnica - Mac OS X 10.4 Tiger - Quartz (inte tillgänglig länk) . Datum för åtkomst: 12 februari 2007. Arkiverad från originalet den 4 april 2012. 
  2. Apple - Utvecklare - Översikt över grafik och bildbehandling (länk ej tillgänglig) . Hämtad 12 februari 2007. Arkiverad från originalet 23 februari 2012. 
  3. Apple - Utvecklare - Mac OS X Tekniköversikt: Grafik, bildbehandling och multimedia ( otillgänglig länkhistorik ) . Hämtad 18 april 2007.   (inte tillgänglig länk)
  4. Apple - Mac OS X 10.4: Krav för Quartz Extreme och Core Image-grafik (nedlänk) . Datum för åtkomst: 12 februari 2007. Arkiverad från originalet den 4 april 2012. 

Se även

Länkar