Parte 3. Sistemi Operativi. Sistema operativo. Il sistema operativo (Operating System - OS): offre le operazioni base necessarie per:

Documenti analoghi
Parte 3. Sistemi Operativi. Sistema operativo. Il sistema operativo (Operating System - OS): offre le operazioni base necessarie per:

Sistemi Di Elaborazione Dell informazione

Sistemi Operativi. Lez. 0: Introduzione ai sistemi operativi

Parte 2. Software. Software. Contrapposto all hardware: la parte non tangibile del calcolatore

Il software: Istruzioni per il computer

Sistema Operativo (Software di base)

Interfaccia. Due sono i tipi di interfaccia più diffusi per interagire con un computer:

Sistemi Operativi: avvio

Il computer P R O F. L O R E N Z O P A R I S I

Elementi di Informatica

IL SOFTWARE DI SISTEMA

Corso di Informatica

I sistemi operativi. Prof. Daniele Contarino

Bootstrap. Bootstrap. Shutdown. Struttura di un SO. Elementi principali di un SO:

Lezione 5: Software. Firmware Sistema Operativo. Laboratorio di Informatica

Ogni PC, per iniziare a lavorare, ha bisogno di un sistema operativo. Infatti questo è il primo programma che viene eseguito e che permette

Sistema operativo & file system 1

Una prima suddivisione

Il computer P R O F. L O R E N Z O P A R I S I

Sistemi Operativi ed interazione con HW e CAD

Sistema operativo (SO)

Architettura di un calcolatore

Livelli del sottosistema di I/O

Informatica Generale 06 - Introduzione ai Sistemi Operativi

Introduzione ai Sistemi Operativi. A cura di Massimo Scolaro Mob :

Informatica di Base

Dal sistema operativo all' hardware

Struttura Logica del S.O:

Come funzionano i computer

L hardware da solo non è sufficiente per il funzionamento dell elaboratore È necessario introdurre il software:

Sistemi operativi. Motivazione. Tipi di software. Sistemi operativi. Un sistema operativo (SO) e un insieme di programmi che gestiscono le funzioni

Il Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono e cooperano per:

Il computer P R O F. L O R E N Z O P A R I S I

Personal Computer: introduzione

DIREZIONE DIDATTICA DI SAN GIUSEPPE JATO Programma Operativo Nazionale Fondo Sociale Europeo - Competenze per lo sviluppo

INFORMATICA. L informatica comprende:

Parte II. Introduzione ai sistemi operativi e WindowsX. Parte II 1

Il Sistema Operativo. Informatica Sistema Operativo 1

Da quali parti è composto un sistema operativo?

Sistemi Operativi SISTEMI DI INPUT/OUTPUT. D. Talia - UNICAL. Sistemi Operativi 10.1

Sistema Operativo. Alma Mater Studiorum Università di Bologna - Fondamenti di Informatica T (a-k)

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.

Architettura dei calcolatori e Software di sistema

Modulo 3. Software. Corso di Sistemi di elaborazione delle informazioni -Autore: Ing. Maurizio Patanè

La memoria secondaria

Il sistema operativo

Dipartimento di Giurisprudenza Prof. Michele Perilli Conoscenze Informatiche

Il software di sistema

Computer. Com è fatto un Personal Computer.

Sistemi Operativi: Concetti Introduttivi

Nel mezzo del cammin di nostra vita

Windows. La prima realizzazione di un ambiente grafico si deve alla Apple (1984) per il suo Macintosh. La gestione dei file conserva la logica del DOS

Il Sistema Operativo

Il Software. Il software del PC. Il BIOS

Sistemi Operativi. Sistemi I/O SISTEMI DI INPUT/OUTPUT. Hardware di I/O. Interfaccia di I/O per le applicazioni. Sottosistema per l I/O del kernel

Capitolo 6 Le infrastrutture SoftWare

Introduzione alla programmazione (bozza)

