Sistemas de Ventanas Contenidos n n n Estructura

  • Slides: 23
Download presentation
Sistemas de Ventanas

Sistemas de Ventanas

Contenidos n n n Estructura del software de un SI Sistemas de ventanas Algunas

Contenidos n n n Estructura del software de un SI Sistemas de ventanas Algunas arquitecturas n n n MS Windows X Windows Macintosh

Sistemas Interactivos Aspectos sintácticos y léxicos Aplicación Interfaz Aspectos semánticos Sistema Interactivo Operador

Sistemas Interactivos Aspectos sintácticos y léxicos Aplicación Interfaz Aspectos semánticos Sistema Interactivo Operador

Niveles de Abstracción de un SI Núcleo Funcional Control del Diálogo Objetos de Interacción

Niveles de Abstracción de un SI Núcleo Funcional Control del Diálogo Objetos de Interacción Sistema de Ventanas Drivers Conocimiento del dominio Control de los obj. de interacción Control delsecuenciamientode las acciones del usuario Control de los recursos E/S Control de los dispositivos físicos Incremento en el nivel de abstracción

Niveles de Abstracción de un SI n Pueden ser implementados en diferentes formas: n

Niveles de Abstracción de un SI n Pueden ser implementados en diferentes formas: n n n C C Sistemas de capas Agentes Modelos mixtos Modularidad Ocultamiento de la información

Niveles de Abstracción de un SI n Administrador de dispositivos (‘Device driver’): controla un

Niveles de Abstracción de un SI n Administrador de dispositivos (‘Device driver’): controla un dispositivo físico n n Administrador de recursos (‘Resource manager’): controla los recursos involucrados en la interacción n n ej. instrucciones a nivel de pixels para mostrar el cursor ej. sistemas de ventanas Objetos de Interacción (OI) (‘Interaction objects’): entidades percibibles y manipulables por el usuario n n n Manipulación por medio de dispositivos de interacción Incluye presentación (´output´) e interacción (´input´). ej. Menúes, botones, barras de desplazamiento

Niveles de Abstracción en un SI n Controlador de diálogo (‘Dialogue Controller’): controla el

Niveles de Abstracción en un SI n Controlador de diálogo (‘Dialogue Controller’): controla el secuenciamiento lógico de las acciones del usuario. n Determina la lógica de la interacción n n Controla el estilo de la interacción n n ej. cuando un OI es accesible al usuario ej. utilización de menúes o líneas de comandos Núcleo funcional (‘Functional core’): implementa el conocimiento del dominio de la aplicación n ej. implementación de la semántica de un juego de ajedrez

Niveles de Abstracción en un SI n Arquitectura cliente - servidor n n Cada

Niveles de Abstracción en un SI n Arquitectura cliente - servidor n n Cada nivel incrementa el nivel de abstracción de los conceptos manipulados n n Cada nivel actúa como servidor para los niveles superiores, y como cliente de los inferiores ej. ‘clicks’ del mouse (nivel inferior) comandos a la aplicación (niveles superiores) Funciones de los niveles intermedios: n n Control de una porción de la funcionalidad de la IU completa Provisión de una correspondencia entre los niveles inferior y superior.

Sistemas de Ventanas n Funciones: n Administración y control de múltiples contextos n n

Sistemas de Ventanas n Funciones: n Administración y control de múltiples contextos n n Definición de una terminal abstracta n n n Separación en distintas partes físicas de la pantalla Independencia de los dispositivos para los clientes Definición de un modelo para expresar outputs e inputs a la terminal abstracta Administra los recursos asociados con los dispositivos de input y output.

Sistemas de Ventanas: estructura n Funcionalidad dividida en dos niveles (XWindows): n n “Sistema

Sistemas de Ventanas: estructura n Funcionalidad dividida en dos niveles (XWindows): n n “Sistema de ventanas” (‘window system’ - WS - o Nivel Base) n interfaz funcional con la aplicación (API - ‘Application Program Interface’) “Administrador de ventanas” (‘window manager’ - WM) n interfaz con el usuario Nivel Interfaz Presentación con el Usuario Nivel Base Modelo Output Comandos Modelo Input Administrador de Ventanas Sistema de Ventanas

Sistemas de Ventanas: estructura n Varios sistemas combinan WS + WM n n Sun.

Sistemas de Ventanas: estructura n Varios sistemas combinan WS + WM n n Sun. Windows, Macintosh, MS Windows, Ne. XT Otros permiten diferentes WM sobre el mismo WS n X, Ne. WS CPosibilita la diversidad y preferencias del usuario

Sistemas de Ventanas: estructura n Primeros WS: implementados como parte de un programa o

