Laboratorio di Informatica Corso di Laurea Interfacoltà in Biotecnologie Lezione 1: Sistemi Operativi Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 1 Scopo della lezione – – – Richiamare le principali funzionalità di un sistema operativo Esemplificarle descrivendo la loro implementazione in Windows Stabilire un linguaggio comune Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 2 Peculiarità di Windows – È un sistema operativo basato sul concetto di GUI (Graphical User Interface): l’interfaccia con cui l’utente dialoga con l’elaboratore si basa su un insieme di elementi grafici Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 3 Storia di Windows – – Windows è commercializzato dalla Microsoft a partire dal 1983 (100$). È probabilmente il più diffuso sistema operativo per elaboratori client. http://www.computerhope.com/history/windows.htm Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 4 Versioni di Windows 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 Walter Cazzola Desktop Server Mobile Windows 1.0 Windows 2.0 Windows 3.0 Windows NT 3 Windows 95 Windows NT 4 Windows CE 1.0 Windows 98 Windows Me Windows 2000 Pocket PC Windows XP Windows 2003 Lab. di Informatica: Sistemi Operativi Lucido 5 Alcuni Screenshot Windows 1.0 Windows 2.0 Walter Cazzola Windows 3.1 Windows 95 Lab. di Informatica: Sistemi Operativi Lucido 6 Funzionalità di un Sistema Operativo – – – – – – – – – Gestione dell’interfaccia Gestione dell’hardware Gestione degli utenti Gestione degli appunti (clipboard) Gestione della memoria Gestione dei processi Gestione del file system Gestione della rete Programmi di utilità Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 7 Il Desktop: un'Overview – – – – Windows gestisce lo schermo dell’elaboratore utilizzando la metafora di una scrivania (desktop). Sul desktop è possibile memorizzare oggetti, descritti sotto forma di icone. Alcune icone identificano oggetti particolari e sono inserite dal sistema operativo. Altre icone identificano applicazioni o documenti e sono gestite dall’utente. Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 8 Gestione dell’Interfaccia – – – – – – Ogni applicazione è generalmente associata ad una finestra. Sul desktop si possono sovrapporre più fine-stre (i.e. più applicazioni). Cliccando su una finestra questa viene por-tata in primo piano (focus): il programma corrispondente può, quindi, accettare input. Una finestra può essere in stato normale, massimizzato o minimizzato. Le operazioni fondamentali di un’applicazione vengono organizzate in una struttura gerachica detta menù, inserita sotto il titolo della finestra. Le operazioni tipiche di un particolare contesto (la parte di un’applicazione) sono raggruppate in un menù contestuale, accessibile facendo clic col pulsante destro Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 9 Gestione dell’Hardware – – – Il sistema operativo richiama una serie di moduli (driver) specializzati ognuno nella gestione di un particolare dispositivo hardware montato sull’elaboratore; Questi moduli forniscono le funzionalità di base alle rimanenti componenti del sistema operativo; In questo modo lo stesso sistema operativo gira su più macchine differenti, a patto di caricare i driver opportuni. Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 10 Esempio: il Mouse Il driver del mouse rileva a intervalli di tempo regolari: – – Il movimento della sfera; Lo stato dei pulsanti e della ruota. Conseguentemente: Aggiorna la posizione del puntatore sullo schermo; – Trascinamento (Drag and Drop): comunicazione tra differenti applicazioni (e.g. apertura di un file); Esegue le operazioni associate ai pulsanti e alla ruota. – – Click: 1) Selezione di un oggetto (tasto sinistro) 2) Menù contestuali (tasto destro); Doppio click: attivazione di un’azione predefinita (default). Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 11 Gestione degli Utenti Un utente è un’entità (fisica oppure immateriale) in grado di utilizzare alcune risorse di un elaboratore. Ad esempio – – – persone; gruppi di persone; servizi gestiti da particolari programmi. L’accesso a queste risorse può avvenire – – a livello locale, accedendo fisicamente all’elaboratore; a livello remoto, tramite una rete telematica. Multiutenza Più utenti possono accedere alle risorse di un calcolatore: simultaneamente o in tempi differenti. Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 12 Multiutenza in Windows Windows supporta tipicamente il secondo tipo di multiutenza, è possibile definire: quali utenti possono accedere al sistema; – in che tempi possono accedervi; – quali risorse possono utilizzare. – Il primo tipo di multiutenza è disponibile per alcune risorse nelle versioni server e come prodotto separato. Negli elaboratori usati come server gli utenti in remoto, tipicamente a risorse limitate: disco, posta, … Negli elaboratori usati come client gli utenti in locale, tipicamente all’intero sistema. Walter Cazzola Lab. di Informatica: Sistemi Operativi accedono spazio su accedono Lucido 13 Login È la procedura che precede l’utilizzo, da parte di un utente, di una generica risorsa in un elaboratore. L’utente dichiara la propria identità, specificando un nome (login name, o login) che lo identifica univocamente rispetto agli altri utenti; – certifica (eventualmente) la propria identità, specificando una parola chiave (o password) di accesso che è ignota agli altri utenti. – Se login e password sono validi, l’elaboratore eroga la risorsa all’utente. Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 14 La finestra di login – – Compare ogni volta che il sistema è pronto ad accettare un nuovo utente; L’utente inserisce login e password nei campi appositi. Al posto dei caratteri della password vengono visualizzati degli asterischi, per evitare accessi da parte di persone non autorizzate Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 15 Logout Complementare al login, è la procedura con cui un utente termina di utilizzare delle risorse che si rendono in questo modo disponibili ad altri utenti; In alternativa è possibile spegnere o riavviare l’elaboratore. Viene effettuata selezionando la voce “chiudi sessione” nel menù start. Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 16 Oggetti sul Desktop – – – Un oggetto viene selezionato cliccandoci sopra; Una volta selezionato un oggetto è possibile effettuare su di esso delle operazioni (apertura, eliminazione, ridenominazione); Creazione di un nuovo oggetto: Incollandolo dagli appunti; – Tramite la voce Nuovo del menù contestuale. – Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 17 Risorse del Computer – È un oggetto che raggruppa: I dispositivi di memorizzazione accessibili dall’elaboratore (unità disco fisse e removibili, dispositivi palmari, …); – Un collegamento alle applicazioni che permettono di impostare questi ed altri dispositivi. – Viene tipicamente usato come scorciatoia per visualizzare il contenuto di questi dispositivi. Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 18 Cestino – – Contiene oggetti che si vogliono eliminare; Lo spostamento di oggetti nel cestino avviene: Selezionandoli e premendo Canc; – Selezionando Elimina dal menù contestuale; oppure – Trascinandoli nel cestino. – – – La finestra associata al cestino elenca gli oggetti che contiene; Da questa finestra è possibile: Ripristinare gli oggetti nella loro posizione originale; – Eliminare definitivamente uno o più oggetti; – Eliminare definitivamente tutti gli oggetti contenuti nel cestino (svuotamento del cestino). – Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 19 Menù Start Contiene in modo strutturato comandi che permettono di: – – – – – – eseguire le applicazioni presenti; impostare i dispositivi e i servizi installati sull’elaboratore; eseguire una generica applicazione; accedere agli ultimi documenti utilizzati; cercare oggetti all’interno dell’elaboratore; accedere all’aiuto in linea. Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 20 Launch List – Contiene una serie di pulsanti miniaturizzati associati: Ad alcune applicazioni utilizzate frequentemente; – A operazioni particolari legate al desktop, come la minimizzazione di tutte le finestre – Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 21 Taskbar – – Contiene l’elenco delle applicazioni attualmente in esecuzione È possibile ripristinare la finestra minimizzata di un’applicazione cliccando sulla corrispondente voce nella taskbar Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 22 System Tray Contiene un elenco di informazioni su applicazioni tipicamente non direttamente eseguite dall’utente: Orologio; – Connessione di rete; e – Layout di tastiera. – In alternativa contiene informazioni su applicazioni che non devono affollare la taskbar. Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 23 Gestione dei Processi – – Un processo è l’immagine di un programma in esecuzione. Tipicamente un sistema operativo esegue apparentemente più processi in modo simultaneo, eseguendo ciclicamente una piccola parte di ognuno di essi. Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 24 Processi in Windows – – Un utente di Windows ha la percezione che vi sia in esecuzione un processo per ogni applicazione eseguita e per ogni oggetto visualizzato. Il passaggio tra i vari processi può essere fatto: Selezionando le finestre corrispondenti; – Utilizzando la taskbar; o – Tramite la combinazione di tasti Alt+Tab. – – Per terminare un processo è possibile: Eseguire il comando di uscita (menù File); – Cliccare sul controllo di chiusura (la crocetta in alto a destra della relativa finestra); – eseguendo l’applicazione Task Manager. – Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 25 Task Manager – – L’applicazione Task Manager viene utilizzata quando non è possibile terminare in altro modo una qualunque applicazione Viene eseguita automaticamente quando si preme CTRL+ALT+CANC – In questo caso viene chiesta conferma della chiusura tramite una finestra di dialogo. Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 26 Gestione della Memoria – – Windows alloca direttamente la memoria alle varie applicazioni, in modo trasparente all’utente; È comunque possibile verificare quanta memoria è disponibile eseguendo Task Manager e selezionando il tab Prestazioni Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 27 Gestione del file system – – Il file system è la componente del sistema operativo preposta alla gestione delle informazioni memorizzate permanentemente, che risiedono tipicamente su disco; Le componenti di un file system sono: il file e la directory. Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 28 File e Directory – Un file memorizza permanentemente una serie di informazioni aventi unità logica: una applicazione (elaboratore testi, visualizzatore di clip multimediali, …) – dei dati (una relazione, un video musicale, …) – – Una directory (o cartella, o folder) è un contenitore di oggetti, che possono essere file o altre directory. – La creazione di una directory si ottiene selezionando dal menù contestuale la voce Nuovo e successivamente la voce Cartella; Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 29 Gerarchia del file system Un file system ha una struttura gerarchica (albero): I file sono le estremità (foglie); – Le directory sono i nodi; – Esiste un’unica directory (radice) cui tutta la struttura fa capo. – root applicazioni Lezioni informatica Cartella sistema videoscrittura Internet prima sett. programma seconda sett. lezione laboratorio Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 30 Pathname Ogni file all’interno del file system è individuato in base alla sua posizione nell’albero, cioè al cammino (pathname o path) che si deve percorrere per raggiungerlo partendo dalla radice; Ad es., se voglio indicare il programma del corso di informatica devo specificare il cammino: root/lezioni informatica/programma Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 31 File System in Windows – – – La radice della struttura gerarchica è il desktop; I nodi di un pathname sono separati dal carattere di backslash (\); Ogni disco è individuato da una lettera seguita dal carattere di due punti (:), e contiene una sua struttura gerarchica, ad es., C:\Documenti\Lezioni\Lezione1.pdf – La possibilità di inserire directory nelle directory fornisce l’opportunità di creare dei file system strutturati, in cui le informazioni sono memorizzate in modo ordinato Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 32 Operazioni su File – – – – – Apertura (doppio click, menù contestuale); Spostamento (copia e incolla, trascinamento); Copia (copia e incolla, trascinamento); Cancellazione (menù contestuale, trascinamento nel cestino); Altre azioni (stampa, invio per posta elettronica, …) Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 33 Estensione di un file – – – Ad ogni file è generalmente associata un’estensione consistente in una serie di lettere (tipicamente tre) separate dal nome del file tramite un punto; Caratterizza il tipo di file in modo che il sistema operativo lo tratti correttamente; L’estensione di un file può venire nascosta agendo sulle impostazioni del sistema operativo. Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 34 Collegamenti – – – Un collegamento è un particolare tipo di file la cui funzione è esclusivamente quella di “puntare” a un altro file o directory; L’apertura di un collegamento è equivalente all’apertura del file o directory cui fa riferimento; La cancellazione o lo spostamento di un collegamento non modifica l’originale. Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 35 Creazione di un Collegamento – – – Si ottiene selezionando dal menù contestuale la voce Nuovo e successivamente la voce Collegamento; Compare una finestra di dialogo che richiede di specificare la destinazione del collegamento e il suo nome; L’icona associata a un collegamento è la stessa associata alla sua destinazione, a parte una freccia in basso a sinistra. Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 36 Documenti – – – – È una directory presente sul desktop; Indica la directory principale, radice della parte di file system in cui l’utente può memorizzare i propri file; Ogni utente ha una propria cartella Documenti; La cartella documenti è il punto predefinito in cui vengono posizionati i file dell’utente. Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 37 Permessi su File In alcuni tipi di file system gli utenti possono specificare i seguenti permessi di accesso: Read (R) indica se possono essere letti i contenuti di un file o di una cartella; – Write (W) indica se è possibile modificare il contenuto di un file o di una cartella; – Execute (X) indica se è possibile eseguire un file o posizionarsi all’interno di una cartella. – Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 38 Esplora Risorse – È un’applicazione che visualizza simultaneamente la struttura del file system e i file presenti in una particolare directory. Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 39 Ricerche nel File System È possibile ricercare dei particolare file all’interno del file system selezionando dallo start menù la voce Trova e successivamente la voce File o cartelle Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 40 Il Menù “Invia a…” – – È una voce comune dei menù contestuali; Permette di copiare un file o directory e inviarlo a una serie di destinazioni: Una particolare directory (e.g. un disco removibile); – Una particolare applicazione (e.g. il gestore della posta elettronica). – – È possibile personalizzare l’elenco delle destinazioni. Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 41 Prompt dei Comandi – – È un particolare programma che permette di accedere al sistema in modalità testuale: l’utente deve specificare cioè una serie di comandi (ognuno corredato di una propria sintassi e semantica). È usato per: eseguire programmi particolari (java!); – creare sequenze di comandi (script). – Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 42 Editor – – Sono programmi deputati a visualizzare e modificare testi. Le funzionalità di base di un editor sono: Apertura, visualizzazione, modifica, salvataggio e stampa di un testo; – Possibilità di effettuare ricerche e sostituzioni. – – Le funzionalità avanzate riguardano: La possibilità di effettuare una formattazione manuale o automatica del testo; – L’utilizzo di strumenti linguistici come il correttore ortografico o grammaticale, … – Walter Cazzola Lab. di Informatica: Sistemi Operativi Lucido 43