Sistemi Operativi. A.M. Fanelli Architettura dei Sistemi a. a Livello di Sistema Operativo. Livello di Linguaggi Applicativi

Sistemi Operativi (prima parte) Appunti di TPI Elaborati dal prof. Ing. Mario Catalano Per la classe 3 Einf.

IC Don Milani Latina. Alfabetizzazione Informatica. Prof. Giuseppe Patti

Informatica giuridica

Francia dalla contrazione delle parole INFORmazione e automatica. Elaborazione e trattamento automatico delle informazioni INFORMATICA

Sistema operativo. Utente. Il S.O. mostra offre all utente un ambiente di lavoro che nascondendo la complessità della macchina fisica (hardware). S.O.

Sistema Operativo. 06 novembre Sistema Operativo (SO): punto di vista funzionale

I dispositivi di input/output

Cosa è? Come lo si usa? Come iniziare? Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO)

Elementi di Informatica Corso di Laurea in Scienze Geologiche a.a. 2003/2004. Docente. Orario. Da Ottobre-Dicembre:

Sistemi informatici in ambito radiologico. Introduzione al corso. Programma del corso. Dott. Ing. Andrea Badaloni A.A

Memoria Secondaria o di Massa

LEZIONE 4. Hardware (periferiche) Software (algoritmi)

Prof. Rossella Cancelliere

INFORMATICA E PC IL PERSONAL COMPUTER

Sistemi operativi. Fondamenti di Informatica

Introduzione al Sistema Operativo MS-Windows ed all Uso dell IDE DEV-C++

Computer e Programmazione

IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO

Input/Output. Livelli del sottosistema di I/O

Modulo 3: Gestione delle Periferiche (Dispositivi di input/output)

I dispositivi di input/output: il mouse

Il Sistema Operativo

Struttura dell elaboratore elettronico

ECDL MODULO 1. Sezione 2 Software

Il Computer 1. A cosa serve un Computer? Scrivere, Calcolare, Disegnare, Giocare, Ricercare informazioni, Comprare

Il software: cenni sul sistema operativo

Dal sistema operativo all' hardware

Windows è un software di base o Sistema Operativo che permette di:

Il sistema di elaborazione

L insieme delle istruzioni, atte ad elaborare convenientemente i dati ed organizzate in modo organico, viene normalmente definito programma.

LA GESTIONE DELLA I/O

Il Sistema Operativo

Informatica Sistemi operativi Sistemi Operativi 1

IL SISTEMA OPERATIVO

Abilità Informatiche A.A. 2010/2011 Lezione 4: SoftWare. Facoltà di Lingue e Letterature Straniere

Parte V. Sistemi Operativi & Reti. Sistemi Operativi. Sistemi Operativi

Linux e i software liberi. di Nardean Lorenzo e Redigolo Marco

Sistema operativo. Interazione con il SO

Sistema operativo. Avere un architettura multi-core è un vantaggio

Cosa è Linux? Gianluca Amato Dipartimento di Scienze tel

Note sui sistemi operativi

1. Introduzione. 1.1 Precauzioni di sicurezza. 1.2 Sistema richiesto. 1.3 Contenuto del pacco

Transcript:

Parte 3 Sistemi Operativi Sistema operativo Il sistema operativo (Operating System - OS): offre le operazioni base necessarie per: l uso efficace del computer mediante funzionalità che non sono fornite direttamente dall hardware agisce da intermediario fra l Utente e l Hardware, per fornire un ambiente nel quale l utente possa eseguire i programmi applicativi in maniera sicura ed efficiente è un insieme di programmi che gestisce tutte le funzioni basilari di un computer (gestione disco, tastiera, video, mouse, reti, ecc.) installato nell hard disk, è un software (di sistema) che viene caricato nella RAM all accensione del computer (fase di boot) e rimane attivo fino allo spegnimento Informatica - A.A. 2010/2011 - Sistemi operativi 3.1 1

