Quartz Compositor

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск


Quartz Compositor — это оконная система, используемая в Mac OS X. Она отвечает за представление и поддержание растеризованной и отрисованной графики.

Обзор[править | править вики-текст]

Quartz Compositor — основополагающее средство, которое используется для передачи изображений в память графической платы в Mac OS X. Растровые данные, получаемые в результате работы Quartz 2D, OpenGL, Core Image, QuickTime или других процессов системы, записываются в специальную область памяти, страничную память. Затем композитор читает данные из страничной памяти и преобразует их в изображение для отображения, записывая его в кадровый буфер видеокарты. Quartz Compositor принимает только растровые данные, и является единственным процессом, который имеет прямой доступ к буферу кадров видеокарты.[1]

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

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

Quartz Extreme[править | править вики-текст]

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

Quartz Extreme использует только команды OpenGL и требует видеокарту, присоединенную к порту AGP 2X или быстрее (включая AGP 4X, 8X, и PCI Express), поддерживает текстуры и карты любого размера, так как множество прорисовщиков не имеет ограничений на размер (например, Quartz 2D).[1] Эта технология включена по умолчанию на компьютерах Mac со следующими типами графических карт:[4]

  • ATI Radeon, AGP, минимум 16MB VRAM, или новее
  • NVIDIA GeForce2 MX, минимум 16MB VRAM, или новее
  • Определенные Intel-системы используют встроенную видеокарты Intel, такие как GMA950.

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

Справки и ссылки[править | править вики-текст]

См. также[править | править вики-текст]

Ссылки[править | править вики-текст]