Informatica B Allievi Elettrici - AA 2000-01 L’architettura di un calcolatore e il sistema operativo.

Slides:



Advertisements
Presentazioni simili
La struttura fisica e logica di un elaboratore
Advertisements

Cos'è una memoria? MEMORIA
STRUTTURA DEL PERSONAL COMPUTER
Definizione e tipi di implementazione
Introduzione allarchitettura dei calcolatori 2/ed Carl Hamacher, Zvonko Vranesic, Safwat Zaky Copyright © 2007 – The McGraw-Hill Companies srl Versione.
Elaboratore e Sistemi Operativo
Algoritmi e Programmazione
DAL MICROPROCESSORE AI SISTEMI EMBEDDED Informatica per lAutomazione II (Informatica B o II) Anno accademico 2008/2009 Prof. Giuseppe Mastronardi Ing.
2 Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione dati memorizzazione dati trasferimento.
1 Corso di Informatica (Programmazione) Lezione 4 (24 ottobre 2008) Architettura del calcolatore: la macchina di Von Neumann.
Struttura dei sistemi operativi (panoramica)
Il Linguaggio Macchina
Com’è fatto un elaboratore?
3. Architettura Vengono descritte le principali componenti hardware di un calcolatore.
INTRODUZIONE Il termine Informatica deriva dalla fusione dei termini INFORmazione autoMATICA si intende indicare la scienza che ha il compito di raccogliere,
EVOLUZIONE DEL PC Legge di Moore: La potenza dei calcolatori raddoppia ogni 18 mesi Metà anni 80 (Personal Computer IBM AT) Architettura 16 bit interna,
MEMORIA CENTRALE Spazio di lavoro del calcolatore: contiene i dati da elaborare e i risultati delle elaborazioni durante il funzionamento del calcolatore.
Labortaorio informatica 2003 Prof. Giovanni Raho 1 INFORMATICA Termini e concetti principali.
La macchina di von Neumann
UNIVERSITA’ STUDI DI ROMA “FORO ITALICO”
Architettura dell’elaboratore
Il Calcolatore Elettronico
PRESENTAZIONE di RICCARDO
Modulo 1 - Concetti di base della Tecnologia dell'Informazione
ELETTRONICA DIGITALE (II Parte)
STRUTTURA GENERALE DI UN ELABORATORE
L' ARCHITETTURA DI VON NEUMANN
INFORMATICA Universita' degli Studi di Brescia
Architettura del calcolatore
Introduzione all'uso del PC
ARCHITETTURA DI UN ELABORATORE
Sistemi di elaborazione e trasmissione delle informazioni
Unità centrale di processo
Informatica Lezione 4 Scienze e tecniche psicologiche dello sviluppo e dell'educazione Anno accademico:
STRUTTURA DI UN COMPUTER
Architettura del calcolatore
INFORMATICA TECNOLOGIE INFORMATICHE INFORmazione autoMATICA
Sistemi Informativi di Rete AA (II) L’architettura di un calcolatore.
INTERFACCE Schede elettroniche che permettono al calcolatore di comunicare con le periferiche, che possono essere progettate e costruite in modo molto.
Luglio 2004Generalità Hardware1 Luglio Generalità Hardware2 MACCHINA DI VON NEUMAN (1947) BUS Processore Elaborazione Controllo Memoria Ingresso.
Informatica Lezione 5 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
MICROPROCESSORI Un processore è un circuito integrato in grado di effettuare operazioni di calcolo o di elaborazione dell'informazione Il circuito contiene.
Componenti principali di un computer
1 Input/Output. 2 Livelli del sottosistema di I/O Hardware Gestori delle interruzioni Driver dei dispositivi Software di sistema indipendente dal dispositivo.
Architettura di un calcolatore e linguaggio macchina.
Università degli Studi di Bergamo Facoltà di Lingue e Letterature Straniere Facoltà di Lettere e Filosofia A.A Informatica generale 1 Appunti.
1 Input/Output. 2 Livelli del sottosistema di I/O Hardware Gestori delle interruzioni Driver dei dispositivi Software di sistema indipendente dal dispositivo.
L’esecuzione dei programmi
MEMORIA CENTRALE Spazio di lavoro del calcolatore: contiene i dati da elaborare e i risultati delle elaborazioni svolte durante il funzionamento del calcolatore.
EVOLUZIONE DEL PC Legge di Moore: La potenza dei calcolatori raddoppia ogni 18 mesi. Inizi anni 80 (Personal Computer IBM AT) Architettura 16 bit interna,
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Il calcolatore Stefano Cagnoni e Monica Mordonini
1 Informatica Generale Marzia Buscemi Ricevimento: Giovedì ore , Dipartimento di Informatica, stanza 306-PS o per posta.
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
Informatica Lezione 4 Psicologia dello sviluppo e dell'educazione (laurea magistrale) Anno accademico:
Struttura Fondamentale degli Elaboratori Elaboratore –È un sistema numerico –È un sistema automatico –È un sistema a programamzione registrabile –Ha una.
STRUTTURA DELL’ELABORATORE
Il Processore Il processore è la componente dell’unità centrale che elabora le informazioni contenute nella memoria principale L’elaborazione avviene eseguedo.
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica
Dalla macchina di Von Neumann …
Presentazione di sistemi Ambrosio Federica Anna Esposito 3C inf.
Click to add text L’ Unità di Elaborazione. Struttura : Unità di controllo: coordina attività CPU ALU: unità aritmetico-logica, esegue operazioni tra.
I Microprocessori Unità 3 del libro Internet Working Sistemi e reti.
Il modello di Von Neumann
Fondamenti di Informatica Il Calcolatore Monica Mordonini Dipartimento di Ingegneria dell’Informazione Università degli Studi di Parma.
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
Concetti informatici di base. Concetti informatici di base Il computer o elaboratore è una apparecchiatura costituita da un insieme di dispositivi di.
Struttura del Computer
Componenti base di un computer Gli elementi fondamentali La Cpu La Ram L’ Hard disk.
Architettura degli elaboratori
Transcript della presentazione:

Informatica B Allievi Elettrici - AA L’architettura di un calcolatore e il sistema operativo

L’architettura di un calcolatore HD I/O tastiera InputOutput Monitor Stampante

La CPU Contiene gli elementi circuitali che regolano il funzionamento dell’elaboratore: –L’unità di controllo e’ responsabile della decodifica e dell’esecuzione delle istruzioni. E' la parte che "dirige" l'esecuzione di tutte le altre parti. –L’orologio di sistema (clock) permette di sincronizzare le operazioni temporizzando il funzionamento del computer. –L’unità aritmetico-logica (ALU) realizza le operazioni aritmetiche e logiche eventualmente richieste per l’esecuzione dell’istruzione. E’ priva di facoltà di scelta. –I registri sono piccole memorie velocemente accessibili, utilizzate per memorizzare risultati parziali o informazioni necessarie al controllo. L’insieme dei valori contenuti nell'insieme di tutti i registri in un dato istante della computazione viene chiamato contesto.

I registri piu’ importanti L’accumulatore (uno o due) contengono gli operandi e i risultati delle operazioni della ALU Il contatore di programma (PC, Program Counter) Contiene sempre l’indirizzo della prossima istruzione del programma (SALTI!!!). Il registro dati E’ lungo come una parola di memoria ed è utilizzato, nella lettura e scrittura da essa o da e per le periferiche, come una sorta di “deposito” dell’informazione. A questo registro accede il bus dati. Il registro indirizzi Serve ad indirizzare la memoria. Ciascuna cella di memoria può essere indirizzata: capacità dell’elaboratore di selezionare una particolare cella di memoria. Chiamiamo parola ogni elemento di memoria indirizzabile. Il compilatore assegna ad ogni operando in memoria un indirizzo. Il registro istruzione corrente (RIC) Contiene, istante per istante, l’istruzione che risulta in esecuzione da parte dell’elaboratore. La dimensione del registro istruzione è (generalmente) quella del bus dati.

Formato delle istruzioni Costituito da tre campi: il codice operativo (obbligatorio) specifica l’operazione da eseguire, l’operando (facoltativo) è diviso in indirizzi degli oggetti, cioè le variabili, da utilizzare FORMATO ISTRUZIONE: Cod. operativo Operandi

Fasi del ciclo di CPU Fetch: –PC contiene indirizzo prossima istruzione –acquisizione prossima istruzione da memoria (nel RIC) –incremento PC Decodifica: interpretazione codice operativo Esecuzione: attivazione esecuzione pertinente all’operazione. Es: operazioni AL su operandi (indirizzi), o operazione di salto (modifica PC) Temporizzazione scandita dal clock: ad ogni “tick” un passo elementare