Sistemas de Ventanas: estructura n Primeros WS: implementados como parte de un programa o sistema. n n Implementación de los WS como parte integral del SO n n Ej. ambiente de programación Smalltalk Ej. Sun. View, Macintosh, Ne. XT, MS Windows Diferentes WS operando en el mismo SO n n n Ej. X, Ne. WS Los WS operan como procesos separados Utilizan los mecanismos de comunicación interprocesos del SO para conectarse con las aplicaciones.

Sistemas de Ventanas: Nivel Base n Interfaz procedural al sistema de ventanas n n

Sistemas de Ventanas: Nivel Base n Interfaz procedural al sistema de ventanas n n n Primeros WS: diferentes interfaces para distintas plataformas X Windows: interfaz independiente del hardware Incluye: n “Modelo de output”: conjunto de procedimientos utilizados para realizar presentaciones en la pantalla n n ej. primitivas gráficas, operaciones con pixels “Modelo de input”: tratamiento de los distintos eventos producidos por el usuario n ej. cola de eventos Presentación Comandos WM Output Input WS

Sistemas de Ventanas: Nivel Base n Comunicación aplicaciones - WS: n n Invocaciones directas

Sistemas de Ventanas: Nivel Base n Comunicación aplicaciones - WS: n n Invocaciones directas de los procedimientos provistos por el WS, o ‘traps’ especiales del SO Comunicación interprocesos, a través de un protocolo de red (X-Windows) C La aplicación puede ejecutarse en un lugar diferente de la interfaz C Interfaces sencillas con diferentes lenguajes de programación D Eficiencia WM Presentación Comandos Output Input WS

Sistemas de Ventanas: Interfaz con el Usuario n n Operación de las ventanas X

Sistemas de Ventanas: Interfaz con el Usuario n n Operación de las ventanas X Windows: WM implementado como un proceso diferente (ej. mwm, olwm) n Permite el cambio de la forma de interactuar n n Protocolo standard a través del cual se comunican el nivel base y el WM n n Reemplazando un proceso de WM por otro Los programas puedan ejecutarse independientemente del WM actual. Implementa ‘look & feel’ n n Presentación Comandos WM Output Input WS

Sistemas de Ventanas: Presentación n n Apariencia de la pantalla La mayoría de los

Sistemas de Ventanas: Presentación n n Apariencia de la pantalla La mayoría de los WS actuales están basados en la metáfora de escritorio (‘desktop’) n n WIMP (‘Windows-Icons-Menus-Pointing’) Algunos aspectos determinados por el WS n n n Formas en que pueden disponerse las ventanas “Iconificación” Areas de control para efectuar operaciones sobre la ventana Manipulaciones posibles WM Presentación Comandos Título de las ventanas Fondo (‘Background’) Output Input WS

Sistemas de ventanas: Comandos n Formas de control de las ventanas por el operador

Sistemas de ventanas: Comandos n Formas de control de las ventanas por el operador n n Generalmente, acciones por teclado y mouse Objetivo básico: redireccionar los eventos producidos por el usuario al proceso cliente correspondiente n ‘Input focus’: ventana que recibe actualmente el input del usuario (“ventana activa”) n Formas de especificarlo: n n ‘Click-to-focus’ ‘Mouse focus’ Presentación Comandos WM Output Input WS

X-Windows n Arquitectura cliente - servidor n El software de la aplicación y el

X-Windows n Arquitectura cliente - servidor n El software de la aplicación y el operador pueden estar localizados en diferentes máquinas XServer Requisitos Eventos XClient

X Windows XProtocol Red Nivel independiente del hardware Xlib Nivel dependiente del hardware .

X Windows XProtocol Red Nivel independiente del hardware Xlib Nivel dependiente del hardware . . . XDraw. Line. . . Red Pantalla Teclado Mouse XClient 1 XServer Xlib XClient 2

X Windows Programas de Aplicación Window Manager Toolkit Window System Paquete Gráfico

X Windows Programas de Aplicación Window Manager Toolkit Window System Paquete Gráfico

Macintosh / MS Windows Programas de Aplicación Window System Paquete Gráfico Window Manager Toolkit

Macintosh / MS Windows Programas de Aplicación Window System Paquete Gráfico Window Manager Toolkit

Sun Windows Programas de Aplicación Paquete Gráfico Toolkit Window System Window Manager

Sun Windows Programas de Aplicación Paquete Gráfico Toolkit Window System Window Manager

Java Visualizador Servidor Datos ‘Applet’ Máquina Virtual Java n n Los ‘applets’ son aplicaciones

Java Visualizador Servidor Datos ‘Applet’ Máquina Virtual Java n n Los ‘applets’ son aplicaciones interactivas completas La interfaz reside completamente en una sóla máquina