Sistema operativo - funzioni Esegue il boot Gestisce la memoria centrale (RAM) Gestisce i dispositivi di input/output (disco, stampante, tastiera, video, mouse, ecc.) Gestisce l organizzazione logica dei file Gestisce le connessioni alle reti e le relative comunicazioni di dati Gestisce il caricamento e l esecuzione di programmi Gestisce gli account degli utenti Informatica - A.A. 2010/2011 - Sistemi operativi 3.2 Sistemi operativi - tipi Mondo MICROSOFT Windows Mondo Unix - like Macintosh Linux Hp/UX Informatica - A.A. 2010/2011 - Sistemi operativi 3.3 2

Sistemi operativi - PC Sistemi operativi più usati (su pc - marzo 2010): Rispetto al 2009: Windows 7 ha già guadagnato una bella fetta di mercato portando a un declino di Windows Vista e dell' immortale Windows XP In leggera flessione il Sistema Operativo di Apple, Mac OS X nonostante l'hype mediatico per il lancio del nuovissimo ipad Linux invece rimane stabile Informatica - A.A. 2010/2011 - Sistemi operativi 3.4 Sistemi operativi Smart Phone Android (Google) è il SO più usato (basato su kernel Linux), grazie al supporto di diversi partner: HTC, Samsung, LG, Motorola, Ericsson, Sony. A seguire Symbian (erede di EPOC, supportato ora quasi solo da Nokia) Poi IOS di Apple, BlackBerry OS di Research In Motion, e Windows Phone 7 e Windows Mobile di Microsoft forse penalizzati dalla recente uscita. Informatica - A.A. 2010/2011 - Sistemi operativi 3.5 3

Microsoft Windows Le origini La prima versione indipendente di Microsoft Windows - versione 1.0 del 1985 - non disponeva di un gran numero di funzionalità ed ebbe scarso successo Windows 1.0 non forniva un sistema operativo completo, ma era un'estensione dell'ms-dos A limitare le funzionalità di Windows erano soprattutto alcune cause legali con Apple: per esempio, le finestre dei programmi potevano apparire solo affiancate sullo schermo e non potevano essere sovrapposte; inoltre non vi era il "cestino", in quanto Apple sosteneva di detenere i diritti su questo paradigma Microsoft in seguito rimosse entrambe le limitazioni sottoscrivendo un contratto di licenza Informatica - A.A. 2010/2011 - Sistemi operativi 3.6 Microsoft Windows Le versioni Venticinque anni di versioni: 1.0 (1985) - 2.0 (1987) - 3.0 (1990) 95 NT 98 2000 XP Vista - 7 Terzultimo: XP Penultimo (2007): Vista (gestazione lunga e travagliata) Ultimo (2009): Windows 7 Progettato come aggiornamento di Vista: quando la base di partenza è buona non si può sbagliare! Informatica - A.A. 2010/2011 - Sistemi operativi 3.7 4

Unix La storia Nasce nei Bell Laboratories AT&T all interno del Computing Science Research Group Idea di K. Thompson nel 1969 prima versione in linguaggio assembler D. Ritchie, B. Kernigam nel periodo1970-1973 continuano lo sviluppo in linguaggio C Successo enorme tra i programmatori Bell Laboratories AT&T Diffusosi rapidamente in ambito accademico (CMU, Berkeley,..., Helsinki) grazie al fatto che i sorgenti (scritti in linguaggio di programmazione C dal 1973) venivano inviati a un prezzo simbolico Informatica - A.A. 2010/2011 - Sistemi operativi 3.8 Unix La storia AT&T accusata di violare legge Antitrust nel 1974 AT&T non poteva più fare affari in campi che non fossero la telegrafia e la telefonia UNIX provided as is, no support L'assenza di supporto ufficiale forzò gli utenti UNIX a scambiarsi informazioni Idee, manuali, programmi, bug fix Nacque una diaspora di varianti UNIX (AT&T, BSD, SCO versioni commerciali - e GNU/Linux!) Ora usato principalmente in ambito aziendale e su computer (server, router) inseriti in rete Oggi il SO Unix più diffuso è Sun Solaris Informatica - A.A. 2010/2011 - Sistemi operativi 3.9 5