Il bus di sistema Insieme di connettori (conduttori elettrici) che trasportano bit di informazioni collegando fra di loro l’unità di elaborazione, la memoria e le varie interfaccie di ingresso/uscita. I trasferimenti sono gestiti dalla CPU (modalita’ master/slave) e si chiamano cicli del bus, che con la sua capacità ne determina la velocità. Componenti: BUS DATI BUS INDIRIZZI BUS DI CONTROLLO

La memoria centrale accoglie il “materiale di lavoro”, e cioe' dati e programmi di dimensioni ridotte (dell’ordine di Megabyte) tempi di accesso: dell’ordine delle decine di nanosecondi (circa 1 milione di volte piu’ veloce delle memorie di massa) prima di poter essere elaborata, l’informazione deve essere acquisita dalla memoria centrale e caricata in uno dei registri della CPU insieme ordinato di parole (celle) che contengono istruzioni e dati una parola = n elementi di memoria binari (8, 16, 32, 64 bit) la posizione di ogni parola è identificata da un indirizzo la capacità di indirizzamento in memoria è definita dalle dimensioni del bus indirizzi e del registro indirizzi ad accesso diretto (random)

Parti della memoria centrale  La memoria RAM : e’ realizzata mediante circuiti a transistori, è modificabile, cioè leggibile e scrivibile, ma è volatile e quindi deve essere continuamente alimentata per mantenere le informazioni. All’accensione il suo contenuto e’ una sequenza casuale di 0 e 1.  La memoria ROM: E’ solo leggibile: le informazioni sono di solito scritte in modo permanente dal costruttore.  viene quindi caricata al momento della produzione del computer  vi si accede ogni qualvolta questo viene acceso  contiene il bootstrap, un programma contenente le prime istruzioni che la CPU deve compiere

Componenti del bus di sistema BUS DATI: trasferisce dati da master a slave e viceversa BUS INDIRIZZI: trasferisce indirizzi, ad esempio l’indirizzo di un dato dal registro indirizzi alla memoria, per accedere al dato stesso BUS DI CONTROLLO: –da master a slave: codice dell’istruzione da eseguire (es. lettura da disco); –da slave a master: info sul successo dell’operazione

Le interfacce verso le periferiche Dispositivi elettromeccanici Costituite da: –porte di I/O: registri scrivibili e/o leggibili dalle periferiche: registro dati periferica, registro comandi periferica (RCP), registro stato periferica –circuiti ausiliari

Le memorie di massa Informazione memorizzata su supporto magnetico (o ottico) Memoria permanente: le informazioni sono raggruppate in file gestiti dal sistema operativo Dischi rigidi: Tempi di accesso dell’ordine delle decine di millisecondi; floppy disk: dell’ordine delle centinaia di millisecondi Nastri: Per memorizzare informazioni “storiche” (back-up) CD-ROM: sola lettura

Struttura dei dischi rigidi -testine -superfici -tracce -cilindri -settori

Esempio di istruzioni in assembler Codice binarioCodice operativo simbolico 0000LOADA 0001LOADB 0010STOREA 0011STOREB 0110ADD 0111DIF 1010JMP 1011JMPZ 1100NOP 1101HALT 0100READ 0101WRITE

Cicli di bus: esempi Operazione di lettura da memoria (LOAD): –la CPU carica indirizzo della parola di memoria (operando del RIC) nel registro indirizzi e lo trasmette alla memoria via bus indirizzi –la CPU invia il comando di RM sul bus di controllo –la memoria trasmette sul bus dati il contenuto della parola verso il registro dati –la memoria segnala al processore sul bus di controllo che l’operazione e’ stata completata con successo: il dato si trova nel registro dati Operazione di scrittura in memoria (STORE): –la CPU carica indirizzo della parola di memoria dove si vuole scrivere (operando del RIC) nel registro indirizzi e lo trasmette alla memoria via bus indirizzi –la CPU carica nel registro dati la parola da scrivere in memoria –la CPU invia il comando di WM sul bus di controllo –la CPU trasmette sul bus dati il contenuto del registro dati verso l’indirizzo di memoria segnalato. –la memoria segnala al processore sul bus di controllo che l’operazione e’ stata completata con successo: il dato si trova nella parola di memoria destinazione

