Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
1
“Uso del computer e gestione dei file”
2
“Rappresentazione digitale delle immagini: principi di base”
Sezione 2: “Uso del computer e gestione dei file ” Parte 1 “Rappresentazione digitale delle immagini: principi di base”
3
Parte 1: “Rappresentazione digitale delle immagini: principi di base”
Le componenti hardware di un calcolatore per poter essere utilizzate da applicativi software o utenti hanno bisogno di una serie di strumenti software; Tali software vengono di solito denominati software di sistema o di base; Di solito vengono forniti a corredo dell’hardware con l’obiettivo di gestire in modo efficace ed efficiente le risorse fisiche di un sistema informatico e semplificare l’interazione dell’utente con il sistema; Questo insieme di programmi prende il nome di “Sistema Operativo”, Il sistema operativo mostra il sistema informatico all’utente come un erogatore di servizi; A tali servizi è associata l’esecuzione di uno o più programmi specifici;
4
Le funzioni del sistema operativo
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (2) Le funzioni del sistema operativo Obiettivo del sistema operativo è quello di permettere ad utenti o ad applicativi software un efficace ed efficiente utilizzo delle risorse fisiche presenti nel sistema informatico. In particolare garantire la corretta elaborazione e trasmissione dell’informazione; Nascondere all’utente il problema della localizzazione delle risorse permettendo allo stesso di accedere alle applicazioni da ogni luogo e in ogni momento; Garantire l’affidabilità, la disponibilità, la sicurezza e la privatezza dei dati; Favorire l’interoperabilità fra dispositivi hardware e software che in genere sono forniti da diversi produttori; Risolvere il problema della limitazione delle risorse da utilizzare attraverso un’opportuna gestione delle politiche di accesso alle stesse da parte di utenti e applicativi;
5
Parte 1: “Rappresentazione digitale delle immagini: principi di base”(3)
Il sistema operativo è quindi un’infrastruttura software che si pone come l’interfaccia fra quella hardware e l’utente o il software applicativo Nello stesso tempo mira a semplificare l’utilizzo e la gestione delle varie risorse del sistema Il sistema operativo “virtualizza” le caratteristiche dell’hardware sottostante e offrono la visione di una macchina astratta o virtuale più semplice da usare rispetto a quella fisicamente disponibile
6
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (4)
Le funzioni che il sistema operativo è chiamato a svolgere sono: Esecuzione di applicazioni: il sistema operativo gestisce operazioni del tipo caricamento di programmi, inizializzazione di dispositivi, gestione di risorse Accesso ai dispositivi di ingresso/uscita: maschera tutta la problematica del controllo delle periferiche permettendo all’utente di operare in termini di operazioni astratte Archiviazione di dati e programmi: il sistema operativo fornisce all’utente la possibilità di organizzare logicamente i dati Controllo di accesso: in sistemi che prevedono l’utilizzo condiviso di una stessa risorsa è necessario introdurre meccanismi di protezione e di risoluzione di eventuali conflitti Contabilizzazione: talvolta l’uso delle risorse può essere soggetto a monitoraggio al fine di ottimizzare il tempo di risposta o di fatturare agli utenti il costo di impiego del sistema Gestione di malfunzionamenti
7
Elementi di un sistema operativo
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (5) Elementi di un sistema operativo All’interno di un sistema operativo si possono identificare i seguenti componenti: Sistema di gestione del processore Sistema di gestione della memoria Sistema di gestione delle periferiche Sistema di gestione dei file (file system) Sistema di gestione degli utenti e dei relativi comandi (interprete dei comandi) Sistema di gestione della rete
8
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (6)
Sistema di gestione dei file (file system) Tale sistema ha il compito di archiviare e reperire i dati sfruttando le periferiche che costituiscono la memoria di massa Sistema di gestione degli utenti e dei relativi comandi (interprete dei comandi) Permette gli utenti di accedere in modo semplice ed intuitivo alle funzionalità disponibili Sistema di gestione della rete Tale sistema permette di collegarsi alle risorse via rete e comunicare con processi presenti su altri calcolatori, sempre attraverso i meccanismi ed i servizi propri delle reti di calcolatori
9
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (7)
Quindi si può affermare che il sistema operativo è un insieme di programmi che sono in grado di controllare altri programmi eseguiti dallo stesso processore E’ opportuno sottolineare che sebbene vi siano delle forti analogie fra programmi applicativi e sistemi operativi vi sono delle importanti differenze: I programmi applicativi hanno accesso ad un insieme ridotto di risorse I programmi applicativi non possono stabilire autonomamente quando e come accedere alle risorse del sistema, ma sono costretti a chiedere al sistema operativo l’esecuzione di alcuni servizi
10
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (8)
L’organizzazione modulare del sistema operativo consente efficienti modalità di aggiornamento dell’hardware L’introduzione di un nuovo dispositivo richiede il solo aggiornamento della specifica parte del sistema operativo dedicata al controllo del nuovo componente
11
Evoluzione dei sistemi operativi
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (9) Evoluzione dei sistemi operativi I primi calcolatori non avevano un sistema operativo. Era chi produceva gli applicativi che doveva tenere conto di questi aspetti; Questo rendeva molto critica la fase di identificazione e correzione degli errori; Altri problemi erano legati alla difficoltà di interazione tra l’utente e la macchina (dovuta alla mancanza dell’interfaccia utente) e all’efficienza di gestione delle risorse disponibili; E’ opportuno sottolineare, inoltre, che la macchina consentiva l’esecuzione di un solo programma alla volta e doveva essere fissato in anticipo il tempo dedicato allo stesso (con conseguente introduzione di tempi morti): elaborazione seriale dei programmi;
12
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (10)
Tale approccio è stato migliorato attraverso l’introduzione di un sistema a lotti e di un componente detto monitor Il monitor è in grado di automatizzare l’avviamento e l’esecuzione di programmi Un approccio di questo tipo ottimizza lo sfruttamento delle risorse di elaborazione del sistema con un’efficace distribuzione del tempo di calcolo tra i vari programmi Svantaggio di questo tipo di approccio è il tempo di latenza che intercorre fra il momento in cui si lancia l’applicativo e quello in cui si possono ottenere i risultati Si noti che in questo modo la CPU risulta disponibile solo dopo il completamento del lotto in esecuzione
13
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (11)
Da queste considerazioni si evince che il sistema operativo deve presentare tali caratteristiche: Interattività con un utente; Protezione della memoria, in modo che un programma possa alterare l’esecuzione di un altro; Temporizzazione dell’esecuzione in modo da poter distribuire equamente il tempo fra i programmi in esecuzione; Gestione dell’attività di ingresso/uscita; Capacità di appropriato sfruttamento delle risorse disponibili nel sistema;
14
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (12)
I primi sforzi per soddisfare questi requisiti sono andati nell’ottica di ridurre l’impegno necessario per passare dall’esecuzione di un programma al successivo. Obiettivo era quello di conservare in memoria contemporaneamente diversi programmi oltre al sistema operativo. Si è passati quindi dai sistemi uniprogrammati a quelli multiprogrammati Nel caso di sistema uniprogrammato in memoria risiede, oltre che il sistema operativo, un solo applicativo Nel caso di sistema multiprogrammato in memoria risiede, oltre che il sistema operativo, più di un programma applicativo
15
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (13)
I benefici dell’approccio multiprogrammato sono evidenti. Si pensi ad un sistema di elaborazione in cui sia presente un solo processore In questa situazione il processore può eseguire un solo programma per volta: questo caso comporta un ridotto utilizzo del sistema Durante l’attesa, infatti, per le operazioni ingresso/uscita il processore rimane inattivo attendendo il termine delle stesse Nei sistemi uniprogrammati per sfruttare i tempi morti è necessario scaricare il programma residente in memoria e caricare dalla memoria di massa un nuovo programma da mandare in esecuzione
16
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (14)
Nei sistemi uniprogrammati per sfruttare i tempi morti è necessario scaricare il programma residente in memoria e caricare dalla memoria di massa un nuovo programma da mandare in esecuzione: soluzione accettabile solo quando i tempi di attesa siano maggiori rispetto al tempo di caricamento di un programma dalla memoria di massa Nei sistemi multiprogrammati è possibile passare ad altri programmi già presenti in memoria in tempi molto brevi in quanto il tempo di accesso della memoria centrale è tipicamente molto inferiore rispetto a quello della memoria di massa Lo svantaggio di quest’ultima soluzione risiede nell’aumento della complessità del sistema operativo
17
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (15)
Nell’ultimo periodo si è assistito allo sviluppo dei sistemi a partizione di tempo (time-sharing) che simulano un quasi parallelismo nell’accesso alle risorse da parte di più utenti e programmi Al fine di evitare che la CPU venga utilizzata in modo esclusivo da un unico programma, il suo tempo viene idealmente suddiviso in unità elementari dette quanti I quanti possono essere assegnati in accordo ad alcune politiche predefinite ai vari programmi Un esempio di queste politiche può essere quella di assegnare a rotazione la disponibilità di un quanto di tempo della CPU ai vari programmi residenti in memoria (politica detta di round robin) Un miglioramento può essere ottenuto prevedendo l’opzione che un programma possa rinunciare anche prima dello scadere del suo quanto di tempo alla disponibilità della CPU
18
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (16)
Sfruttamento dei tempi di attesa per le operazioni di ingresso/uscita tramite la tecnica del time-sharing
19
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (17)
La durata del quanto di tempo incide significativamente sia sulle prestazioni del sistema che sull’efficacia del quasi parallelismo; Un tempo molto alto del quanto fa ricadere l’approccio nella sequenzializzazione dei programmi; Un tempo molto basso può portare ad un degrado delle prestazioni complessive del sistema se il tempo di commutazione è paragonabile al quanto stesso;
20
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (18)
Nei sistemi moderni il parallelismo nell’esecuzione ha portato a superare il concetto statico di programma; L’entità di riferimento è diventata il processo: unità di esecuzione dinamica che include il programma che viene eseguito e il suo contesto di esecuzione; Il contesto di esecuzione è l’insieme dei dati che sono necessari perché il programma possa essere eseguito; In questo modo l’intera architettura del sistema operativo è concepita come infrastruttura di supporto all’esecuzione concorrente di più processi da parte di più utenti.
21
Modelli organizzativi dei sistemi operativi
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (19) Modelli organizzativi dei sistemi operativi Il sistema operativo è funzionalmente caratterizzato dalla combinazione di un insieme di processi di servizio e di un gestore (detto nucleo) che opera come sistema di controllo dei processi Si possono identificare diverse alternative in riferimento alla collocazione delle funzione di gestione del processore che possono essere fornite sempre in mutua esclusione a un processo alla volta oppure possono essere virtualmente condivise In base a quanto detto esistono due modelli organizzativi di riferimento: Modello monolitico Modello a strati
22
Si definiscono quindi due modalità di funzionamento
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (20) Modello monolitico Il sistema operativo è costituito da un unico processo che si preoccupa della gestione del sistema I processi applicativi in genere richiedono al sistema operativo l’esecuzione di particolari servizi attraverso quelle che vengono dette chiamate di sistema Si definiscono quindi due modalità di funzionamento Utente: usata per la normale esecuzione dei processi. In questa modalità non è possibile accedere a tutte le risorse del sistema Supervisore: permette lo svolgimento dei servizi richiesti al sistema operativo da parte di un processo Tale approccio è tipico di sistemi semplici dedicati alla gestione di una sola applicazione
23
Questo modello è caratterizzato da una strutturazione a strati
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (21) Modello a strati Questo modello è caratterizzato da una strutturazione a strati Ognuno di questi strati è costruito a partire da quelli sottostanti. Tale modello garantisce la modularità del sistema che si va a realizzare Le funzioni realizzate dal sistema operativo sono ripartite in componenti fra loro indipendenti e implementate dai processi gestiti dal nucleo Si noti come solo il nucleo resti il componente del sistema operativo dipendente dalle caratteristiche hardware del calcolatore In questo modo vi è una notevole separazione fra i meccanismi e le politiche di gestione delle risorse che in questo modo possono essere stabilite in modo indipendente dall’hardware
24
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (22)
Modello a strati In base a quanto precedentemente detto il sistema operativo risulta fortemente portabile (con l’eccezione del nucleo) e adattabile a calcolatori diversi I sistemi operativi attualmente più diffusi adottano un approccio di questo tipo Essi sono strutturati su un modello in ogni strato corrisponde ad una macchina virtuale che usa i servizi del livello sottostante
25
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (23)
Applicativi Interprete dei comandi (shell) Gestore del file (file system) Gestore delle periferiche Gestore della memoria Nucleo Hardware La struttura classica di un sistema operativo a livelli, ognuno corrispondente ad una macchina virtuale: al di sopra il sistema operativo si trovano sia i programmi applicativi che quelli di utilità
26
Modello a strati Nel modello proposto:
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (24) Modello a strati Nel modello proposto: Ogni macchina virtuale è un insieme di programmi che realizza funzionalità utilizzando i servizi forniti dal livello inferiore Ogni macchina virtuale gestisce risorse specifiche del sistema semplificando l’interazione con esse I meccanismi di gestione sono separati dalle politiche di gestione delle risorse
27
Interagisce direttamente con l’hardware
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (25) Nucleo Il nucleo: Interagisce direttamente con l’hardware Si occupa dell’esecuzione dei programmi Gestisce la risposta ad eventi esterni generati dalle periferiche Attua una politica di alternanza nell’accesso alla CPU da parte dei processi in esecuzione Il nucleo fornisce alle macchine virtuali di livello superiore la visione di un insieme di unità di elaborazione virtuali dedicate ad ogni processo presente in memoria
28
Video/Tastiera (terminale)
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (26) CPU Memoria di lavoro Memoria di massa Video/Tastiera (terminale) Interfaccia I/O Interfaccia I/O dati BUS indirizzi controllo Struttura di base di un calcolatore
29
Video/Tastiera (terminale)
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (27) Memoria di lavoro Memoria di massa Video/Tastiera (terminale) Interfaccia I/O Interfaccia I/O dati BUS indirizzi controllo CPU virtuale CPU virtuale CPU virtuale CPU virtuale ……………… processo processo processo processo Visione della struttura precedente fornita dal sistema operativo
30
Il gestore della memoria Il gestore della memoria:
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (28) Il gestore della memoria Il gestore della memoria: Controlla la memoria centrale Offre ad ogni processo uno spazio di memoria in cui operare. In particolare il gestore della memoria è chiamato a: Proteggere programmi e relativi dati caricati nella memoria di lavoro (evitando conflitti) Nascondere la collocazione fisica dei dati Ruolo di questo componente è offrire alle macchine di livello superiore la possibilità di lavorare come se esse avessero a disposizione una memoria a loro dedicata
31
Video/Tastiera (terminale)
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (29) Memoria di lavoro Memoria di massa Video/Tastiera (terminale) Interfaccia I/O Interfaccia I/O dati BUS indirizzi controllo CPU virtuale CPU virtuale CPU virtuale CPU virtuale ……… processo processo processo processo Memoria Memoria Memoria Memoria
32
Il gestore delle periferiche Il gestore delle periferiche:
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (30) Il gestore delle periferiche Il gestore delle periferiche: Fornisce una visione astratta del sistema in cui i processi possono operare mediante periferiche astratte Maschere le problematiche connesse alla gestione di tali periferiche Risolve eventuali conflitti di accesso alla periferiche da parte di più processi
33
Ciò accade grazie all’introduzione dei:
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (31) Le funzionalità che un sistema operativo mette a disposizione dell’utente per interagire con le periferiche consento l’esecuzione di operazioni di lettura e scrittura mediante comandi indipendenti dalla struttura hardware delle periferiche in questione Ciò accade grazie all’introduzione dei: Controller: dispositivi hardware che servono a effettuare a livello fisico le operazioni di trasferimento dei dati con le periferiche Driver: programmi finalizzati alla gestione delle periferiche. Sebbene vengano prodotti e forniti dai produttori delle periferiche essi fanno parte a tutti gli effetti del sistema operativo
34
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (32)
Memoria di lavoro Memoria di massa Interfaccia I/O dati BUS indirizzi controllo CPU virtuale I/O virtuale CPU virtuale I/O virtuale …… I/O virtuale I/O virtuale processo processo Memoria Memoria
35
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (33)
La memoria di massa, sebbene sia una periferica, necessita di un gestore appositamente concepito: il gestore dei file (file system) Tale componente organizza dati e programmi in strutture logiche dette file Ogni file è identificato da un nome ed è accessibile tramite comandi di alto livello Il file system permette di definire, inoltre, diritti di accesso al file
36
L’interprete dei comandi
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (34) L’interprete dei comandi L’interprete dei comandi è un modulo a cui l’utente può direttamente accedere La sua funzione è quella di interpretare i comandi che gli giungono e di attivare i programmi corrispondenti Le operazioni che può svolgere sono: Lettura dalla memoria di massa del programma da eseguire Allocazione della memoria centrale caricamento del programma e dei relativi dati nella memoria allocata Creazione e attivazione del processo corrispondente
37
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (35)
File System – Dettagli Un sistema informatico ha fra i suoi compiti la gestione di una grande quantità di dati, sia in termini di memorizzazione non volatile sia per quanto riguarda l’organizzazione logica dei dati Il file system è chiamato a gestire in modo efficace ed efficiente la memoria di massa. In particolare ha il compito di presentare all’utente in modo semplice l’organizzazione dei dati e le operazioni che su di essi si possono compiere
38
Le operazioni di base garantite dal file system sono:
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (36) Le operazioni di base garantite dal file system sono: Il recupero di dati precedentemente memorizzati L’eliminazione di dati obsoleti La modifica e/o aggiornamento di dati preesistenti La copia di dati Tali servizi possono essere utilizzati sia da programmi applicativi che direttamente dagli utenti
39
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (37)
I dati contenuti nella memoria di massa vengono strutturati attraverso la loro organizzazione in file Un file viene identificato attraverso un nome (filename) composto da due parti Nome vero e proprio: deciso dall’utente Estensione: assegnata (generalmente) dal sistema in accordo alla tipologia di programma che ha generato il file Esempi di estensione: Exe: file eseguibili Doc: file generati dal programma di elaborazione testi word Txt: file di testi generici Waw: file audio Mp3: file audio Jpg: file immagine
40
La lunghezza del filename può avere delle limitazioni.
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (38) La lunghezza del filename può avere delle limitazioni. MS-DOS (uno dei primi sistemi operativi) aveva una lunghezza massima per il filename di 11 caratteri (8 per il nome e 3 per l’estensione) Windows XP o Unix (altri sistemi operativi) non hanno questa limitazione Ad ogni file sono, inoltre, associate le seguenti informazioni: Grandezza del file Data e ora della creazione Data di ultima modifica Informazioni che vengono utilizzate direttamente dal sistema operativo (per esempio eventuali protezioni)
41
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (39)
Se il file system avesse un’organizzazione monolitica si andrebbe incontro ad una serie di incovenienti quali per esempio l’impossibilità di non avere più file con lo stesso filename Per risolvere tali problemi i file vengono suddivisi in contenitori logici chiamati directory o cartelle La struttura secondo cui vengono organizzati file e cartelle è detta ad albero Il file system contiene una radice (root) che può contenere file e directory (dette anche sub-directory) che a loro volta possono avere al loro interno file o altre directory
42
Organizzazione ad albero di un file system
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (40) Root Video Canzoni Immagini intro.mpg Natale Capossela Mare Montagna albero.bmp Maraja.mp3 sci.bmp Casa.bmp pista.jpg Organizzazione ad albero di un file system
43
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (41)
Ciascun file, quindi, viene univocamente identificato attraverso il suo nome completo (detto anche percorso assoluto) Il nome completo si ottiene scrivendo ordinatamente i nomi dei vari nodi che si incontrano a partire dalla radice e intervallati dal carattere di separazione \ Esempio: nel lucido precedente il nome completo del file sci.jpg è \immagini\montagna\sci.jpg Non è possibile avere nel file system due file con lo stesso nome completo ma è possibile avere due file con lo stesso filename a patto che essi siano in cartelle diverse.
44
Parte 1: “Rappresentazione digitale delle immagini: principi di base” (42)
Durante le operazioni di gestione del file system è sempre definita in ogni istante una directory corrente che identifica la posizione attuale dell’utente nel file system E’ possibile quindi identificare un file anche con un suo percorso relativo Se la directory corrente (nell’esempio del lucido precedente) è \video allora il file \video\natale\albero.bmp può essere anche individuato come natale\albero.bmp (la mancanza di \ nel nome indica che il percorso è relativo)
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.