Quartz Composer

Quartz Compositor — це віконна система, що використовується в операційній системі Mac OS X. Вона відповідна за подання та підтримку растеризованої та відмальованої графіки.

Огляд

Quartz Compositor — основоположний засіб, який використовується для передачі зображень в пам'ять графічної плати. Растрові дані, що отримуються в результаті роботи Quartz 2D, OpenGL, Core Image, QuickTime та інших процесів системи, записуються в спеціальну область пам'яті, сторінкову пам'ять. Потім композитор читає дані зі сторінкової пам'яті й перетворює їх на зображення для відображення, записуючи його в кадровий буфер відеокарти. Quartz Compositor приймає тільки растрові дані і є єдиним процесом, який має приймий доступ до буферу кадрів відеокарти.[1]

При керуванні окремими вікнами Quartz Compositor приймає растр, що має в собі вміст вікна від його візуалізатора а також його позицію. Візуалізатор може відрізнятися від застосунку до застосунку, однак більшість використовує Quartz 2D. Quartz Compositor, таким чином, виступає як «візуальний міксер», додаючи дане вікно до поточної сцени на екрані. Ця модель робить віконну систему Mac OS X унікальною, так як індивідуальні процеси не можуть вимагати повного володіння усією сценою на дисплеї.[2]

Як віконний менеджер Quartz Compositor має також чергу подій, в яку надходять події, такі як натиск клавіш або кліки мишою. Quartz Compositor витягує події з черги, визначаючи, який процес володіє вікном, де відбулася подія, та передає подію процесу.[3]

Quartz Extreme

В Mac OS X 10.2 була представлена технологія Quartz Extreme: прискорення графічним процесором (GPU) Quartz Compositor. З допомогою Quartz Extreme на композицію сцени не витрачаються процесорні такти. Quartz Compositor працює, використовуючи графічний процесор (ГП), інкапсулюючи кожну відмальовану графічну сторінку в поверхню або текстурну карту OpenGL. Потім ГП складає карти та поверхні, надаючи готове зображення, яке доставляється прямо в кадровий буфер відеокарти.

Quartz Extreme використовує тільки команди OpenGL і потребує відеокарту, під'єднану до порту AGP 2X або швидше (включно AGP 4X, 8X та PCI Express), підтримує текстури та карти будь-якого розміру, так як більшість візуалізаторів не має обмежень на розмір (наприклад, Quartz 2D). Ця технологія включена за замовчуванням на комп'ютерах Mac з наступними типами графічних карт:

  • ATI Radeon, AGP, мінімум 16MB VRAM, або новіше
  • NVIDIA GeForce2 MX, мінімум 16MB VRAM, або новіше
  • Деякі Intel-системи використовують інтегровані відеокарти Intel, такі як GMA 950.

Quartz Extreme — не те ж саме, що Quartz 2D Extreme, в котрій прискорення графічним процесором є опціональним. Більш того, будь-який тип ГП, здатний відмальовувати Core Image команди, також є сумісним з Quartz Extreme.

Див. також

Примітки

  1. Архівована копія. Архів оригіналу за 7 жовтня 2008. Процитовано 7 лютого 2011.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
  2. Архівована копія. Архів оригіналу за 11 грудня 2010. Процитовано 7 лютого 2011.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
  3. http://developer.apple.com/documentation/MacOSX/Conceptual/OSX_Technology_Overview/SystemTechnology/chapter_4_section_3.html