STRUTTURE DEI SISTEMI DI CALCOLO



Documenti analoghi
Architettura di un sistema di calcolo

Il sistema di I/O. Hardware di I/O Interfacce di I/O Software di I/O. Introduzione

Input/Output. Moduli di Input/ Output. gestiscono quantità di dati differenti a velocità diverse in formati diversi. n Grande varietà di periferiche

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

Come funziona un sistema di elaborazione

Sistemi Operativi (modulo di Informatica II) Sottosistema di I/O

Architettura hardware

DMA Accesso Diretto alla Memoria

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino

Architettura di un computer

Architettura dei calcolatori II parte Memorie

In un modello a strati il SO si pone come un guscio (shell) tra la macchina reale (HW) e le applicazioni 1 :

Il processore. Il processore. Il processore. Il processore. Architettura dell elaboratore

Software relazione. Software di base Software applicativo. Hardware. Bios. Sistema operativo. Programmi applicativi

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1

Architettura dei computer

La memoria centrale (RAM)

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione

Il Sistema Operativo

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

Materiali per il modulo 1 ECDL. Autore: M. Lanino

Memoria secondaria. Architettura dell elaboratore. Memoria secondaria. Memoria secondaria. Memoria secondaria

Sistemi Operativi STRUTTURA DEI SISTEMI OPERATIVI 3.1. Sistemi Operativi. D. Talia - UNICAL

Architettura hardware

La gestione di un calcolatore. Sistemi Operativi primo modulo Introduzione. Sistema operativo (2) Sistema operativo (1)

Hardware di un Computer

Sistemi Operativi MECCANISMI E POLITICHE DI PROTEZIONE. D. Talia - UNICAL. Sistemi Operativi 13.1

MECCANISMI E POLITICHE DI PROTEZIONE 13.1

Corso di Sistemi di Elaborazione delle informazioni

Sistema Operativo. Fondamenti di Informatica 1. Il Sistema Operativo

Sistemi Operativi GESTIONE DELLA MEMORIA SECONDARIA. D. Talia - UNICAL. Sistemi Operativi 11.1

Sistemi Operativi. Memoria Secondaria GESTIONE DELLA MEMORIA SECONDARIA. Struttura del disco. Scheduling del disco. Gestione del disco

All interno del computer si possono individuare 5 componenti principali: SCHEDA MADRE. MICROPROCESSORE che contiene la CPU MEMORIA RAM MEMORIA ROM

Laboratorio di Informatica

Struttura del calcolatore

Il Sistema Operativo (1)

