Sistema operativo Il Sistema Operativo gestisce le risorse
- Slides: 29
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
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
Classificazione dei S. O. rispetto alla struttura • Diverse tecniche di gestione delle risorse: – monoprogrammazione – multielaborazione • La scelta dipende anche dal tipo di calcolatore e dalle sue caratteristiche hw
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
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;
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
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
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
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
Parallelismo spaziale • E' anche detto parallelismo sui dati • Indica la quantità di dati che vengono elaborati contemporaneamente • Esempio del processore Pentium
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
Gestione della memoria • I sistemi di memoria possono essere suddivisi in: – memoria interna al processore – memoria principale – memoria secondaria
Memoria interna • Registri interni alla CPU (visibili al programmatore Assembly) • Memorizzano temporaneamente i dati e le istruzioni • Dimensioni: decine di bytes
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
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
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
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)
Tecnologie delle memorie • Memorie a semiconduttore con tecnologia VLSI (Very Large Scale of Integration) • Memorie magnetiche (memoria secondaria) • Memorie ottiche (memoria secondaria)
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
Gerarchie di memoria • La soluzione ottimale per un sistema di memoria è: – costo minimo – capacità massima – tempi di accesso minimi • Soluzione approssimata: gerarchia
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
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
Località Numero di accessi in intervallo di tempo • Nel breve periodo, gli indirizzi generati da un programma sono confinati in regioni limitate Spazio indirizzi
Struttura della gerarchia • Memorie M 1 e M 2 (tecnologie diverse) con: – costo per bit: c 1 > c 2 – dimensioni: S 1 < S 2 – tempi di accesso: t 1 < t 2 M 1 M 2
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
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
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
Sostituzione dati in memoria • Obiettivo: – minimizzare il numero di insuccessi • Politiche: – FIFO: First In First Out – LRU: Least Recently Used
Esempio di gerarchia CPU Cache L 1 Cache L 2 Memoria Principale Memoria Secondaria
- Risorse idriche torino
- Impatto
- Mappa del valore della risorsa
- Dimensionamento delle risorse
- Risorse energetiche sudafrica
- Il ciclo del valore delle risorse umane
- Risorse umane costa gianecchini
- La valutazione didattica
- Nuove risorse digitali e loro impatto sulla didattica
- Pianificazione strategica delle risorse umane
- Master gestione delle risorse umane
- Quali sono le principali risorse energetiche in islanda
- Modelli di gestione delle risorse umane
- Dirigenti carrefour italia
- Imagenes del sistema operativo windows
- Sistema operativo propietario
- Objetivos de un sistema operativo
- Estructura sistema operativo
- Sistemas operativos monousuarios
- Sistema operativo multitasking
- Capas de sistema operativo
- Onion skin sistema operativo
- Router sistema operativo
- Sistema operativo windows 2000
- Sistema operativo definizione
- Monotarea
- Sistema operativo symbian ventajas y desventajas
- Sistema operativo
- Scheduled significado
- Slax ipxe