Il progetto GNU Nel 1971, un giovane ricercatore (Richard Stallman) viene assunto nel Laboratorio di Intelligenza Artificiale dell'mit Era un tipo particolare Nel 1983 Stallman decide di scrivere un nuovo sistema operativo compatibile con il modello UNIX ma non proprietario GNU: GNU is not UNIX Nasce il software libero open source 1985 Free Software Foundation Informatica - A.A. 2010/2011 - Sistemi operativi 3.10 Linux - Origini Un grande problema del progetto GNU è l'assenza di un kernel Il nucleo del sistema operativo Doveva essere basato su microkernel che non era ancora pronto a quel tempo L'ambiente GNU deve appoggiarsi su kernel preesistenti (UNIX), limitandone di fatto l'adozione Nel 1991, un giovane studente universitario di Helsinki, Linus Torvalds, decide di scrivere il pezzo mancante (il kernel) Informatica - A.A. 2010/2011 - Sistemi operativi 3.11 6

Linux - Origini Nel settembre 1991 viene completata la versione 0.99 del Kernel Linux Il motivo di tanto successo è stato dovuto alla possibilità di reperire liberamente il codice sorgente di Linux 16 Gennaio 1992: nuova versione che porta novità a livello legale circa la licenza In precedenza era esplicitamente vietato ottenere un qualsiasi ritorno economico dalla sua diffusione Da questa versione viene adottata la GNU General Public License (GPL): essa concede ai licenziatari il permesso di modificare il programma, di copiarlo e di ridistribuirlo con o senza modifiche, gratuitamente o a pagamento > Vincolo di rilascio delle modifiche al pubblico Informatica - A.A. 2010/2011 - Sistemi operativi 3.12 Free software Termine coniato da Richard Stallman Il fatto che il software free sia gratuito non è in alcun modo garantito In inglese c'è una ambiguità terminologica Free=Libero Free=Gratuito Stallman chiarisce il concetto con il motto: Free as in freedom, not as in free beer Informatica - A.A. 2010/2011 - Sistemi operativi 3.13 7

Mac OS Mac OS è il sistema operativo dedicato della Apple per i computer Macintosh a partire dal 1984 Acronimo di Macintosh Operating System Fu il primo sistema operativo ad utilizzare con successo un'interfaccia grafica Mac OS è in realtà riferito a 2 famiglie di sistemi operativi: Mac OS Classic: il SO montato sul primo modello di Macintosh nel 1984 ed evolutosi, attraverso numerose versioni, fino al 2001 (attualmente non più supportato) L'attuale Mac OS X (pronuncia ten), completamente riscritto e basato su piattaforma UNIX, commercializzato a partire dal 2001 Informatica - A.A. 2010/2011 - Sistemi operativi 3.14 Parte 3 Modulo 1: Struttura del Sistema Operativo 8

Sistemi operativi - componenti Kernel (nucleo) la parte più vicina all hardware Programmi di gestione dei dispositivi (driver) Interprete dei comandi Gestore della memoria primaria Gestore dei processori Gestore dell I/O Gestore dei file (File System) Informatica - A.A. 2010/2011 - Sistemi operativi 3.16 Sistemi operativi - componenti Elementi principali di un sistema operativo e dei componenti hardware: Sistema Op. SCSI Kernel del Sistema Operativo (gestione memoria, CPU) Keyboard Sottosistema di gestione Input/Output Mouse PCI Bus Floppy ATAPI Hardware SCSI Keyboard Mouse PCI Bus Floppy ATAPI SCSI Bus Tastiera Mouse PCI Bus Floppy ATAPI Devices (es. CD-ROM) Meglio fare un passo indietro Informatica - A.A. 2010/2011 - Sistemi operativi 3.17 9

