Sistemi Operativi Cosa è un sistema operativo Un po’ di storia

Slides:



Advertisements
Presentazioni simili
Scheduling (Schedulazione) Susanna Pelagatti – Università di Pisa
Advertisements

STRUTTURA DEL SISTEMA OPERATIVO
1 Introduzione ai calcolatori Parte II Software di base.
Sistemi Operativi Sistemi Operativi.
Gestione della memoria centrale
Il Sistema Operativo Il Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono e cooperano per: gestire.
STRUTTURA DEL PERSONAL COMPUTER
Il Sistema Operativo.
Orario definitivo Martedì Aula 2 Polo Mercoledì Aula 1 Fondi Palazzina delle Scienze Giovedì 9-11 Aula 1 Fondi Palazzina delle Scienze Nota:
Elaboratore e Sistemi Operativo
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
Time Sharing Il termine “Time Sharing” proviene dall'inglese e significa letteralmente “partizione di tempo”. Questa è una tecnica sviluppatasi negli.
Realizzazione del file system
Interfaccia del file system
Realizzazione del file system
INTRODUZIONE AI SISTEMI OPERATIVI
Il Software: Obiettivi Programmare direttamente la macchina hardware è molto difficile: lutente dovrebbe conoscere lorganizzazione fisica del computer.
Architetture hardware e software dei calcolatori
1 Corso di Informatica (Programmazione) Lezione 4 (24 ottobre 2008) Architettura del calcolatore: la macchina di Von Neumann.
Windows 2000 supporta i seguenti file system:
Le prestazioni (velocità) di un singolo disco sono limitate dalla tecnologia usata, -per aumentare le prestazioni si può pensare di far operare in parallelo.
Sistema Operativo e Compilatore
Struttura dei sistemi operativi (panoramica)
File System NTFS 5.0 Disco: unità fisica di memorizzazione
Software di base Il sistema operativo è un insieme di programmi che opera sul livello macchina e offre funzionalità di alto livello Es.organizzazione dei.
Linguaggi di programmazione
Introduzione Cosa è un Sistema Operativo ?
Sistemi Operativi GESTIONE DELLA MEMORIA CENTRALE.
Strutture dei sistemi di calcolo Funzionamento di un sistema di calcolo Struttura di I/O Struttura della memoria Gerarchia delle memorie Architetture di.
Il sistema operativo Vito Perrone
SOFTWARE I componenti fisici del calcolatore (unità centrale e periferiche) costituiscono il cosiddetto Hardware (alla lettera, ferramenta). La struttura.
La macchina di von Neumann
La macchina di von Neumann
UNIVERSITA’ STUDI DI ROMA “FORO ITALICO”
INTRODUZIONE l sistema operativo è il primo software che lutente utilizza quando accende il computer; 1)Viene caricato nella memoria RAM con loperazione.
Il Software Una programmazione diretta della macchina hardware da parte degli utenti è molto difficile: lutente dovrebbe conoscere lorganizzazione fisica.
MODULO 01 Unità didattica 04
Modulo 1 - Concetti di base della Tecnologia dell'Informazione
STRUTTURA GENERALE DI UN ELABORATORE
Software e sistema operativo 19-22/5/08 Informatica applicata B Cristina Bosco.
Il sistema operativo.
Seconda Università degli Studi di Napoli Facoltà di Economia Corso di Informatica Prof.ssa Zahora Pina.
Il Sistema Operativo (1)
Il Sistema Operativo: il File System
Il Software Programmare direttamente la macchina hardware è molto difficile: l’utente dovrebbe conoscere l’organizzazione fisica del computer e il suo.
I sistemi operativi1 CONCETTI FONDAMENTALI l HARDWARE: il componente “materiale” di un sistema informatico l SOFTWARE: il componente “immateriale” di un.
Sistema Operativo (Software di base)
Realizzazione a cura di
I processi.
SISITEMI MONOPROGRAMMATI E MULTI PROGRAMMATI
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
1 Gestione della Memoria. 2 Idealmente la memoria dovrebbe essere –grande –veloce –non volatile Gerarchia di memorie –Disco: capiente, lento, non volatile.
INTERFACCE Schede elettroniche che permettono al calcolatore di comunicare con le periferiche, che possono essere progettate e costruite in modo molto.
Gestione del processore (Scheduler)
1 Input/Output. 2 Livelli del sottosistema di I/O Hardware Gestori delle interruzioni Driver dei dispositivi Software di sistema indipendente dal dispositivo.
Corso di Laurea in Scienze e Tecnologie Chimiche corso di Informatica Generale Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
1 Input/Output. 2 Livelli del sottosistema di I/O Hardware Gestori delle interruzioni Driver dei dispositivi Software di sistema indipendente dal dispositivo.
Gestione della Memoria
Sistema operativo Il sistema operativo è un insieme di programmi che gestiscono tutte le componenti hardware e software di un calcolatore. Spesso si può.
Sistemi operativi di rete Ing. A. Stile – Ing. L. Marchesano – 1/18.
Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per l’ambiente e il territorio Il software di base Stefano Cagnoni e Monica Mordonini.
1 1. Introduzione alla gestione della memoria 2. Swapping 3. Memoria virtuale 4. Implementazione 5. Algoritmi di sostituzione Gestione della Memoria.
Informatica Lezione 6 Psicologia dello sviluppo e dell'educazione (laurea magistrale) Anno accademico:
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
I primi elaboratori Anni ‘50 Rigidamente sequenziali
INTRODUZIONE AI SISTEMI OPERATIVI. Introduzione Il software può essere diviso un due grandi classi: Il software può essere diviso un due grandi classi:
I Sistemi Operativi. Definizione Per Sistemi Operativi (di seguito SO) si intendono quei pacchetti software, a loro volta costituiti da più sottoprogrammi.
 Ogni processo che deve essere eseguito da un sistema di elaborazione, deve essere caricato e risiedere almeno parzialmente nella memoria centrale 
