Arquitectura del sistema

Para comprender más fácilmente MOSX podemos verlo como un conjunto de capas, donde cada una depende de la capa inferior:

Al tope están los ambientes de aplicación, o sea, los ambientes donde se ejecutan las aplicaciones. MOSX provee cinco:

QuickTime es un caso especial. Provee servicios que pueden utilizar las aplicaciones, pero también ofrece servicios que son característicos de las aplicaciones.

La capa Application Services se encarga del manejo de la pantalla (rendering, ventanas, cursor), impresión y manejo de eventos.

Core Services ofrece los servicios que no están involucrados con la interfaz gráfica: manejo de strings, colecciones, procesos, threads, recursos, memoria e interacción con el sistema de archivos.

El Kernel environment proporciona los servicios esenciales para el funcionamiento del sistema de operaciones. Consiste de cinco componentes:

Application Services: Gráficos y ventanas

La parte de MOSX que se encarga de los gráficos y el manejo de ventanas se llama Quartz, y se compone de Core Graphics Rendering y Core Graphics Services.

El Core Graphics Rendering junto a QuickDraw, QuickTime y OpenGL se encargan del pintado (rendering). Todas estas bibliotecas (o librerías, como prefiera llamarlas) dependen de la otra parte de Quartz, Core Graphics Services.

El Core Graphics Services se ocupa de

El Core Graphics Services tiene un único proceso para el manejo de ventanas, que es el servidor de ventanas. Este servidor no hace ninguna clase de rendering, sino que se comunica con las capas superiores para ello.

Las ventanas están representadas como mapas de bits (bitmaps) que incluyen un canal alfa (para efectos de transparencia) e información sobre anti-aliasing. Además, estos bitmaps tienen un buffer para facilitar el redibujado de las ventanas sin necesidad de que lo haga la aplicación dueña de la ventana.

El Core Graphics Rendering es una biblioteca gráfica que utiliza vectores. El modelo interno que usa es el Portable Document Format (PDF). También es la base del sistema de impresión de MOSX.

Application Services: Sistema de impresión

Nueve módulos entran en juego para que el usuario pueda escoger una impresora, mandar trabajos de impresión y manejar las colas de impresión:

Los fabricantes de impresoras son los responsables de proveer el Printer Module y el Printing Dialog Extension para cada modelo de impresora.

Application Services: Otros

Los otros servicios que provee esta capa son los manejados por:

 

Core Services>>>>