Sistema di Elaborazione + Utente UTENTE Software Hardware? SCSI Keyboard APPLICAZIONI Sistema Operativo Mouse PCI Bus Floppy ATAPI SCSI Bus Tastiera Mouse PCI Bus Floppy CD-ROM Informatica - A.A. 2010/2011 - Sistemi operativi 3.18 Un quadro più preciso UTENTE SW APPLICAZIONI Sistema Operativo SCSI Keyboard Mouse Interfaccia utente Gestione file system Gestione memoria, Gestione CPU Sottosistema di gestione Input/Output PCI Bus Floppy ATAPI Hardware SCSI Keyboard Mouse PCI Bus Floppy ATAPI SCSI Bus Tastiera Mouse PCI Bus Floppy (es. CD-ROM) Informatica - A.A. 2010/2011 - Sistemi operativi 3.19 10

Scopi di un Sistema Operativo 1. Rendere disponibile un interfaccia user-friendly (amichevole) per l interazione uomo-macchina 2. Fornire un supporto interattivo e per utenti multipli (nel caso di sistema multi-programmato o multi-tasking) 2.1 Gestire i Processi (e l uso della CPU) 2.2 Gestire la Memoria Centrale 3. Fornire un supporto uniforme per l Input/Output 4. Gestire la memoria secondaria Informatica - A.A. 2010/2011 - Sistemi operativi 3.20 Prima impressione Se l impressione che avete avuto è che: il Sistema Operativo gestisca tutto, senza il Sistema Operativo, la vita degli informatici professionisti sarebbe molto più complessa senza il Sistema Operativo, la vita degli utilizzatori dell informatica sarebbe molto più complessa l evoluzione e la diffusione dell informatica si deve in larga parte anche ai progressi nel campo dei sistemi operativi siete sulla buona strada per capire Informatica - A.A. 2010/2011 - Sistemi operativi 3.21 11

Funzioni del Sistema Operativo Il Sistema Operativo è un software (di sistema) sempre attivo, ovvero sempre caricato in memoria centrale, in tutte le fasi: Fase di avvio (bootstrap) Fase di funzionamento Fase di spegnimento Informatica - A.A. 2010/2011 - Sistemi operativi 3.22 Fase di avvio: BOOTSTRAP Fase iniziale che va dall accensione del computer fino al caricamento del Sistema Operativo in memoria principale (RAM) per poterlo rendere attivo Il bootstrap avviene in fasi successive: prima viene caricata una piccola parte di istruzioni (BIOS) che si trova in un supporto di memoria elettronica permanente (Read Only Memory (ROM) o più di recente EEPROM riscrivibili), separata dalla RAM, che sa dove andare a prendere e caricare un altra,..., fino a che tutto il Sistema Operativo (necessario) è in memoria centrale e in esecuzione Informatica - A.A. 2010/2011 - Sistemi operativi 3.23 12

BIOS BIOS (Basic Input Output System) Fornisce una serie di funzioni di base per l'accesso all'hardware e alle periferiche integrate nella scheda madre Controlli preliminari sulla funzionalità dei componenti fondamentali (RAM, tastiera, dischi, porte) Inizializzazione corretta delle periferiche Lettura di alcuni parametri (come ora e data correnti) da una piccola memoria RAM CMOS tamponata (mantenuta alimentata) Caricamento del boot loader (primo settore di un disco impostato da BIOS), dove c è indicata la locazione iniziale del sistema operativo vero e proprio Informatica - A.A. 2010/2011 - Sistemi operativi 3.24 Bootstrap Informatica - A.A. 2010/2011 - Sistemi operativi 3.25 13