1 Informatica di Base Facoltà di Lingue e Letterature Straniere Corso di laurea in Relazioni Pubbliche.
Definizione e obiettivi del Sistema Operativo. DIFFERENZA TRA SISTEMA OPERATIVO – SOFTWARE APPLICATIVO Sistema operativo è un insieme organico di programmi.
Transcript della presentazione:

Sistemi Operativi Cosa è un sistema operativo Un po’ di storia Il gestore dei Processi Il gestore della Memoria Il File System Sistemi Operativi

Il sistema di Elaborazione ... … E’ costituito da Hardware, Programmi di Sistema e Programmi Applicativi Programmi Applicativi Utility di Sistema Interprete dei Comandi Sistema Operativo Linguaggio Macchina Microprogrammazione Dispositivo Fisico Sistemi Operativi

Cosa è un Sistema Operativo (S.O.) Le due viste del S.O. Un S.O. ha due funzioni fondamentali, apparentemente scorrelate S.O. come generatore di macchina estesa o virtuale S.O. come gestore delle risorse Sistemi Operativi

S.O. come macchina estesa Punto di vista Top Down (Dall’alto verso il basso) ... Sia il programmatore che l’utente preferiscono trattare con una ASTRAZIONE della macchina reale Il S.O. nasconde al programmatore la “verità” sui livelli hardware sottostanti e presenta un sistema semplice di accesso alle funzionalità del sistema nonché un’interfaccia gradevole e amichevole all’utente, maggiori funzionalità, ecc. Sistemi Operativi

Il modello a Macchine Virtuali S0 M1 S1 M2 S2 S2’ M3 S3 M4 Weidernann 1971 Mi rappresenta la macchina Si lo strato software ad esso sovrapposto Sistemi Operativi

Il modello stratificato di un S.O. Nucleo Gestore memoria Gestore di I/O File system Interprete Comandi Programmi Utente Sistemi Operativi

S.O. come gestore delle risorse Punto di vista Bottom Up (dal basso verso l’alto) Gestisce tutte le componenti di un sistema complesso ALU Registri Controllo ROM RAM HD FD Interfaccia I/O Monitor CPU Memoria BUS Sistemi Operativi

Classificazione dei S.O. MonoTask è presente un solo processo/programma alla volta Mono Utente è collegato un solo utente alla volta MonoTask -> Mono Utente MultiTask sono presenti più processi/programmi alla volta Multi Utente sono collegati più utenti alla volta Sistemi Operativi

