X11, la GUI Michele “O-Zone” Pinassi [email_address] http://www.zerozone.it SLUG – Siena Linux User Group
Sommario <ul><li>Cos'è una GUI ?   </li></ul><ul><li>GUI vs Console </li></ul><ul><li>X11, la GUI per *nix </li></ul><ul><...
Cos'è una GUI ? GUI è l'acronimo di “ Graphical User Interface” , in italiano “ Interfaccia Grafica”. La GUI permette all'...
GUI vs console GUI console
X11, la GUI per *nix I sistemi UNIX Like (compreso BSD e Linux) adottano il sistema X come GUI standard. X gestisce l'ambi...
Breve storia di X11, o “X” X nasce nei laboratori del MIT nel 1984. La versione attuale del protocollo (11) è stata comple...
Architettura di X X è un'architettura client-server progettato per essere utilizzato agevolmente attraverso la rete. Il se...
Cos'è X in realtà ? <ul><li>X11 è un protocollo asincrono composto da 4 classi di comandi: </li></ul><ul><li>REQUEST – Il ...
X != Xfree != Xorg X è il sistema “ufficiale” del consorzio X.org, divenuta fondazione ( www.x.org ), progettato per siste...
X in userspace Nei sistemi *nix, il CLIENT ed il SERVER X sono due processi separati (nei sistemi casalinghi sono spesso s...
Il Window Manager Il Window Manager, o “client”, è un programma che, tramite il protocollo X11, si occupa di istruire il s...
La scelta del WM <ul><li>CPU e RAM disponibili </li></ul><ul><li>Più il WM è complesso più RAM e  CPU richiede. Avere un b...
KDE e Gnome <ul><li>KDE e Gnome </li></ul><ul><li>Belli, completi di programmi a corredo per ogni esigenza (grafica, uffic...
KDE
Gnome
Xfce <ul><li>Xfce </li></ul><ul><li>Una via di mezzo tra un sistema scarno e veloce ed una GUI complessa come KDE o Gnome....
XFce
IceWM ed altri... <ul><li>IceWM </li></ul><ul><li>“ The goal of IceWM is speed, simplicity, and not getting in the user's ...
<ul><li>Sawfish </li></ul><ul><li>“ Sawfish is an extensible window manager using a Lisp-based scripting language --all wi...
IceWM
Enlightenment
WindowMaker
Sawfish
AfterStep
X vs MS Windows <ul><li>X è un sistema Client-Server creato per la rete e per macchine Unix. Windows è un sistema GUI “loc...
Varie ed eventuali  Domande ?
Upcoming SlideShare
Loading in …5
×

X La Gui

2,586 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,586
On SlideShare
0
From Embeds
0
Number of Embeds
8
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

X La Gui

  1. 1. X11, la GUI Michele “O-Zone” Pinassi [email_address] http://www.zerozone.it SLUG – Siena Linux User Group
  2. 2. Sommario <ul><li>Cos'è una GUI ? </li></ul><ul><li>GUI vs Console </li></ul><ul><li>X11, la GUI per *nix </li></ul><ul><li>Breve storia di X11, o “X” </li></ul><ul><li>Architettura di X </li></ul><ul><li>Cos'è X in realtà ? </li></ul><ul><li>X in user-space </li></ul><ul><li>X != Xfree != Xorg </li></ul><ul><li>Il Window Manager </li></ul><ul><li>La scelta del WM </li></ul><ul><li>X vs MS Windows </li></ul><ul><li>Varie ed eventuali </li></ul>
  3. 3. Cos'è una GUI ? GUI è l'acronimo di “ Graphical User Interface” , in italiano “ Interfaccia Grafica”. La GUI permette all'utente di interagire agevolmente con la “macchina” (computer) attraverso una serie di dispositivi (mouse, tastiera) , simboli (icone) in maniera piacevole ed intuitiva. La GUI si differenzia dalla “consolle” per la presenza di elementi grafici come finestre, icone e colori ad alta definizione.
  4. 4. GUI vs console GUI console
  5. 5. X11, la GUI per *nix I sistemi UNIX Like (compreso BSD e Linux) adottano il sistema X come GUI standard. X gestisce l'ambiente di lavoro per le interfacce grafiche, ovvero il disegno, lo spostamento delle finestre, interazione con mouse e tastiera. X non gestisce l'interfaccia grafica utente e lo stile grafico delle applicazioni (aspetto). X è anche trasparente dal punto di vista della rete: la macchina dove “gira” il server non deve essere necessariamente anche il client !
  6. 6. Breve storia di X11, o “X” X nasce nei laboratori del MIT nel 1984. La versione attuale del protocollo (11) è stata completata nel 1987: X è un sistema con molti decenni alle spalle: venne sviluppato come parte del Progetto Athena (una cooperazione tra MIT, IBM, e DEC) per sviluppare un sistema di terminali che potessero essere usati per l'insegnamento. X divenne presto uno standard e i “big” dell'informatica si riunirono in un consorzio, X.org, per decidere le specifiche di X11.
  7. 7. Architettura di X X è un'architettura client-server progettato per essere utilizzato agevolmente attraverso la rete. Il server X si ocupa essenzialmente di disegnare sullo schermo mentre il client informa il server su quello che deve disegnare. A differenza delle applicazioni di rete più comuni, il SERVER è sulla macchina utente ed il CLIENT sul...server di rete !
  8. 8. Cos'è X in realtà ? <ul><li>X11 è un protocollo asincrono composto da 4 classi di comandi: </li></ul><ul><li>REQUEST – Il client richiede un'operazione </li></ul><ul><li>REPLY – Risposta ad una richiesta </li></ul><ul><li>EVENT – Evento, ad es. Mouse o tastiera </li></ul><ul><li>ERROR - Errore </li></ul><ul><li>Il protocollo implementa le primitive grafiche necessarie al disegno sullo schermo di quanto richiesto. Elemento principale del sistema è la WINDOW (finestra), che può essere nidificato dentro altre WINDOWS, sovrapposto, spostato, ingrandito etc. etc. Le operazioni sulle WINDOW generano eventi. La responsabilità per quanto disegnato sullo schermo è del CLIENT. </li></ul>
  9. 9. X != Xfree != Xorg X è il sistema “ufficiale” del consorzio X.org, divenuta fondazione ( www.x.org ), progettato per sistemi UNIX. Nel 1992 venne fondato il progetto Xfree, una organizzazione di volontari decisa a creare un sistema X “liberamente distribuibile” per i nuovi desktop pc basati su CPU X86. Basato sulle specifiche di X11, è un server X open-source. Xorg è un fork relativamente recente, provocato da una disputa tra gli sviluppatori di Xfree86.
  10. 10. X in userspace Nei sistemi *nix, il CLIENT ed il SERVER X sono due processi separati (nei sistemi casalinghi sono spesso sulla stessa macchina) che girano nello spazio utente. Questo perchè può non essere affatto necessario avere una GUI su un computer (ad. es. un server di posta non ha senso che abbia una GUI). Oltretutto X richiede molta memoria e cicli di CPU, oltre ad una scheda grafica e dispositivi di input. Avere X come processo utente aumenta la sicurezza nel caso di “bugs” nel server o client e permette pure di avere N utenti con N “windows manager” diversi !
  11. 11. Il Window Manager Il Window Manager, o “client”, è un programma che, tramite il protocollo X11, si occupa di istruire il server X su come e cosa deve disegnare sullo schermo. Ne esistono diversi, che si differenziano per stile grafico, complesità, completezza e “filosofia”. I due più famosi, e completi, sono KDE ( www.kde.org ) e Gnome ( si legge “g-nome” - www.gnome.org ). Questo due WM sono dei sistemi complessi e completi DE (Desktop Environment), composti da decine di programmi ed utility native, che permettono un utilizzo “desktop” del sistema *nix tanto da ricordare MS Windows.
  12. 12. La scelta del WM <ul><li>CPU e RAM disponibili </li></ul><ul><li>Più il WM è complesso più RAM e CPU richiede. Avere un bellissimo KDE ma che per aprire una finestra richiede 30 secondi non ha molto senso ! </li></ul><ul><li>Target di utenza </li></ul><ul><li>Un WM come KDE o Gnome è adatto a chi si avvicina a *nix o per chi deve fare lavoro di “ufficio”. </li></ul><ul><li>Scopo del sistema </li></ul><ul><li>Se l'unico utilizzo del PC sarà navigazione in rete e lettura posta basterà un WM leggero e semplice. </li></ul><ul><li>Sicurezza e stabilità </li></ul><ul><li>Più la complessità aumenta e più sarà facile incorrere in bugs ! </li></ul>
  13. 13. KDE e Gnome <ul><li>KDE e Gnome </li></ul><ul><li>Belli, completi di programmi a corredo per ogni esigenza (grafica, ufficio, multimedia) ma pesanti e poco efficenti. </li></ul>“ KDE is a powerful Free Software graphical desktop environment for Linux and Unix workstations. It combines ease of use, contemporary functionality, and outstanding graphical design with the technological superiority of the Unix operating system.” “ The GNOME project provides two things: The GNOME desktop environment, an intuitive and attractive desktop for users, and the GNOME development platform, an extensive framework for building applications that integrate into the rest of the desktop.”
  14. 14. KDE
  15. 15. Gnome
  16. 16. Xfce <ul><li>Xfce </li></ul><ul><li>Una via di mezzo tra un sistema scarno e veloce ed una GUI complessa come KDE o Gnome. Di origini francesi e basato sulle GTK (come Gnome), il suo creatore lo descrive così: </li></ul><ul><li>&quot;Designed for productivity, it loads and executes applications fast, while conserving system resources.&quot; (Olivier Fourdan, creator) </li></ul><ul><li>www.xfce.org </li></ul>
  17. 17. XFce
  18. 18. IceWM ed altri... <ul><li>IceWM </li></ul><ul><li>“ The goal of IceWM is speed, simplicity, and not getting in the user's way.” (www.icewm.org) </li></ul><ul><li>Enlightenment </li></ul><ul><li>“ Enlightenment began as a window manager for X. Its design goal is to be as configurable as possible - in look AND in feel. “ (www.enlightenment.org) </li></ul><ul><li>WindowMaker </li></ul><ul><li>“ Window Maker is an X11 window manager [...] It is fast, feature rich, easy to configure, and easy to use.” </li></ul><ul><li>(www.windowmaker.info) </li></ul>
  19. 19. <ul><li>Sawfish </li></ul><ul><li>“ Sawfish is an extensible window manager using a Lisp-based scripting language --all window decorations are configurable and all user-interface policy is controlled through the extension language.” (sawmill.sourceforge.net) </li></ul><ul><li>AfterStep </li></ul><ul><li>“ The goal of AfterStep development is to provide for flexibility of desktop configuration, improving aestetics, and efficient use of system resources. Some of the distinguishing features of AfterStep compared to other window managers are its low usage of resources, stability and configurability.” (www.afterstep.org) </li></ul>...continua...
  20. 20. IceWM
  21. 21. Enlightenment
  22. 22. WindowMaker
  23. 23. Sawfish
  24. 24. AfterStep
  25. 25. X vs MS Windows <ul><li>X è un sistema Client-Server creato per la rete e per macchine Unix. Windows è un sistema GUI “locale”. </li></ul><ul><li>X lavora in user-space, Windows ha delle parti che “girano” in kernel-space e che han provocato, come le GDI, seri problemi di sicurezza. Per contro la GUI di Windows è più veloce di X (escludendo le funzionalità DRI). </li></ul><ul><li>In X il client è pienamente configurabile, in Windows quello è e quello rimane. </li></ul><ul><li>Di X esistono versioni opensource come Xfree ed Xorg. </li></ul>
  26. 26. Varie ed eventuali Domande ?

×