Fase di spegnimento: SHUTDOWN Quando il computer è in funzione, utilizza molti dati temporanei che (per efficienza) vengono mantenuti in memoria centrale (RAM) e solo periodicamente o a richiesta vengono memorizzati su memoria secondaria (disco) Lo shutdown consente di fare ordine e pulizia : le informazioni utili temporaneamente in RAM vengono copiate su memoria secondaria che non è volatile le informazioni non necessarie vengono eliminate i canali aperti vengono chiusi, ecc. Se lo shutdown non viene effettuato correttamente (es., guasto, black-out) c è il rischio di perdere informazioni utili o di trovarsi con dati incongruenti Informatica - A.A. 2010/2011 - Sistemi operativi 3.26 Componenti I Sistemi Operativi sono generalmente costituiti da un insieme di moduli, ciascuno dedicato a svolgere una determinata funzione I vari moduli del Sistemi Operativi interagiscono tra di loro secondo regole precise al fine di realizzare le funzionalità di base dalla macchina Informatica - A.A. 2010/2011 - Sistemi operativi 3.27 14

Componenti Interfaccia utente Gestore dell I/O Gestore del File System Gestore dei Processi Gestore della Memoria Centrale *KERNEL Informatica - A.A. 2010/2011 - Sistemi operativi 3.28 Componenti Nucleo (kernel) Costituito da quei programmi che realizzano le funzioni più critiche e più vicine all hardware come la Gestione dei programmi di base, della memoria primaria e del controllo dei processi File System Gestisce la memorizzazione, il reperimento,il trasferimento delle informazioni contenute nelle memorie di massa. Consente all'utente di organizzare tali dati servendosi delle strutture logiche e delle funzioni ad alto livello Gestione dell I/O Gestisce l'input/output ovvero le periferiche di sistema Interfaccia utente ( Shell ) Manipolazione (di solito visuale ed amichevole) di file e directory, Informazioni sullo stato, caricamento ed esecuzione di programmi Informatica - A.A. 2010/2011 - Sistemi operativi 3.29 15

Kernel del Sistema Operativo Kernel (nocciolo, nucleo) Contiene i programmi per la gestione delle funzioni base del calcolatore Kernel suddiviso in moduli. Ogni modulo ha una funzione diversa Funzioni più importanti: gestione processore gestione processi gestione memoria (principale e virtuale) Informatica - A.A. 2010/2011 - Sistemi operativi 3.30 Shell del Sistema operativo Shell (guscio): interfaccia tra SO e utenti Di solito grafica (GUI Graphical User Interface), ma anche testuale Informatica - A.A. 2010/2011 - Sistemi operativi 3.31 16

Parte 3 Modulo 2: Interfaccia utente Componenti Interfaccia utente Gestore dell I/O Gestore del File System Gestore dei Processi Gestore della Memoria Centrale *KERNEL Informatica - A.A. 2010/2011 - Sistemi operativi 3.33 17

Interfaccia utente Tutti i Sistemi Operativi implementano dei meccanismi per rendere agevole l utilizzo del sistema da parte degli utente L insieme di questi meccanismi di accesso al computer prende il nome di Interfaccia Utente Informatica - A.A. 2010/2011 - Sistemi operativi 3.34 Due tipi di interfaccia Interfaccia testuale (o a riga di comando) Interprete dei comandi (shell) Esempi: Linux/Unix (prime versioni), MS-DOS Interfaccia grafica (a finestre) Graphical User Interface (GUI) L output dei vari programmi viene visualizzato in maniera grafica all interno di finestre L utilizzo di disegni rende più intuitivo l uso del calcolatore Esempi: Linux/Unix, Microsoft WINDOWS, MAC Informatica - A.A. 2010/2011 - Sistemi operativi 3.35 18

Interfaccia testuale Informatica - A.A. 2010/2011 - Sistemi operativi 3.36 Interfaccia grafica (GUI) Informatica - A.A. 2010/2011 - Sistemi operativi 3.37 19