Classificazione dei S.O. (cont.) MonoTask MS-DOS MultiTask e Mono Utente Win98 MultiTask e Multi Utente WinXP, Unix, Linux Sistemi Operativi

Turn Around Time Tta Tta =TO-TI Tta Elaborazione Tta Input Output TI TO tI t Tta =TO-TI è il tempo che passa tra l’ingresso dei dati e la produzione dell’output Sistemi Operativi

Throughput E’ proporzionale al numero di lavori eseguiti dal sistema nell’unità di tempo T E’ detto anche CARICO del SISTEMA Sistemi Operativi

Overhead di Gestione Sovraccarico Gestionale E’ proporzionale al tempo consumato dal S.O. per eseguire il suo compito Sistemi Operativi

Un sistema efficiente ... Throughput Elevato TurnAround Time Basso Overhead Gestionale Basso Ma …. Quando il Turnaround è basso? Sistemi Operativi

Un po’ di storia Per comprendere le funzionalità di un S.O. è comodo seguirne l’evoluzione storica anni 40 assenza di S.O. anni 50 gestione dei lavori a lotti anni 60 multiprogrammazione metà anni 60 Sistemi General Purpose a metà anni 70 metà anni 70 DB, Reti, S.Distribuiti ad oggi Sistemi Operativi

Un semplice schema CPU Memoria Canale OUTPUT INPUT Sistemi Operativi

Overlap delle attività CPU Input Output i1 e1 o1 i2 e2 eN o2 oN i3 e3 …. overlap THROUGHPUT proporzionale a: Sistemi Operativi

Le interruzioni (1) Con l’introduzione dei canali di dati si risolve il problema della sovrapposizione delle operazioni di I/O ma e’ necessario poter sovrapporre le operazioni di calcolo e quelle di I/O. Per far cio’ e’ necessario che l’attivita’ della CPU sia interrompibile a seguito di un evento esterno come, ad es., la fine della stampa di un file. Per risolvere questo problema è stato introdotto il concetto delle interruzioni. Sistemi Operativi

Le interruzioni (2) Le interruzioni sono segnali che, arrivando alla CPU, possono interrompere, se abilitate, l’esecuzione del programma in corso ed eseguire un programma particolare detto Interrupt Service Routine (ISR) Tramite l’uso dei canali e degli interrupts e’ possibile: sovrapporre le operazioni di input e di output sovrapporre le operazioni di calcolo e quelle di I/O Per ottenere la sovrapposizione massima tra queste operazioni in memoria si caricano piu’ programmi in modo che, mentre uno e’ impegnato in operazioni di I/O, un altro possa utilizzare la CPU. Sistemi Operativi

MultiTask o Multiprogrammazione Possibilita’ di caricare piu’ programmi in memoria in grado di condividere l’uso della CPU e delle risorse dell’elaboratore E’ possibile che il S.O per realizzare la multiprogrammazione non mantenga tutti i programmi in memoria ma li carichi di volta in volta quello piu’ idoneo da un supporto di massa Tale tecnica, detta di “swapping” e’ meno efficiente ma risulta necessaria quando si hanno problemi di dimensione della memoria Sistemi Operativi

Sistemi Time Sharing (1) Un processo rimane in running solo per un intervallo fissato di tempo (Time Slice) Per evitare che resti padrone della CPU a tempo indeterminato Il Supervisore riacquista il controllo quando è terminata la time slice il programma termina la sua esecuzione il programma avanza una richiesta di I/O Sistemi Operativi

Sistemi Time Sharing (2) Running Waiting Ready fine op. I/O attesa di op. di I/O attivazione da parte della CPU (scheduler) Fine Time Slice È ovvio che un programma per terminare la sua esecuzione avrà bisogno di più time slice aumenta il turnaorund time dei singoli processi migliora il throughput complessivo Sistemi Operativi

Sistemi Real Time Un sistema Real Time è al servizio di una specifica applicazione controllo centrale nucleare controllo caldaia controllo radar E ha severi limiti nei tempi di risposta ossia la risposta deve essere prodotta in tempi utili per l’ambiente esterno L’overhead deve essere ridotto all’osso Sistemi Operativi

da parte della CPU (scheduler) Sistemi Real Time(2) Running Waiting Ready fine evento attesa di evento attivazione da parte della CPU (scheduler) pre-emption Con la pre-emption si garantisce che il processo più importante sia quello running aumenta overhead ottimizza turnaorund il throughput non è significativo Sistemi Operativi