Piccolo esempio di programma assembler Cella di mem.Cod. Oper.Operando 0INPUT8 1INPUT9 2LOADA8 3LOADB9 4MUL 5STOREA8 6OUTPUT8 7HALT 8(INT) 9(INT)

Il Sistema Operativo programma di grandi dimensioni e complessità che permette all’utente di interagire col sistema sviluppo di un S.O.: centinaia di anni-uomo poca teoria, solo in alcune aree: perché prima sviluppo tecnologico, poi teorizzazione perché aspetti non di calcolo ma di ottimizzazione, gestione di interazione, gestione di malfunzionamenti etc. perché problema intrinsecamnete complesso e interdisciplinare complessità estrema: studio per livelli di macchine astratte per ragionare a diversi livelli di astrazione

Funzioni di un S.O. Relazione Macchina/Utente: –comandi espliciti, da tastiera –comandi interni, da programma Funzioni: –Gestione lavori –Supporto per la programmazione –Meccanismi di I/O –Gestione archivi (file)

Gestione lavori Riconoscimento degli utenti: login, password,… Assegnazione risorse: periferiche, memoria di massa.. Accounting (costo di esecuzione dei programmi) Attivazione sequenze di azioni: ad esempio »caricamento file XXX.C in memoria »caricamento compilatore c in memoria »attivazione compilazione e gestione file oggetto XXX.obj »ripetiz. questi passi per ogni sottoprogramma »attivazione linker e gestione file XXX.exe »attivazione loader »assegnazione risorse al programma (memoria e CPU) »terminazione lavoro e rilascio risorse

Supporto per la programmazione Messa a disposizione di: Editors: normali, WordProcessors, guidati dalla sintassi Debuggers: breakpoints, step-by-step, dump registri Librerie: funzioni matematiche, funzioni grafiche, etc. Programmi per la gestione di grandi progetti: cataloghi, versioni etc.

Meccanismi di I/O Il S.O. permette di vedere le periferiche: più numerose: maschera conflitti su periferiche condivise più potenti: primitive di alto livello più affidabili: gestione malfunzionamenti

Gestione archivi (file) Accesso ai file in modo logico: meccanismo nome /indirizzo Privatezza: gestione autorizzazioni Affidabilità: integrità dei files in caso di malfunzionamento

Il FILE SYSTEM Permette a un utente di creare un file, identificarlo con un nome simbolico, collegare il suo nome con la sua posizione in un opportuno spazio nella memoria di massa e accedervi in lettura e scrittura. Maschera le caratteristiche fisiche dell’unità di memorizzazione Realizza dei meccanismi di controllo per gestire la concorrenza sui file. Particolari informazioni inerenti il file sono contenute nei descrittori, come ad esempio il nome, l’indirizzo del primo blocco (o settore), il metodo di accesso, il creatore, i diritti di accesso, la data di creazione e dell’ultima modifica.

Le directory I file vengono organizzati in strutture, dette directory, organizzate ad albero. Ciascuna directory ha un unico nodo radice (root). L’intero file system ha un proprio nodo radice al di sotto del quale si aprono varie directory che ospitano programmi di sistema e file di utente. L’accesso ai file, avvenendo attraverso il nome del file stesso, è possibile attraverso il path name, un nome completo che include l’intero cammino dalla radice al file.

Operazioni sui file  Operazioni di gestione –open (filename, mode) Per aprire un file. –close (filename) Per chiudere un file. –remove(filename) Per cancellare un file. –rename(filename,newname) Per cambiare nome ad un file. Operazioni di lettura e scrittura read write

Il Modello a Buccia di Cipolla di un S. O. HW Nucleo (gestione dei processi) Gestione della memoria centrale Gestione periferiche File system Programmi di utilita’ Interprete comandi

I programmi di utilita’ I programmi dell’ambiente di programma- zione Gli strumenti di produttività (editor, fogli elettronici,..) I sistemi di gestione di basi di dati I sistemi per l’interazione con la rete...

I sistemi di gestione di basi di dati Un SGBD (Data Base Management System = DBMS): –permette di accedere in modo efficiente ai dati con una granularità più fine che il file system –permette di accedere in modo diretto ai dati basandosi sulle loro proprietà –effettua il controllo della concorrenza alla granularità del singolo record –realizza meccanismi sofisticati per il controllo dell’affidabilità –realizza meccanismi di controllo della privatezza –realizza l’atomicità delle transazioni