Il desktop come interfaccia Desktop = l immagine visualizzata sul monitor quando si accende il PC è colorata o dotata di sfondo l informazione è visualizzata lungo i bordi esterni del desktop, sotto forma di icone ci sono tre tipi base di icone: applicazioni (programmi) cartelle (directory) file (documenti) Informatica - A.A. 2010/2011 - Sistemi operativi 3.38 Il desktop (cont.) Il desktop è una metafora ORIGINE: lavorare al PC è come sedere ad una scrivania si possono archiviare lavori (file) organizzare gli archivi in raccoglitori (directory) usare applicazioni (un programma o la calcolatrice) OGGI: stare al PC è molto di più di una scrivania: riproduzione video e audio, giochi, apprendimento, navigazione Web, Informatica - A.A. 2010/2011 - Sistemi operativi 3.39 20

PC per Ascoltare la musica Esempio di metafora per l interfaccia utente il software che riproduce i CD sul computer sfrutta un interfaccia grafica (GUI) la GUI somiglia a un comune lettore musicale i pulsanti somigliano a quelli di un tipico lettore CD l utente può applicare alla GUI la sua conoscenza del funzionamento del lettore CD fisico senza avere bisogno di ulteriori istruzioni perché la simbologia gli è familiare Informatica - A.A. 2010/2011 - Sistemi operativi 3.40 Simboli Ci sono pulsanti, controlli a scorrimento, pulsanti triangolari, ecc. Tutte forme che mirano ad essere intuitive (da usare senza dover consultare il manuale) Informatica - A.A. 2010/2011 - Sistemi operativi 3.41 21

Esempio: itunes Informatica - A.A. 2010/2011 - Sistemi operativi 3.42 Menu Lista di operazioni che il software può eseguire Quali operazioni sono disponibili (operazioni simili sono raggruppate) Prendono la forma di una barra dei menu Tutte le operazioni che un programma può eseguire sono elencate nei menu Informatica - A.A. 2010/2011 - Sistemi operativi 3.43 22

Funzionamento dei menu I menu che si aprono scendendo giù dalla barra si chiamano menu a tendina Quando si clicca il pulsante destro del mouse sono visualizzati i cosiddetti menu pop-up Con un click del mouse si apre il menu, che rivela un elenco di operazioni disponibili Scorrendo il mouse lungo la lista, il comando prescelto viene evidenziato Cliccare o rilasciare il pulsante sul comando evidenziato fa sì che il computer esegua l operazione Informatica - A.A. 2010/2011 - Sistemi operativi 3.44 Informatica - A.A. 2010/2011 - Sistemi operativi 3.45 23

Parte 3 Modulo 3: Gestione delle Periferiche (Dispositivi di input/output) Dispositivi di Input/Output I dispositivi sono molto eterogenei per velocità e funzioni: oggetti complessi da gestire! Ad esempio, la maggior parte dei dispositivi sono seriali (es., stampante) e possono essere usati da un solo processo alla volta Tuttavia, molti dispositivi (es., stampante di rete) possono ricevere molte richieste contemporaneamente Servono: Meccanismi per la coordinazione delle varie richieste Diverse strategie per la gestione dei processi in attesa di utilizzare una risorsa Informatica - A.A. 2010/2011 - Sistemi operativi 3.47 24

Necessità per la gestione Input/Output Anche detta Gestione delle periferiche Il Sistema Operativo deve Fornire all utente Visione astratta dei dispositivi (rende trasparenti le caratteristiche fisiche delle periferiche) Comandi per utilizzare i dispositivi Ottimizzare l utilizzo dei dispositivi Gestire la comunicazione di segnali verso di loro Coordinare l accesso di più utenti (processi) Informatica - A.A. 2010/2011 - Sistemi operativi 3.48 Gestione Input/Output Il SO fornisce un insieme di comandi (linguaggio d interazione tra utente e sistema) che fornisce una visione astratta del dispositivo Es. Stampa: per l utente equivale all invio di un messaggio, indipendentemente da come avviene il trasferimento dei byte Lettura dello stato della stampante Modifica delle caratteristiche della stampa: l utente utilizza un pannello di controllo, senza curarsi dei dettagli implementativi sottostanti Informatica - A.A. 2010/2011 - Sistemi operativi 3.49 25

