3-Interfacce Utente

3-Interfacce Utente

Parte 1: Introduzione ai comandi UNIX (https://www.youtube.com/watch?v ypEa"Qb6d%&' 1 (ezione ) Inter*acce utente Sistemi ,perativi (- ./U'0 .dL Informatica, 1. 1. 2323/2321 Dipartimento di Scienze /isiche0 In*ormatiche e 5atematiche Universit6 di 5odena e Re88io !mi9ia http://web9ab.in8.unimo.it/peop9e/andreo9ini/didattica/sistemi:operativi 2 Quote of the day (http://www.cryptonomicon.com/be8inning.html' “Windows 95 and MacOS are products, contrived by engineers in the service of specific companies. ni!, by contrast, is not so much a product as it is a painsta"ingly compi#ed ora# history of the hac"er subcu#ture.$ Nea9 +tephenson (1-;-:' +crittore 1utore di “In the be8innin8 was the command line= 3 (o scenario (Neanche tanto sba89iato0 a pensarci bene' Uno studente decide di scaricare, installare e provare ad usare il +O "NU/(inux. +cuse le8ittime per usare "NU/(inux: si è costretti da9 docente. si è costretti da9 datore di lavoro. ci si annoia e non sa che fare. si nutre una sincera curiosit6. 9e cava99ette. 4 Interrogativi 1/2 (Individuare e conoscere 9e inter*acce d@uso a disposizione' Quali interfacce utente mette a disposizione GNU/Linu>? Interfacce di tipo desktop? Interfacce testua9i? 1 19tro? .he cosa si intende esattamente per <interfaccia utente”? 5 Interrogativi 2/2 (Aa9utare i pro e i contro di ciascun tipo di inter*accia d@uso' Quali sono i pro e i contro delle diverse cate8orie di inter*acce 1 utente? Su Buale tipologia di inter*accia utente dovrebbe concentrarsi % 9’utente desideroso di approfondire la conoscenza di GNU/Linux? 6 INTERFACCE UTENTE 7 Inter*accia utente (Permette di comunicare con i9 ca9colatore' (Cinterfaccia utente di un SO ? l'insieme di meccanismi con i Buali avviene l'interazione uomo:macchina. Interazione: l'utente speciDca una operazione. il SO traduce 9Coperazione in applicazioni da ese8uire. 9Coutput delle operazioni ? reso disponibile all'utente. Esistono diverse cate8orie di interfacce utente: testuali (&ommand Line Interface0 &'('. 8raDche (Graphical ser (nterface, ) ('. touchscreen (*ouch ser (nterface0 * ('. 8 .aratteristiche salienti de99e interfacce (.omandi0 icone0 carte99e0 menu0 gesture' &'(+ uso di un interprete dei comandi (she##' per la lettura e 9Cesecuzione di sin8oli comandi (shell interattiva' o di un 8ruppo di comandi memorizzati in un Dle (shell non interattiva che ese8ue uno script'. I comandi disponibili sono *orniti dalla shell oppure dalle utility di base del +,. ) (+ esposizione di una scrivania virtuale (des"top', pilotata da opportuni dispositivi di puntamento (mouse'. (e operazioni disponibi9i sono accessibili tramite menu. * (+ versione sempliDcata de9la GUI. Il mouse ? sostituito da un sistema di riconoscimento basato su 8esti della mano (gesture'. 9 Pro e contro de99e GUI/TUI (Unicuique suum) ,ro+ molto semplici ed intuitive ne9l'uso. &ontro+ non sono facilmente componibili. &omponibilità: l'atto di poter <a88anciare= due applicazioni in modo tale da creare una nuova applicazione composta. ,UEPUE 1pp. ,UEPUE INPUE 1pp. 1 1pp. 2 INPUE composta 10 .ondizioni necessarie (Per 9a componibi9it6 di "UI/EUI' (e applicazioni devono usare un *ormato intercambiabile di rappresentazione dei dati intermedi. (Coutput in uscita da 1pp. 1 deve poter essere 9e88ibile da 1pp. 2. 1pp. 1 ed 1pp. 2 devono potersi <connettere= *ra loro. Eramite strumenti di comunicazione standard Bua9i D9e0 soc&et di rete, memoria condivisa, a9tro. 11 Un esempio di non componibi9ità 1/2 (+tampa dei D9e contenuti in una directory' Provate ad individuare una applicazione basata su GUI/TUI (fra Buelle disponibili' che stampi 9Celenco di una directory <8rande= (contenente, ad esempio, 10000 D9e'. Esiste una tale applicazione? In genera9e, N,. +e esiste, se8na9ate9a a9 docente :-) 12 Un esempio di non componibi9ità 2/2 (+tampa dei D9e contenuti in una directory' Si puF provare a comporre le applicazioni: <D9e mana8er 8raDco=. <c9ient grafico di stampa=. (a domanda ?: .,5E? I9 D9e mana8er 8raDco non ha modo di costruire un D9e di testo da inviare a9 c9ient di stampa. #uandCanche riuscisse0 il D9e mana8er non ? in 8rado di <connettersi= a9 c9ient di stampa e fornir89i i9 file. Eali applicazioni sono componibili? → In questo caso, N,. 13 .ome si riso9ve il prob9ema con 9e GUI? (+empre 9a solita stampa dei D9e contenuti in una directory' +oluzioni a9 problema. +crivere una app9icazione "UI/EUI <ad-hoc= che svol8a il compito specifico (lCapplicazione non ? ricic9abile in se8uito'. Produrre manua9mente screenshot dei D9e e stampar9i, sempre manua9mente (soluzione ripu8nante perchG non automatica; 9'utente 9avora per i9 ca9colatore, Buando invece dovrebbe essere i9 contrario!). 14 Pro e contro de99e CLI (Unicuique suum) ,ro+ sono ideate per essere componibili. &ontro+ Presentano una curva di apprendimento superiore rispetto alle GUI/TUI. 15 .ome si riso9ve il prob9ema con 9e CLI? (+empre 9a solita stampa dei D9e contenuti in una directory' !ntra ne99a directory di Jasta di8itare due comandi. interesse cd /directory/di/interesse ls | lpr !9enca Passa 9Coutput Invia 9Ce9enco i D9e e 9e a9 c9ient di directory di ls a lpr stampa I due comandi possono essere inseriti in uno script ed ese8uiti in modalità batch0 senza intervento umano. → È il ca9colatore a lavorare per voiI 16 GUI/TUI IN GNU/LINUX 17 5odu9arità de99e GUI (1rchitettura modu9areH componenti interscambiabili *ra 9oro) (@architettura di una GUI in GNU/Linu> ? modulare. Insieme di componenti software (app9icazioni, 9ibrerie' cooperanti tra 9oro. ,8ni applicazione implementa uno specifico aspetto. Per uno specifico componente possono esistere diverse implementazioni e conD8urazioni, spesso interscambiabili fra loro. 18 I componenti di una GUI (Server0 window manager0 tool&it0 applicazione0 8raphica9 display manager' Server grafico. Implementa un protocol9o di comunicazione c9ient:server con g9i e9ementi 8rafici (in primis, le Dnestre). 7iceve richieste di dise8no. Erasforma 9e richieste di dise8no in comandi da impartire a99a scheda video. "estisce i buLer di uno o più schermi. "estisce le periferiche di input (mouse, tastiera'. 19 I componenti di una GUI (Server0 window manager0 tool&it0 applicazione0 8raphica9 display manager' .Org. Progetto iniziato ne9 233N. +uccessore di X/reeO$ (imp9emen: tazione free di X11, i9 server 8raDco UNIX originario). Implementa 9e *unziona9it6 descrit: te ne99a s9ide precedente. I9 9ogo di X,r8 20 .uriosit6 (https://www.youtube.com/watch?v +P#y2r$&!/3' PerchG il preDsso <X”? X/ree86 deriva da X Pindow +ystem, versione 11 (X11). X Pindow +ystem deriva da P Pindow +ystem0 sviluppato a +tan*ord nel 1981 per il sistema operativo A. (X ? la lettera successiva a P'. X Pindow +ystem 21 I componenti di una GUI (Server0 window manager0 tool&it0 applicazione0 8raphica9 display manager' ,ro. +oftware maturo, consolidato e testato. &ontro. Prestazioni non ottima9i. I9 server converte tutte 9e richieste di dise8no de99e Dnestre in pi>e9 (rendering', ed invia i buLer a99a scheda I9 9ogo di X,r8 video. → .ol9o di botti89ia (piM richieste di ven8ono inviate0 piM i9 sistema si ra99enta'. https://www.>.or8/wiki/4eve9opment/4ocumentation/Per*ormance/ 22 I componenti di una GUI (Server0 window manager0 tool&it0 applicazione0 8raphica9 display manager' ,ro. +oftware maturo, consolidato e testato. &ontro. +carsa attenzione a99a sicurezza. "9i e9ementi 8rafici non sono isolati fra 9oro (vio9ato uno0 violati tutti'. I9 server deve ese8uire con privi9e8i e9e: I9 9ogo di X,r8 vati per intera8ire con la scheda video. (@autenticazione ? debole (9@utente ottiene un <ma8ic cookie= che0 se rubato0 permette 9@accesso a tutte 9e Dnestre'. https://9wn.net/1rtic9es/;1Q)Q;/ 23 I componenti di una GUI (Server0 window manager0 tool&it0 applicazione0 8raphica9 display manager' Wayland. Progetto iniziato ne9 233O. Protocol9o di comunicazione c9ient: server (imp9ementazione di ri*erimento: Weston). .erca di riso9vere i problemi di Xor8. I9 9ogo di Payland 24 .uriosit6 (https://www.youtube.com/watch?v r45Jo1-wI9w' PerchG <Payland=? Rristian ST8sber80 creatore del pro8etto0 viag8iava in macchina per le vie di Payland (5assachussetts' Buando ebbe 9@illuminazione. Pay9and, 51 25 I componenti di una GUI (Server0 window manager0 tool&it0 applicazione0 8raphica9 display manager' ,ro. Prestazioni superiori a Xor8. ,8ni Dnestra eLettua i9 renderin8 in maniera indipendente (composizione'. +icurezza piM e9evata. (o stato interno di una Dnestra ? invisibi9e a99e a9tre (isolamento'. I9 9ogo di Payland (a composizione avviene ne99e sin: 8ole app9icazioni0 che ese8uono con privi9e8i piM bassi. https://www.secUuice.com/way9and:vs:>or8/ 26 I componenti di una GUI (Server0 window manager0 tool&it0 applicazione0 8raphica9 display manager' &ontro. (a stabilit6 di Pay9and ? ancora in*eriore a Bue99a di Xor8. Pay9and non *unziona con a9cuni mode99i di schede video. NVI4I10 I@m lookin8 at you. https://wiki.8nome.org/Initiatives/Pay9and/NAIDIA https://www.youtube.com/watch?v IVpOyR.NVWw I9 9ogo di Payland 27 I componenti di una GUI (Server0 window manager0 tool&it0 applicazione0 8raphica9 display manager' &osa scegliere% +e supportato da99a propria scheda video, Payland ? pre*eribile a XOr8. 28 I componenti di una GUI (+erver0 window manager0 too9&it0 applicazione0 8raphica9 disp9ay manager' Window Manager. "estisce il dise8no ed il posizionamento di e9ementi 8raDci, in primis finestre. 0inestra+ area visua9e de99o schermo che riceve eventi tramite dispositivi di input (mouse0 tastiera)H associa g9i eventi a funzioni da ese8uireH contiene un@area interna (in cui una app9icazione

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    103 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us