Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoMichela Cicci Modificato 9 anni fa
1
Sistema operativo Il Sistema Operativo gestisce le risorse hw e sw del sistema di elaborazione Facilita l'interazione tra utente e sistema Esistono diversi tipi di sistemi operativi, classificati rispetto: –alle funzionalità –alle caratteristiche della struttura interna
2
Classificazione dei S.O. rispetto alle funzionalità Sistemi interattivi –l'utente, attraverso un terminale, comanda l'esecuzione delle diverse fasi –comodo e flessibile (per la messa a punto) Sistemi a lotti (o batch) –la sequenza deve essere decisa a priori –scomodo, ma utilizzato per processi lunghi o per l'esecuzione finale
3
Classificazione dei S.O. rispetto alla struttura Diverse tecniche di gestione delle risorse: –monoprogrammazione –multiprogrammazione –multielaborazione La scelta dipende anche dal tipo di calcolatore e dalle sue caratteristiche hw
4
Monoprogrammazione E' il modo più semplice per gestire un elaboratore –il S.O. gestisce in modo sequenziale i diversi programmi, uno per volta –poca efficienza dell'hw a causa della diversa velocità tra CPU e periferiche
5
Multiprogrammazione Vengono gestiti simultaneamente più programmi indipendenti; gestione ottimale Il S.O. è molto più complesso: –carica contemporaneamente più programmi –mentre uno è in attesa, ne esegue un altro –la scelta dipende dalla priorità problemi di starvation; meccanismi di alternanza; time-sharing;
6
Multielaborazione Più CPU o più elaboratori cooperano nell'esecuzione dei programmi Problematiche molto complesse Richiedono speciali architetture dei sistemi di elaborazione Sono lo stato dell'arte della tecnologia corrente
7
Multielaborazione Esistono due diverse modalità: –SIMD (Single Instruction Multiple Data) elaboratore formato da più CPU, ognuna delle quali esegue le stesse operazioni su dati diversi CPU semplici, in numero elevato –MIMD (Multiple Instruction Multiple Data) elaboratore formato da più CPU, ognuna delle quali esegue operazioni diverse su dati diversi CPU anche complesse, in numero ristretto
8
Multielaborazione Esempi: –SIMD: elaborazione di immagini, di suoni, simulazioni a grana fine –MIMD: trattamento di grosse moli di dati, elaborazione di immagini a grana grossa
9
Multielaborazione Può esservi multielaborazione non solo a livello di sistema di elaborazione, ma anche a livello di CPU (parallelismo) La CPU può essere caratterizzata da diversi livelli di parallelismo: –parallelismo di parola –parallelismo spaziale –parallelismo di istruzione
10
Parallelismo spaziale E' anche detto parallelismo sui dati Indica la quantità di dati che vengono elaborati contemporaneamente Esempio del processore Pentium
11
Parallelismo di istruzione L'esecuzione di un'istruzione coinvolge più risorse Se due istruzioni sono indipendenti e utilizzano diverse risorse, possono essere eseguite contemporaneamente Le CPU con queste possibilità sono suddivise in stages Si dicono processori a pipeline
12
Gestione della memoria I sistemi di memoria possono essere suddivisi in: –memoria interna al processore –memoria principale –memoria secondaria
13
Memoria interna Registri interni alla CPU (visibili al programmatore Assembly) Memorizzano temporaneamente i dati e le istruzioni Dimensioni: decine di bytes
14
Memoria principale Veloce e di grande capacità Memorizza dati e istruzioni che servono per il funzionamento della CPU La CPU vi accede direttamente Dimensioni: decine di MBytes
15
Memoria secondaria Di grandi dimensioni e molto più lenta della memoria principale Memorizza dati e istruzioni che non sono di immediato interesse per la CPU Dimensioni: decine di Gigabytes
16
Memoria secondaria Può essere suddivisa in: –memorie in linea (es. dischi magnetici); interesse nell’ambito dei millisecondi … secondi –memorie fuori linea (es. nastri magnetici); interesse nell’ambito dei minuti … anni
17
Tecnologie e caratteristiche Le memorie differiscono per la tecnologia con cui sono realizzate e per i seguenti parametri: –costo per singolo bit immagazzinato –tempo di accesso (ritardo tra la richiesta del dato e la sua disponibilità al richiedente) –modi di accesso (seriale o casuale)
18
Tecnologie delle memorie Memorie a semiconduttore con tecnologia VLSI (Very Large Scale of Integration) Memorie magnetiche (memoria secondaria) Memorie ottiche (memoria secondaria)
19
Il sistema di memoria La memoria deve essere progettata e gestita in modo da ottenere: –capacità di memorizzazione adeguata –prestazioni accettabili –costi ridotti Il collo di bottiglia della macchina di Von Neumann è la comunicazione tra la CPU e la memoria
20
Gerarchie di memoria La soluzione ottimale per un sistema di memoria è: –costo minimo –capacità massima –tempi di accesso minimi Soluzione approssimata: gerarchia
21
Esempio di gerarchia Il sistema di memoria di uno studente: –la propria memoria –borsa –scaffale di casa –libreria o biblioteca di Facoltà –depositi casa editrice
22
Località Un sistema di memoria gerarchico è efficiente se la modalità di accesso ai dati ha caratteristiche prevedibili Principio di località: –Se al tempo t si accede all’indirizzo X, è molto probabile che l’indirizzo X+ΔX sia richiesto fra t e t+Δt
23
Località Nel breve periodo, gli indirizzi generati da un programma sono confinati in regioni limitate Spazio indirizzi Numero di accessi in intervallo di tempo
24
Struttura della gerarchia Memorie M1 e M2 (tecnologie diverse) con: –costo per bit: c1 > c2 –dimensioni: S1 < S2 –tempi di accesso: t1 < t2 M1 M2
25
Gestione della gerarchia La gestione deve essere automatica e trasparente all’utente I dati utilizzati più raramente sono posti in memorie con tempi di accesso più elevato; i dati utilizzati più frequentemente in memorie con prestazioni più elevate
26
Gestione della gerarchia Obiettivi: –mimare una memoria con: tempi di accesso della più veloce le dimensioni della maggiore i costi della più economica Criteri: –allocazione dinamica –spostamento automatico dei dati
27
Memoria virtuale Il meccanismo di gestione della gerarchia di memoria si dice Memoria Virtuale La memoria virtuale: –sfrutta efficacemente la gerarchia –rende il programma indipendente dalle dimensioni della memoria della macchina –libera il programmatore dalla gestione dello spazio di memoria fisico
28
Sostituzione dati in memoria Obiettivo: –minimizzare il numero di insuccessi Politiche: –FIFO: First In First Out –LRU: Least Recently Used
29
Esempio di gerarchia CPU Cache L1 Cache L2 Memoria Principale Memoria Secondaria
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.