Gestione delle Periferiche di Input/Output Il sottosistema di I/O del sistema operativo è strutturato in moduli, chiamati driver, che incapsulano le particolarità e i dettagli dei vari dispositivi Device delle periferiche (uno per ogni periferica e per ogni sistema operativo!) Un driver è specifico sia dal punto di vista dell'hardware che pilota, sia dal punto di vista del sistema operativo per cui è scritto Non è possibile utilizzare driver scritti per un sistema operativo su uno differente, perché l'interfaccia è generalmente diversa! Informatica - A.A. 2010/2011 - Sistemi operativi 3.50 Device Il controllo dei dispositivi di I/O avviene attraverso speciali programmi detti Device Ogni dispositivo che si connette al computer (compresi lettori DVD, pen drive, macchina fotografica, ecc.) ha bisogno di un device driver che funga da interfaccia tra il dispositivo fisico e l utente I device driver sono spesso realizzati dai produttori dei dispositivi stessi che ne conoscono le caratteristiche fisiche in maniera approfondita Informatica - A.A. 2010/2011 - Sistemi operativi 3.51 26

Device (Cont.) Questi programmi implementano normalmente le seguenti funzioni: Rendono trasparenti le caratteristiche fisiche tipiche di ogni dispositivo Gestiscono la comunicazione dei segnali verso i dispositivi Gestiscono i conflitti, nel caso in cui due o più processi vogliono accedere contemporaneamente allo stesso dispositivo Informatica - A.A. 2010/2011 - Sistemi operativi 3.52 Device (Cont.) Hardware Sistema Op. SCSI SCSI Kernel del Sistema Operativo (gestione memoria, CPU) Keyboard Keyboard Sottosistema di gestione Input/Output Mouse Mouse PCI Bus PCI Bus Floppy Floppy ATAPI ATAPI SCSI Bus Tastiera Mouse PCI Bus Floppy (es. CD-ROM) Informatica - A.A. 2010/2011 - Sistemi operativi 3.53 27

Interrupt Interrupt o interruzione: segnale asincrono che indica il bisogno dell attenzione del sistema operativo Generati dai controller dei dispositivi esterni alla CPU (di solito periferiche - dispositivi di Input/Output) Ogni dispositivo è controllato da un apposito strumento hardware, detto controller, che ha il compito di comunicare il verificarsi di eventi esterni (dati disponibili, periferica libera, etc.) Informatica - A.A. 2010/2011 - Sistemi operativi 3.54 Spooling Simultaneous Peripheral Operations On-Line (Spool) Meccanismo che svincola la stampa di un file dal resto dell elaborazione: il sistema continua la sua attività mentre la stampa è in corso Stampante più lenta della CPU un file non può essere trasferito troppo velocemente dalla CPU alla stampante Invece di inviare il file in maniera sincrona: Il file viene messo su disco Il Sistema Operativo crea un processo di spooling che fa procedere la stampa Il processo che ha richiesto la stampa è svincolato da essa Lo spooling può andare in esecuzione anche su un elaboratore remoto collegato in rete (print server) lo eseguirà un altra CPU Informatica - A.A. 2010/2011 - Sistemi operativi 3.55 28

DMA (Direct Memory Access) Meccanismo che permette ad alcune periferiche di accedere direttamente alla memoria di sistema per scambiare dati, o leggere o scrivere, senza chiamare in causa la CPU per ogni byte trasferito tramite il meccanismo usuale dell'interrupt e la successiva richiesta di operazione desiderata Un singolo interrupt viene generato per un intero blocco trasferito Ha il compito di gestire i dati permettendo a periferiche che lavorano a velocità diverse di comunicare senza interrompere continuamente la CPU Usato da molti sistemi per unità a disco, schede grafiche e schede audio Informatica - A.A. 2010/2011 - Sistemi operativi 3.56 29