Il Gestore della Memoria Il compito del Gestore della Memoria è ricordare quali parti della memoria sono attualmente in uso e quali non lo sono di assegnare la memoria ai processi di deallocare la memoria assegnata di amministrare gli scambi tra memoria centrale e disco quando la prima non è più in grado di contenere i processi (swapping) Sistemi Operativi

Partizioni Fisse La memoria è divisa in n partizioni di lunghezza diversa Problema: qualsiasi spazio non usato è perso Part. 4 Part. 3 Part. 2 Part. 1 Sistema Operativo P1 21 P3 P4 Coda di Input Sistemi Operativi

Partizioni Variabili S.O. A S.O. A B S.O. A B C S.O. B C S.O. B C D L’allocazione cambia a mano a mano che i processi entrano in memoria e poi la lasciano Problema: compattazione e garbage collection Sistemi Operativi

Paginazione Lo spazio degli indirizzi viene suddiviso in unità logiche dette pagine alle pagine corrispondono unità di memoria fisica detti frame Alcune pagine sono i memoria centrale, altre su disco se si tenta di accedere ad una pagina non in memoria centrale, viene provocata una eccezione detta page fault. A questo punto il S.O. prende un frame poco usato, la scarica su disco e carica la pagina richiesta dal disco al frame liberato Sistemi Operativi

Memory Paging e Mapping Sistemi Operativi

Sistemi Operativi

File System Crea una corrispondenza tra l’organizzazione logica dei file e la loro struttura fisica corrispondenza tra spazio logico e spazio fisico scambio dei dati tra memoria di massa e memoria fisica gestione dei buffer di sistema allocazione dei blocchi sulla memoria di massa condivisione e protezione dei file pipes o canali virtuali di comunicazioni fra processi. Sistemi Operativi

Il File System Dal punto di vista dell’utente il File System è caratterizzato dalle operazioni che ha a disposizione, cioè … come si definisce un file come il file vengono denominati e protetti che operazioni sono permesse sui file e così via Tipizzazione dei file mediante un suffisso (“estensione”). Tipica di Windows. altre tecniche Sistemi Operativi

lista dei blocchi usati Directory Elemento Nome del file tipo del file dimensione del file proprietario protezione tempo di creazione ultima modifica lista dei blocchi usati directory Per tenere traccia dei file, il File system mette a disposizione dell’utente dei directory contenente un certo numero di elementi, uno per file Sistemi Operativi

Albero dei directory E’ molto comune che un utente voglia raggruppare i suoi file in modo logico, attraverso una struttura gerarchica Radice A B C D F1 F2 F3 Sistemi Operativi

Memorizzazione dei File Un file è di solito composto da una sequenza di blocchi Il File System deve tenere traccia dei blocchi di ciascun file Negli ambienti Microsoft ad ogni disco è associata una tabella d’allocazione dei file o FAT, contenente un elemento per ogni blocco del disco. Il directory contiene il numero di blocco del primo blocco dei file Sistemi Operativi

La FAT X EOF FREE 2 9 8 4 11 1 3 5 6 7 10 File A File B Directory ext 1 3 5 6 7 10 File A File B Directory ext A Riserv. H D Sistemi Operativi

I tipi di FAT FAT Ogni entry è di 16 bits, cioè 65.535 clusters max Ogni cluster è max 32768 bytes, il filesystem ha un limite massimo superiore di 2 Gbytes per la dimensione della partizione. FAT32 Ogni entry è di 32 bits, cioè 4.294.836.225 clusters max Ogni cluster è max 32768 bytes, il filesystem ha un limite massimo superiore di 32 Gbytes per la dimensione della partizione. Sistemi Operativi

I tipi di FAT (cont.) Dimensioni dei cluster in base alla grandezza delle partizioni   FAT fino a 128MB -> 2KB 128-256MB -> 4KB 256-512MB -> 8KB 512-1024MB -> 16KB 1024-2048MB -> 32KB FAT32 512MB-8GB -> 4KB 8GB-16GB -> 8KB 16GB-32GB -> 16KB 32GB o + -> 32KB Sistemi Operativi

Sistemi Operativi