1 la evolución del desktop linux franco catrin l. tuxpan

28
1 La evolución La evolución del Desktop del Desktop Linux Linux Franco Catrin L. TUXPAN

Upload: gilberto-barro

Post on 29-Jan-2016

217 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

1

La evolución del La evolución del Desktop LinuxDesktop Linux

Franco Catrin L.TUXPAN

Page 2: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

2

Masificación de Linux

● Linux en el servidor no es ninguna novedad

● Linux en estaciones de trabajo (Desktop) avanza, pero lento

● Los requerimientos en cada caso son muy distintos

● En el estado actual, entrar en el Desktop no es fácil

Page 3: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

3

Corporate Desktop

● Son importantes: Productividad Administración simple

● Hardware y software acotados● Requerimientos uniformes● RedHat, IBM,

Novell/SuSE/Ximian están en eso

Page 4: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

4

Home Desktop

● Se da importancia a Facilidad de uso Soporte de hardware heterogéneo Eye-candy features

● Software es heterogéneo● Ayuda cercana no siempre

presente

Page 5: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

5

Falencias actuales

● El sistema no esta pensado para el Desktop

● Escasa integración entre el hardware y las aplicaciones

● Cada Desktop Environment es un mundo aparte

● Diversidad es buena, pero requiere multiples implementaciones

Page 6: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

6

Soluciones de parche

● Kudzu permite configurar dispositivos, pero las aplicaciones no los conocen

● Eye-candy en KDE es en base a hacks (no X friendly)

● GNOME rechaza parches que son hacks, hasta que haya soporte en X

Page 7: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

7

El proyecto FreeDesktop

● Son proyectos y especificaciones bajo un objetivo común

● Es la base de ideas para cada Desktop Environment independiente

● Busca eliminar las falencias actuales del Desktop Linux/Unix

● Algunos de sus proyectos ya estan en uso

Page 8: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

8

Proyectos conocidos de FD.O

● Startup-notification Feedback de ejecución de aplicaciones

● System tray protocol Provee un area de notificación

● Fontconfig Simplifica el uso de fonts

Page 9: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

9

Software en desarrollo

● D-BUS : Bus de mensajes● HAL : Hardware abstraction Layer● Cairo : API gráfica 2D● Xserver : implementación de X● Gstreamer : Stream media

framework● ... y otros

Page 10: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

10

D-BUS

● Provee comunicacion Peer to Peer entre aplicaciones

● Es de alto nivel, usa Mensajes● Soporta distintos transportes● Existen un bus de sistema, y

buses de sesión

Page 11: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

11

Componentes de D-BUS

● Servicios : Representan un punto de conexión

Usan nombres humanos● Interfaces:

Definen los mensajes que entiende el servicio

● Mensajes

Page 12: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

12

Usos de D-BUS

● Existen bindings para glib, qt y python

● Las aplicaciones mapean servicios a objetos

● Reemplaza a IPCs de bajo nivel en las aplicaciones

Page 13: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

13

Hardware Abstraction Layer

● Las aplicaciones pueden conocer el hardware presente

● Independiente del hardware y sistema operativo

● Se pueden hacer consultas o recibir notificaciones

● Utiliza D-BUS

Page 14: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

14

HAL : Relación con drivers

● No reemplaza a los drivers● Permite cargar el driver

necesario o pedir instrucciones al usuario

● Reemplaza a Kudzu y probablemente hotplug

Page 15: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

15

Arquitectura de HAL

Page 16: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

16

Cairo

● Biblioteca vectorial 2D● Multiples backends (PDF, Xlib...)● Concepto similar a Quartz de

MacOSX● Tiene operaciones para :

Strokes curvas spline manejo de imagenes fonts con antialias

Page 17: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

17

Backends de Cairo

● X Window● PostScript (impresión)● Memory pixmaps● SVG● En progreso:

PDF OpenGL, proyecto glitz de fd.o

Page 18: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

18

Ejemplo de resultado con Cairo

Page 19: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

19

Xserver

● X server con diseño moderno● Conocido por sus transparencias● Es un DIX con 3 DDX

DIX : Device Independant X DDX : Device Dependant X

➔Kdrive : arquitectura de drivers para Unix compacta y simple

➔Cygwin : soporte Win32➔Xorg : DDX de XFree (no funciona aun)

Page 20: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

20

Usos de fd.o XServer

● El principal uso es experimentar● A medida que funcione su capa

DDX, podria reemplazar a Xfree/Xorg

● Kdrive soporta muy pocos dispositivos de video aun

● Perfecto para sistemas embedidos, ocupa alrededor de 1MB

Page 21: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

21

Experimentos con fd.o XServer

● Diseño e implementacion de nuevas extensiones

● Eye-candy: Efectos tipo MacOSX Transparencias, sombras, etc

● Simplifica algunas cosas como VNC desde framebuffer

Page 22: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

22

XFIXES Extension

● Agrupa distintas mejoras a X● Estas mejoras no estan

relacionadas● Funciona como apoyo a otras

extensiones (RandR, Damage)

Page 23: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

23

XDamage Extension

● Notifica cuando se modifica un area del framebuffer

● Puede acumular rectangulos para mejorar rendimiento

● Aplicaciones como VNC, pueden conocer las areas modificadas sin polling

Page 24: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

24

Composite Extension

● El contenido de las ventanas se dibuja off-screen

● Contenido off-screen se copia posteriormente a on-screen

● Una aplicacion puede modificar el buffer off-screen y luego copiar

● La copia puede ser automática si solo se va a leer

Page 25: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

25

Usos de nuevas extensiones

● Ventanas translúcidas automáticas

● Zoom y escalado sin polling● VNC sin polling● Efectos como sombras de

ventanas de aplicación y pop-up● Demo...

Page 26: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

26

En desarrollo : Storage

● Recolecta metadata de archivos● Permite realizar busquedas MUY

rapidas sobre contenido multimedia

● Mejor que usar directorios● Ejemplos:

Buscar música por autor o por estilo Buscar emails de cierto contexto

Page 27: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

27

En desarrollo : System Services

● Reemplazo al init● Basado en notificaciones y

activación por D-BUS● Implementadores de servicios,

escriben en cualquier lenguaje soportado por D-BUS

● Ventana de login lo antes posible, inicio de servicios posterior

● Eventos y excepciones se notifican

Page 28: 1 La evolución del Desktop Linux Franco Catrin L. TUXPAN

28

Referencias

● http://freedesktop.org● http://www.gnome.org/~seth/

(cuando esté online)