Cos e` un Sistema Operativo? Cos è un sistema operativo?

Lezione 4 La Struttura dei Sistemi Operativi. Introduzione

ARCHITETTURA DEL CALCOLATORE

Sistemi Operativi Kernel

Organizzazione della memoria

Approccio stratificato

Esame di INFORMATICA

SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI

1.4b: Hardware. (Memoria Centrale)

C. P. U. MEMORIA CENTRALE

Informatica - A.A. 2010/11

Architettura del calcolatore

Un sistema operativo è un insieme di programmi che consentono ad un utente di

Il memory manager. Gestione della memoria centrale

Sistemi Operativi GESTIONE DELLA MEMORIA CENTRALE. D. Talia - UNICAL. Sistemi Operativi 6.1

Sistema di protezione (1)

Sistema di protezione (2) Protezione (1)

Organizzazione Monolitica

comuni ai moderni SO sui quali il corso è incentrato Definizione di sistema operativo

Il sistema di I/O. Calcolatori Elettronici 1. Architettura a bus singolo. Memoria. Unità di I/O. Interfaccia. Unità di I/O.

La Gestione delle risorse Renato Agati

HARDWARE. Relazione di Informatica

Il sistema operativo. Sistema operativo. Multiprogrammazione. Il sistema operativo. Gestione della CPU

12. Implementazione di un File System Struttura a livelli Allocazione contigua

SOMMARIO. La CPU I dispositivi iti i di memorizzazione Le periferiche di Input/Output. a Montagn Maria

Il problema del produttore e del consumatore. Cooperazione tra processi

Le Infrastrutture Software ed il Sistema Operativo

Sistemi Operativi II Corso di Laurea in Ingegneria Informatica

Implementazione del File System

Collegamento al sistema

Il Sistema Operativo. Funzionalità. Sistema operativo. Sistema Operativo (Software di base)

Dispensa di Fondamenti di Informatica. Architettura di un calcolatore

1.2 SISTEMI BATCH SEMPLICI

Sistema Operativo e Applicativi

Appunti di informatica. Lezione 6 anno accademico Mario Verdicchio

Architettura dei calcolatori I parte Introduzione, CPU

Gerarchia delle memorie

Il Sistema Operativo. Introduzione di programmi di utilità. Elementi di Informatica Docente: Giorgio Fumera

SISTEMI OPERATIVI DISTRIBUITI

Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base

Input e Output. Input / Output. Performance. Misure di banda e tempi di trasferimento

Sistemi Operativi. Struttura astratta della memoria. Gerarchia dei dispositivi di. Memoria centrale. Memoria secondaria (di massa)

Processi e Thread. Scheduling (Schedulazione)

Le virtual machine e la memoria virtuale

Calcolo numerico e programmazione Architettura dei calcolatori

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro

Gestione della Memoria

Sistemi Operativi. 5 Gestione della memoria

Transcript:

STRUTTURE DEI SISTEMI DI CALCOLO 2.1 Strutture dei sistemi di calcolo Funzionamento Struttura dell I/O Struttura della memoria Gerarchia delle memorie Protezione Hardware Architettura di un generico sistema 2.2

Architettura di un calcolatore Programma di Bootstrap > Nucleo > Sistema operativo 2.3 Funzionamento di un calcolatore I dispositivi (device) di I/O e la CPU possono essere in esecuzione concorrentemente. Ogni controller si occupa di un particolare tipo di dispositivo. Esempio: Controller SCSI Ogni controller ha un buffer locale. La CPU guida lo spostamento dei dati dalla memoria ai buffer locali e viceversa. L I/O avviene dal dispositivo al buffer locale del controller. Il controller segnala che ha completato la sua operazione tramite un interrupt. 2.4

Gestione degli Interrupt I sistemi operativi sono guidati dagli interrupt (interrupt driven). Un interrupt trasferisce il controllo alla routine di servizio tramite il vettore di interrupt che contiene gli indirizzi delle routine di servizio dei diversi interrupt. La gestione dell interrupt deve salvare l indirizzo della istruzione interrotta. Durante la gestione di un interrupt altri interrupt in arrivo vengono disabilitati per evitare la perdita dell interrupt corrente. Un interrupt software generato da un errore o da una particolare richiesta degli utenti è detto trap. 2.5 Gestione degli Interrupt Il sistema operativo conserva lo stato della CPU a seguito di un interrupt memorizzando i valori dei registri e del program counter. Determina che tipo di interrupt si è verificato: polling sistema di interrupt vettorizzato Sistema di interrupt vettorizzato: segmenti separati di codice determinano quale azione delle essere svolta a seguito dell interrupt. 2.6

Diagramma temporale di interrupt Interrupt per un singolo processo che effettua output 2.7 Due Metodi di Gestione dell I/O Dopo l avvio di un operazione di I/O il controllo ritorna al programma utente solo dopo il completatamento dell I/O. istruzione wait che sospende la CPU fino ad un interrupt ciclo di attesa Al più una richiesta di I/O per volta Dopo l avvio di un operazione di I/O il controllo ritorna al programma utente senza attendere la fine dell I/O. System call richiesta al sistema operativo per attendere il completamento. Tabella di stato dei dispositivi contiene elementi per ogni dispositivo di I/O device che indica tipo, indirizzo e stato. Il sistema operativo accede alla Tabella per determinare lo stato del dispositivo e modificare la sua descrizione. 2.8

Due Metodi di I/O Sincrono Asincrono 2.9 Tabella di stato dei dispositivi 2.10

Direct Memory Access (DMA) Usato per dispositivi di I/O capaci di trasmette dati a velocità simili a quelle della memoria. Il controller del dispositivo trasferisce blocchi di dati direttamente alla memoria centrale senza l intervento della memoria centrale. Viene generato un singolo interrupt per blocco trasferito piuttosto che un interrupt per ogni byte trasferito. 2.11 Struttura della Memoria Memoria Centrale - celle di memoria accessibili direttamente dalla CPU (oltre ai registri). Memoria Secondaria - estensione della memoria centrale di grandi dimensioni e non volatile. Dischi Magnetici piatti di metallo coperti da materiale magnetico La superficie dei dischi è divisa logicamente in tracce suddivise in settori. Il controller del disco determina l interazione tra il dispositivo e la CPU. 2.12

Dischi 2.13 Gerarchia di memorie Le componenti della memoria di un computer possono essere organizzate in modo gerarchico in base a Velocità Costi Volatilità Altri tipi di memorie: cache, registri, nastri, disco RAM. Caching copia dei dati in memorie più veloci; la memoria centrale può essere vista come una cache per la memoria secondaria. 2.14

Gerarchia dei dispositivi di memoria 2.15 Cache Uso di memoria ad alta velocità per memorizzare i dati più frequentemente acceduti. Richiede una politica di cache management. Caching introduce un altro livello nella gerarchia delle memorie. Questo richiede che i dati memorizzati in diversi livelli di memoria siano consistenti. 2.16

Migrazione di A dal Disco a Registro 2.17 Protezione Hardware Un sistema operativo deve impedire che il cattivo funzionamento di un programma influenzi la corretta esecuzione del sistema operativo e di altri programmi. L hardware supporta meccanismi di protezione. Approcci alla protezione: Funzionamento Dual-Mode Protezione dell I/O Protezione della Memoria Protezione della CPU 2.18

Funzionamento Dual-Mode Fornisce un supporto hardware per differenziare tra due modalità principali di esecuzione delle operazioni: 1. Modo Utente esecuzione svolta per conto dell utente. 2. Modo Monitor (o kernel o system) esecuzione svolta per conto del sistema operativo. Nel modo utente non si possono eseguire istruzioni che possano creare malfunzionamenti. 2.19 Funzionamento Dual-Mode Si usa un Bit di modo per indicare il modo corrente: monitor (0) o user (1). Quando avviene un interrupt o una trap il sistema passa al modo monitor. Interrupt/trap monitor utente set modo utente Le istruzioni privilegiate possono essere eseguite solo nel modo monitor. 2.20

Protezione dell I/O Tutte le istruzioni di I/O sono istruzioni privilegiate. Bisogna assicurare che un programma utente non possa ottenere il controllo del computer in modo monitor. Questo potrebbe succedere se le operazioni di I/O venissero eseguite in modo utente. Le system call si usano a questo scopo. 2.21 Uso di una System Call per l I/O 2.22

Protezione della Memoria Occorre proteggere aree di memoria critiche come il vettore delle interruzioni e le routine di servizio degli interrupt. Per proteggere la memoria da usi non corretti si usano due registri per determinare l intervallo di valori corretto che un programma può accedere: Registro Base contiene l indirizzo iniziale della memoria che un programma può accedere. Registro Limite contiene la dimensione dell intervallo. La memoria al di fuori dell intervallo è protetta. 2.23 Uso di un Registro Base e un Registro Limite 2.24

Protezione degli Indirizzi Hardware 2.25 Protezione Hardware Quando il sistema operativo è in esecuzione in modo monitor può accedere tutte le celle di memoria. Le istruzioni di caricamento e modifica dei registri base e limite vengono eseguite dal sistema operativo in modalità monitor. 2.26

Protezione della CPU E fondamentale che un processo utente non usi indefinitamente la CPU. Soluzione: Timer per l invio di un interrupt dopo un dato intervallo di tempo. Timer è decrementato ad ogni tick del clock. Quando il timer avrà valore o viene generato l interrupt. Il Timer viene usato implementare il time sharing. Il caricamento del timer è una istruzione privilegiata. 2.27 Struttura di una Local Area Network (LAN) 2.28

Struttura di una Wide Area Network (WAN) 2.29 Domande Spiegare la motivazione e il funzionamento del DMA. Indicare le motivazioni per l uso delle memorie cache. Descrivere il funzionamento dual mode per la protezione del sistema operativo. Come la mancanza della protezione hardware sulla memoria può generare un comportamento non corretto del sistema operativo? 2.30