Indice generale. 1 Il calcolatore: astrazioni. 2 Le istruzioni: il linguaggio. e tecnologia 1. dei calcolatori 57
|
|
- Massimo Spada
- 8 anni fa
- Visualizzazioni
Transcript
1 I Indice generale Prefazione viii 1 Il calcolatore: astrazioni e tecnologia Introduzione 1 Tipi di calcolatore e loro caratteristiche 2 Cosa si può imparare da questo libro Cosa c è dietro un programma 7 Da un linguaggio ad alto livello al linguaggio dell hardware I componenti di un calcolatore 10 Anatomia di un mouse 12 Attraverso lo specchio 12 Dentro la scatola 13 Un posto sicuro per i dati 16 Comunicare con gli altri calcolatori 18 Tecnologie per la produzione di processori e memorie Le prestazioni 21 Definizione delle prestazioni 21 Misurare le prestazioni 24 Le prestazioni della CPU 25 Misura delle prestazioni associata alle istruzioni 27 L equazione classica di misura delle prestazioni La barriera dell energia La metamorfosi delle architetture: il passaggio dai sistemi uniprocessore ai sistemi multiprocessore Un caso reale: la produzione e la valutazione dei chip Opteron X4 di AMD 37 Confronto tra CPU: i benchmark SPEC 39 Benchmark SPEC sul consumo di potenza Errori e trabocchetti Note conclusive Inquadramento storico e approfondimenti Esercizi 47 2 Le istruzioni: il linguaggio dei calcolatori Introduzione Le operazioni svolte dall hardware del calcolatore Gli operandi dell hardware del calcolatore 62 Operandi allocati in memoria 63 Operandi immediati o costanti Numeri con e senza segno 68 Riepilogo Rappresentazione delle istruzioni nel calcolatore 74 I campi delle istruzioni MIPS Operazioni logiche Le istruzioni per prendere decisioni 82
2 iv Indice generale I cicli 84 Il costrutto case/switch Supporto hardware alle procedure 88 Utilizzo di più registri 89 Procedure annidate 91 Allocazione dello spazio sullo stack per nuovi dati 94 Allocazione dello spazio sullo heap per nuovi dati Comunicare con le persone 96 Caratteri e stringhe in Java Indirizzamento MIPS dei dati e indirizzi di tipo immediato su 32 bit 101 Operandi immediati a 32 bit 101 L indirizzamento nei salti 103 Riassunto delle modalità di indirizzamento del MIPS 105 Come decodificare il linguaggio macchina Parallelismo e istruzioni: la sincronizzazione Tradurre e avviare un programma 112 Il compilatore 112 L assemblatore 113 Il linker 114 Il loader 117 Librerie a caricamento dinamico 117 Come eseguire un programma Java Un esempio riassuntivo in linguaggio C 120 La procedura scambia 120 La procedura ordina Confronto tra vettori e puntatori 128 La versione della procedura azzera che utilizza vettore e indice 129 La versione della procedura azzera che utilizza i puntatori 130 Il confronto tra le due versioni di azzera Approfondimento: compilazione del C e interpretazione di Java Un caso reale: le istruzioni dell architettura ARM 132 Modalità di indirizzamento 132 Comparazioni e salti condizionati 134 Caratteristiche uniche dell ARM Un caso reale: le istruzioni dell architettura x Evoluzione dell Intel x I registri e le modalità di indirizzamento dell x Le operazioni su numeri interi dell x La codifica delle istruzioni x Conclusioni sull x Errori e trabocchetti Note conclusive Inquadramento storico e approfondimenti Esercizi L aritmetica dei calcolatori Introduzione Somma e sottrazione 171 Operazioni per il multimedia 174 Riepilogo La moltiplicazione 176 Versione sequenziale dell algoritmo della moltiplicazione e sua implementazione hardware 177 Moltiplicazione di numeri dotati di segno 180 La moltiplicazione veloce 181 La moltiplicazione nel MIPS 181 Riepilogo La divisione 182 Un algoritmo di divisione e l hardware che lo implementa 183 La divisione di numeri dotati di segno 186 Una divisione più veloce 186 La divisione nel MIPS 187 Riepilogo I numeri in virgola mobile 189 La rappresentazione in virgola mobile 190 La somma in virgola mobile 195 La moltiplicazione in virgola mobile 199 Le istruzioni in virgola mobile nel MIPS 202 L accuratezza dell aritmetica 208 Riepilogo Il parallelismo e l aritmetica dei calcolatori: l associatività Un caso reale: la virgola mobile nell x L architettura in virgola mobile dell x L architettura dell estensione 2 Streaming SIMD in virgola mobile (SSE2) di Intel Errori e trabocchetti Considerazioni conclusive Inquadramento storico e approfondimenti Esercizi Il processore Introduzione 233 Un implementazione di base del MIPS 234 Una panoramica dell implementazione Convenzioni del progetto logico 237 Metodologia di temporizzazione La realizzazione di una unità di elaborazione dati 240 La progettazione dell unità di elaborazione unificata Uno schema semplice di implementazione 247 L unità di controllo della ALU 247 La progettazione dell unità di controllo principale 249 Il funzionamento dell unità di elaborazione 253 Il completamento dell unità di controllo 256 Perché non si utilizzano più implementazioni a singolo ciclo? Introduzione al pipelining 259 Progettazione dell insieme di istruzioni per architetture dotate di pipeline 263 Gli hazard nelle pipeline 263 Hazard strutturali 263 Hazard sui dati 263 Hazard sul controllo 267 Riepilogo sul pipelining L unità di elaborazione con pipeline e l unità di controllo associata 272 Rappresentazione grafica delle pipeline 281 L unità di controllo della pipeline Hazard sui dati: propagazione o stallo 287
3 Indice generale v Hazard sui dati e stallo Hazard sul controllo 298 Ipotizzare che il salto condizionato non sia eseguito 299 Ridurre i ritardi associati ai salti condizionati 300 Predizione dinamica dei salti 301 Riepilogo sul pipelining Le eccezioni 306 La gestione delle eccezioni nelle architetture MIPS 307 Le eccezioni e la loro implementazione nella pipeline Parallelismo e parallelismo avanzato a livello di istruzioni 312 Il concetto di speculazione 313 Parallelizzazione statica dell esecuzione 314 Un esempio: parallelizzazione statica dell ISA del MIPS 315 Processori dotati di parallelizzazione dinamica dell esecuzione 319 Riorganizzazione dinamica del codice in una pipeline 319 Efficienza energetica e pipeline avanzate Un caso reale: la pipeline dell AMD Opteron X4 (Barcelona) Argomenti avanzati: un introduzione alla progettazione digitale con un linguaggio di progettazione dell hardware e un modello di pipeline, e approfondimenti sulla pipeline Errori e trabocchetti Note conclusive Inquadramento storico e altre letture Esercizi Grande e veloce: la gerarchia di memoria Introduzione Principi base delle cache 358 Accesso alla cache 360 La gestione delle miss della cache 365 La gestione della scrittura 366 Un esempio di memoria cache: il processore Intrinsity FastMATH 368 Come progettare il sistema di memoria per supportare le cache 370 Riepilogo Misurare e migliorare le prestazioni di una cache 374 Riduzione delle miss di una cache utilizzando un posizionamento più flessibile dei blocchi 378 Ridurre la penalità di miss utilizzando una cache multilivello 384 Riepilogo La memoria virtuale 389 Come individuare la posizione di una pagina e come ritrovarla 392 I page fault 394 Cosa succede in scrittura? 398 Come rendere più veloce la traduzione degli indirizzi: il TLB 398 Integrazione della memoria virtuale, dei TLB e delle cache 403 Meccanismi di protezione basati sulla memoria virtuale 404 Gestione delle miss del TLB e dei page fault 406 Riepilogo Uno schema comune per le gerarchie di memoria 413 Domanda 1: dove può essere posizionato un blocco? 414 Domanda 2: come si trova un blocco? 415 Domanda 3: quale blocco deve essere sostituito in caso di miss della cache? 416 Domanda 4: cosa succede in caso di scrittura? 416 Le tre C: un modello intuitivo per comprendere il comportamento delle gerarchie di memoria Le virtual machine 420 Requisiti del monitor di una macchina virtuale 421 Mancanza di supporto alle virtual machine da parte dell architettura dell insieme di istruzioni 422 Protezione e architettura dell insieme delle istruzioni Come utilizzare una macchina a stati finiti per controllare una cache semplificata 423 Una cache semplificata 424 Le macchine a stati finiti 424 La FSM per il controllore della cache semplificata Parallelismo e gerarchie di memoria: coerenza della cache 428 Schemi di base per garantire la coerenza 429 I protocolli di snooping Argomenti avanzati: come implementare i controllori delle cache Due casi reali: la gerarchia di memoria dell AMD Opteron X4 e dell Intel Nehalem 432 La gerarchia di memoria del Nehalem e dell Opteron 432 Tecniche per ridurre la penalità di miss Errori e trabocchetti Considerazioni conclusive Prospettiva storica e letture consigliate Esercizi La memoria di massa e le altre periferiche Introduzione Attendibilità, affidabilità e disponibilità Dischi magnetici 457 Tempo di lettura da disco Memorie flash La connessione tra i processori, le memorie e i dispositivi di I/O 464 Nozioni fondamentali sulle connessioni Interfacciamento dei dispositivi di I/O con il processore, la memoria e il sistema operativo 468 Come impartire i comandi ai dispositivi di I/O 469 Come comunicare con il processore 470 Livelli di priorità degli interrupt 471 Trasferimento dati tra un dispositivo e la memoria 472
4 vi Indice generale L accesso diretto alla memoria (DMA) e il sistema di memoria Misure delle prestazioni dell I/O: esempi sui dischi e sui file system 476 Benchmark di I/O: elaborazione delle transazioni 476 Benchmark di I/O: file system e web Come progettare un sistema di I/O Parallelismo e I/O: insiemi ridondanti di dischi economici 479 Nessuna ridondanza (RAID 0) 480 Mirroring (RAID 1) 481 Riconoscimento degli errori e codice di correzione degli errori (RAID 2) 481 Bit di parità interallacciati (RAID 3) 481 Blocchi di parità interallacciati (RAID 4) 482 Blocchi di parità interallacciati distribuiti (RAID 5) 483 Ridondanza P + Q (RAID 6) 484 Riepilogo sui dischi RAID Un caso reale: il server Fire x4150 di Sun Argomenti avanzati: le reti Errori e trabocchetti Note conclusive Prospettive storiche e ulteriori Letture Esercizi Multicore, multiprocessori e cluster Introduzione Le difficoltà nel creare programmi a esecuzione parallela Multiprocessori a memoria condivisa Cluster e altri multiprocessori a scambio di messaggi Multithreading hardware SISD, MIMD, SIMD, SPMD e processori vettoriali 518 SIMD negli x86: le estensioni multimediali 519 Processori vettoriali 520 Confronto tra architetture vettoriali e scalari 522 I processori vettoriali e le estensioni multimediali Introduzione alle unità di elaborazione grafica 524 Un introduzione alle architetture GPU di NVIDIA 526 Le prospettive delle GPU Introduzione alle topologie delle reti di calcolatori Benchmark per i multiprocessori Roofline: un semplice modello per valutare le prestazioni 536 Confronto tra due generazioni di Opteron Un caso reale: il confronto tra quattro processori multicore attraverso il modello roofline 543 I quattro sistemi multicore 543 Matrici sparse 546 Griglie strutturate 547 Produttività Errori e trabocchetti Osservazioni finali Prospettiva storica e letture di approfondimento Esercizi 553 APPENDICI A La grafica e il calcolo con la GPU 562 A.1 Introduzione 562 Breve storia delle GPU 562 Sistemi eterogenei 563 Le GPU evolvono verso i processori paralleli scalabili 564 Perché CUDA e perché utilizzare le GPU per il calcolo? 564 La GPU unifica grafica e calcolo 565 Applicazioni di elaborazione visuale su GPU 565 A.2 Le architetture dei sistemi GPU 566 Architettura del sistema eterogeneo CPU-GPU 566 Interfacce e driver delle GPU 568 La pipeline grafica logica 568 Mappatura della pipeline grafica su GPU a processori unificati 568 Architettura GPU unificata di base 568 A.3 Programmazione delle GPU 570 Programmazione della grafica in tempo reale 571 Pipeline grafica logica 571 I programmi degli shader grafici 572 Un esempio di shader dei pixel 573 Programmazione di applicazioni di calcolo parallelo 574 Programmazione scalabile parallela con CUDA 576 A.4 Architettura multiprocessore multithread 582 Il multithreading massivo 582 L architettura multiprocessore 583 Singola istruzione e thread multipli (SIMT) 584 L esecuzione dei warp SIMT e le biforcazioni del codice 586 La gestione dei thread e dei blocchi di thread 586 Le istruzioni dei thread 587 L architettura dell insieme delle istruzioni (ISA) 588 I processori a flusso continuo (SP) 591 Le unità per le funzioni speciali (SFU) 591 Confronto con altri multiprocessori 592 I multiprocessori multithread in sintesi 593 A.5 Il sistema parallelo di memoria 593 Considerazioni sulle DRAM 594 Le memorie cache 595 L unità di gestione della memoria (MMU) 595 Le aree di memoria 595 La memoria globale 596 La memoria condivisa 596 La memoria locale 596 La memoria delle costanti 597 La memoria di tessitura 597 Le superfici 597 Lettura e scrittura in memoria 597 I ROP 598 A.6 Aritmetica in virgola mobile 598 I formati supportati 598 L aritmetica di base 599 L aritmetica specializzata 599 Le operazioni sulla tessitura 600 Le prestazioni 601 La doppia precisione 602
5 Indice generale vii A.7 Un caso reale: la GeForce 8800 di NVIDIA 602 La schiera di processori a flusso continuo (SPA, Streaming Processor Array) 602 Il nucleo tessitura/processore (TPC) 603 Il multiprocessore a flusso continuo (SM) 604 L insieme delle istruzioni 605 Il processore a flusso continuo (SP) 605 L unità per funzioni speciali (SFU) 606 La rasterizzazione 606 Il processore delle operazioni di rasterizzazione (ROP) e il sistema di memoria 606 Scalabilità 607 Le prestazioni 607 Le prestazioni sull algebra lineare densa 607 Le prestazioni sulle FFT 608 Le prestazioni sull ordinamento 609 A.8 Un caso reale: come adattare le applicazioni alla GPU 610 Matrici sparse 610 Utilizzo della memoria condivisa come cache 613 Scansione e riduzione 615 Radix Sort 617 Applicazioni del problema a N corpi su GPU 619 A.9 Errori e trabocchetti 624 A.10 Note conclusive 629 Ringraziamenti 629 A.11 Inquadramento storico e approfondimenti 629 B.7 Eccezioni e interrupt 654 B.8 Input e Output 658 B.9 SPIM 660 Simulazione di una macchina virtuale 660 Primi passi con SPIM 661 Caratteristiche principali 662 Ordinamento dei byte 662 Chiamate di sistema 662 B.10 Il linguaggio assembler del MIPS R Modalità di indirizzamento 664 Sintassi dell assemblatore 665 La codifica delle istruzioni MIPS 667 Il formato delle istruzioni 667 Le istruzioni aritmetiche e logiche 669 Istruzioni di manipolazione delle costanti 673 Istruzioni di confronto 673 Le istruzioni di salto condizionato 675 Istruzioni di salto incondizionato 677 Istruzioni di trap 678 Istruzioni di lettura dalla memoria (load) 679 Istruzioni di scrittura in memoria (store) 681 Le istruzioni di spostamento dati 683 Istruzioni su numeri in virgola mobile 684 Istruzioni di gestione di eccezioni e interrupt 690 B.11 Considerazioni conclusive 691 Letture ulteriori 691 B.12 Esercizi 692 B Gli assemblatori, i linker e il simulatore SPIM 631 B.1 Introduzione 631 Quando conviene utilizzare il linguaggio assembler 634 Svantaggi del linguaggio assembler 635 B.2 Gli assemblatori 636 Formato dei file oggetto 638 Altre funzionalità degli assemblatori 639 B.3 I linker 642 B.4 Caricamento 643 B.5 Utilizzo della memoria 644 B.6 Convenzioni di chiamata a procedura 646 Le chiamate a procedura 646 R Risposte alle domande di autovalutazione 693 G Indice delle voci di glossario 695 T Scheda tecnica riassuntiva del MIPS 695
Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro
Introduzione alle tecnologie informatiche Strumenti mentali per il futuro Panoramica Affronteremo i seguenti argomenti. I vari tipi di computer e il loro uso Il funzionamento dei computer Il futuro delle
DettagliIndice generale VIII
Indice generale Indice dei box di approfondimento X Prefazione XII Ringraziamenti dell Editore XIV Guida alla lettura XV Capitolo 1 Introduzione 1 1 1 Trattamento dell informazione e strumenti per il trattamento
DettagliLa macchina di Von Neumann. Archite(ura di un calcolatore. L unità di elaborazione (CPU) Sequenza di le(ura. Il bus di sistema
La macchina di Von Neumann rchite(ura di un calcolatore us di sistema Collegamento Unità di Elaborazione (CPU) Memoria Centrale (MM) Esecuzione istruzioni Memoria di lavoro Interfaccia Periferica P 1 Interfaccia
Dettagli3 Capitolo primo Informatica e calcolatori
I n d i c e 3 Capitolo primo Informatica e calcolatori 7 Capitolo secondo La rappresentazione delle informazioni 11 2.1 La codifica dei caratteri 2.1.1 Il codice ASCII, p. 11-2.1.2 Codifiche universali,
DettagliIntroduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6
Appunti di Calcolatori Elettronici Esecuzione di istruzioni in parallelo Introduzione... 1 Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD...
DettagliFONDAMENTI di INFORMATICA L. Mezzalira
FONDAMENTI di INFORMATICA L. Mezzalira Possibili domande 1 --- Caratteristiche delle macchine tipiche dell informatica Componenti hardware del modello funzionale di sistema informatico Componenti software
DettagliProgrammazione modulare 2012-2013
Programmazione modulare 2012-2013 Indirizzo: Informatica Abacus Disciplina: SISTEMI DI ELABORAZIONE E TRASMISSIONE DELLE INFORMAZIONI Classe: A e B Docenti: Buscemi Letizia Ore settimanali previste: 5
Dettagliintroduzione I MICROCONTROLLORI
introduzione I MICROCONTROLLORI Definizione Un microcontrollore è un dispositivo elettronico programmabile Può svolgere autonomamente diverse funzioni in base al programma in esso implementato Non è la
DettagliArchitettura di un sistema di calcolo
Richiami sulla struttura dei sistemi di calcolo Gestione delle Interruzioni Gestione della comunicazione fra processore e dispositivi periferici Gerarchia di memoria Protezione. 2.1 Architettura di un
DettagliStruttura del calcolatore
Struttura del calcolatore Proprietà: Flessibilità: la stessa macchina può essere utilizzata per compiti differenti, nessuno dei quali è predefinito al momento della costruzione Velocità di elaborazione
DettagliLa gestione di un calcolatore. Sistemi Operativi primo modulo Introduzione. Sistema operativo (2) Sistema operativo (1)
La gestione di un calcolatore Sistemi Operativi primo modulo Introduzione Augusto Celentano Università Ca Foscari Venezia Corso di Laurea in Informatica Un calcolatore (sistema di elaborazione) è un sistema
DettagliC. P. U. MEMORIA CENTRALE
C. P. U. INGRESSO MEMORIA CENTRALE USCITA UNITA DI MEMORIA DI MASSA La macchina di Von Neumann Negli anni 40 lo scienziato ungherese Von Neumann realizzò il primo calcolatore digitale con programma memorizzato
DettagliDefinizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base
Sistema operativo Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base Architettura a strati di un calcolatore
DettagliUniversità degli studi di Roma Tor Vergata Ingegneria Medica Informatica I Programma del Corso
Obiettivi formativi Introdurre i principi del funzionamento di un elaboratore e della programmazione. Presentare gli approcci elementari alla soluzione di problemi (algoritmi)e al progetto di strutture
DettagliFondamenti di Informatica PROBLEMI E ALGORITMI. Fondamenti di Informatica - D. Talia - UNICAL 1
Fondamenti di Informatica PROBLEMI E ALGORITMI Fondamenti di Informatica - D. Talia - UNICAL 1 Specifica di un algoritmo Primo approccio, scrittura diretta del programma: la soluzione coincide con la codifica
DettagliLa Gestione delle risorse Renato Agati
Renato Agati delle risorse La Gestione Schedulazione dei processi Gestione delle periferiche File system Schedulazione dei processi Mono programmazione Multi programmazione Gestione delle periferiche File
DettagliIl Sistema Operativo. C. Marrocco. Università degli Studi di Cassino
Il Sistema Operativo Il Sistema Operativo è uno strato software che: opera direttamente sull hardware; isola dai dettagli dell architettura hardware; fornisce un insieme di funzionalità di alto livello.
DettagliIl sistema di I/O. Hardware di I/O Interfacce di I/O Software di I/O. Introduzione
Il sistema di I/O Hardware di I/O Interfacce di I/O Software di I/O Introduzione 1 Sotto-sistema di I/O Insieme di metodi per controllare i dispositivi di I/O Obiettivo: Fornire ai processi utente un interfaccia
DettagliDispensa di Fondamenti di Informatica. Architettura di un calcolatore
Dispensa di Fondamenti di Informatica Architettura di un calcolatore Hardware e software La prima decomposizione di un calcolatore è relativa ai seguenti macro-componenti hardware la struttura fisica del
DettagliLa Macchina Virtuale
Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Elaborazione di Immagini e Suoni / Riconoscimento e Visioni Artificiali 12 c.f.u. Anno Accademico 2008/2009 Docente: ing. Salvatore
DettagliISTITUTO TECNICO ECONOMICO MOSSOTTI
CLASSE III INDIRIZZO S.I.A. UdA n. 1 Titolo: conoscenze di base Conoscenza delle caratteristiche dell informatica e degli strumenti utilizzati Informatica e sistemi di elaborazione Conoscenza delle caratteristiche
DettagliIntroduzione ai sistemi operativi
Introduzione ai sistemi operativi Che cos è un S.O.? Shell Utente Utente 1 2 Utente N Window Compilatori Assembler Editor.. DB SOFTWARE APPLICATIVO System calls SISTEMA OPERATIVO HARDWARE Funzioni di un
DettagliCalcolatori Elettronici. La memoria gerarchica La memoria virtuale
Calcolatori Elettronici La memoria gerarchica La memoria virtuale Come usare la memoria secondaria oltre che per conservare permanentemente dati e programmi Idea Tenere parte del codice in mem princ e
DettagliIl sistema operativo TinyOS
tesi di laurea Anno Accademico 2005/2006 relatore Ch.mo prof. Domenico Cotroneo candidato Giovanni Chierchia Matr. 534 / 804 ::. Obiettivi del lavoro di tesi Studio del sistema operativo TinyOS Studio
DettagliI Thread. I Thread. I due processi dovrebbero lavorare sullo stesso testo
I Thread 1 Consideriamo due processi che devono lavorare sugli stessi dati. Come possono fare, se ogni processo ha la propria area dati (ossia, gli spazi di indirizzamento dei due processi sono separati)?
DettagliArchitettura degli Elaboratori e delle Reti
Architettura degli Elaboratori e delle Reti CORSO DI LAUREA TRIENNALE IN INFORMATICA PER LE TELECOMUNICAZIONI A. A. 2006-2007 Cristina Silvano Università degli Studi di Milano Dipartimento di Informatica
DettagliDispensa di Informatica I.1
IL COMPUTER: CONCETTI GENERALI Il Computer (o elaboratore) è un insieme di dispositivi di diversa natura in grado di acquisire dall'esterno dati e algoritmi e produrre in uscita i risultati dell'elaborazione.
DettagliIl Sistema Operativo (1)
E il software fondamentale del computer, gestisce tutto il suo funzionamento e crea un interfaccia con l utente. Le sue funzioni principali sono: Il Sistema Operativo (1) La gestione dell unità centrale
DettagliArchitettura di un sistema operativo
Architettura di un sistema operativo Dipartimento di Informatica Università di Verona, Italy Struttura di un S.O. Sistemi monolitici Sistemi a struttura semplice Sistemi a livelli Virtual Machine Sistemi
DettagliCalcolatori Elettronici
Calcolatori Elettronici La Pipeline Superpipeline Pipeline superscalare Schedulazione dinamica della pipeline Processori reali: l architettura Intel e la pipeline dell AMD Opteron X4 Ricapitolando Con
DettagliLa macchina programmata Instruction Set Architecture (1)
Corso di Laurea in Informatica Architettura degli elaboratori a.a. 2014-15 La macchina programmata Instruction Set Architecture (1) Schema base di esecuzione Istruzioni macchina Outline Componenti di un
DettagliSoftware. Algoritmo. Algoritmo INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042)
INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042) Gli elaboratori utilizzano memoria per Dati da elaborare Istruzioni eseguite dall elaboratore software differenti risoluzione problemi differenti Algoritmo
DettagliSistemi Operativi MECCANISMI E POLITICHE DI PROTEZIONE. D. Talia - UNICAL. Sistemi Operativi 13.1
MECCANISMI E POLITICHE DI PROTEZIONE 13.1 Protezione Obiettivi della Protezione Dominio di Protezione Matrice di Accesso Implementazione della Matrice di Accesso Revoca dei Diritti di Accesso Sistemi basati
DettagliMECCANISMI E POLITICHE DI PROTEZIONE 13.1
MECCANISMI E POLITICHE DI PROTEZIONE 13.1 Protezione Obiettivi della Protezione Dominio di Protezione Matrice di Accesso Implementazione della Matrice di Accesso Revoca dei Diritti di Accesso Sistemi basati
DettagliArchitettura hardware
Architettura dell elaboratore Architettura hardware la parte che si può prendere a calci Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione
DettagliQuinto Homework. Indicare il tempo necessario all'esecuzione del programma in caso di avvio e ritiro fuori ordine.
Quinto Homework 1) Si vuole progettare una cache a mappatura diretta per un sistema a 32 bit per una memoria da 2 GB (quindi sono solo 31 i bit utili per gli indirizzi) e blocchi di 64 byte. Rispondere
DettagliL informatica INTRODUZIONE. L informatica. Tassonomia: criteri. È la disciplina scientifica che studia
L informatica È la disciplina scientifica che studia INTRODUZIONE I calcolatori, nati in risposta all esigenza di eseguire meccanicamente operazioni ripetitive Gli algoritmi, nati in risposta all esigenza
DettagliCapitolo 3: Strutture dei sistemi operativi
Capitolo 3: Strutture dei sistemi operativi Componenti del sistema Servizi di un sistema operativo Chiamate del sistema Programmi di sistema Struttura del sistema Macchine virtuali Progettazione e realizzazione
DettagliSISTEMI DI ELABORAZIONE DELLE INFORMAZIONI
SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI Prof. Andrea Borghesan venus.unive.it/borg borg@unive.it Ricevimento: martedì, 12.00-13.00. Dip. Di Matematica Modalità esame: scritto + tesina facoltativa 1
DettagliPROGRAMMAZIONE MODULARE 2014-2015
PROGRAMMAZIONE MODULARE 01-015 Disciplina: SISTEMI E RETI Classe: TERZA A INF Indirizzo: INFORMATICA E TELECOMUNICAZIONI Articolazione INFORMATICA Docenti: Silvia Gualdi (teoria) Paolo Aurilia (laboratorio)
DettagliArchitettura di un computer
Architettura di un computer Modulo di Informatica Dott.sa Sara Zuppiroli A.A. 2012-2013 Modulo di Informatica () Architettura A.A. 2012-2013 1 / 36 La tecnologia Cerchiamo di capire alcuni concetti su
DettagliIl Sistema Operativo. Di cosa parleremo? Come si esegue un programma. La nozione di processo. Il sistema operativo
Il Sistema Operativo Di cosa parleremo? Come si esegue un programma. La nozione di processo. Il sistema operativo ... ma Cos'è un S.O.? un PROGRAMMA!... ma Cos'è un programma? PROGRAMMA: 1. algoritmo sequenza
DettagliIl software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi
Il Software Il software impiegato su un computer si distingue in: Software di sistema Sistema Operativo Compilatori per produrre programmi Software applicativo Elaborazione testi Fogli elettronici Basi
DettagliInput/Output. Moduli di Input/ Output. gestiscono quantità di dati differenti a velocità diverse in formati diversi. n Grande varietà di periferiche
Input/Output n Grande varietà di periferiche gestiscono quantità di dati differenti a velocità diverse in formati diversi n Tutti più lenti della CPU e della RAM n Necessità di avere moduli di I/O Moduli
DettagliINFORMATICA 1 L. Mezzalira
INFORMATICA 1 L. Mezzalira Possibili domande 1 --- Caratteristiche delle macchine tipiche dell informatica Componenti hardware del modello funzionale di sistema informatico Componenti software del modello
DettagliSoftware di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche
Software di sistema e software applicativo I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software soft ware soffice componente è la parte logica
DettagliIstituto Universitario Navale Facoltà di Ingegneria Corso di Laurea in Ingegneria delle Telecomunicazioni
Istituto Universitario Navale Facoltà di Ingegneria Corso di Laurea in Ingegneria delle Telecomunicazioni Fondamenti di Informatica Modulo 1 Programma dell'a.a. 2003/2004 Luigi Romano Dipartimento di Informatica
DettagliOrigini e caratteristiche dei calcolatori elettronici
Origini e caratteristiche dei calcolatori elettronici Lunedì, 09 ottobre 2006 Supercomputer, mainframe 1 Server, workstation, desktop, notebook, palmare Un po di storia 1642 Biagio Pascal 1671 Leibniz
DettagliCPU. Maurizio Palesi
CPU Central Processing Unit 1 Organizzazione Tipica CPU Dispositivi di I/O Unità di controllo Unità aritmetico logica (ALU) Terminale Stampante Registri CPU Memoria centrale Unità disco Bus 2 L'Esecutore
DettagliGPGPU GPGPU. anni piu' recenti e' naturamente aumentata la versatilita' ed usabilita' delle GPU
GPGPU GPGPU GPGPU Primi In (General Purpose computation using GPU): uso del processore delle schede grafice (GPU) per scopi differenti da quello tradizionale delle generazione di immagini 3D esperimenti
DettagliCorso di Laurea in Ingegneria Informatica e Biomedica. Fondamenti di Informatica II A.A. (2002-2003)
Università degli Studi Magna Græcia di Catanzaro Corso di Laurea in Ingegneria Informatica e Biomedica Fondamenti di Informatica II A.A. (2002-2003) Docente: Prof. Mario Cannataro cannataro@unicz.it www.isi.cs.cnr.it/isi/cannataro
DettagliMemoria Virtuale. Anche la memoria principale ha una dimensione limitata. memoria principale (memoria fisica) memoria secondaria (memoria virtuale)
Memoria Virtuale Anche la memoria principale ha una dimensione limitata. Possiamo pensare di superare questo limite utilizzando memorie secondarie (essenzialmente dischi) e vedendo la memoria principale
DettagliSistemi Operativi STRUTTURA DEI SISTEMI OPERATIVI 3.1. Sistemi Operativi. D. Talia - UNICAL
STRUTTURA DEI SISTEMI OPERATIVI 3.1 Struttura dei Componenti Servizi di un sistema operativo System Call Programmi di sistema Struttura del sistema operativo Macchine virtuali Progettazione e Realizzazione
DettagliIntroduzione alla Virtualizzazione
Introduzione alla Virtualizzazione Dott. Luca Tasquier E-mail: luca.tasquier@unina2.it Virtualizzazione - 1 La virtualizzazione è una tecnologia software che sta cambiando il metodo d utilizzo delle risorse
DettagliArchitettura del calcolatore
Architettura del calcolatore La prima decomposizione di un calcolatore è relativa a due macro-componenti: Hardware Software Architettura del calcolatore L architettura dell hardware di un calcolatore reale
DettagliLICEO SCIENTIFICO "LEONARDO DA VINCI" - RC PROGRAMMA DI INFORMATICA A.S. 2014/15 - CLASSE: I Q - Indirizzo Scienze applicate Prof Miritello Rita
LICEO SCIENTIFICO "LEONARDO DA VINCI" - RC PROGRAMMA DI INFORMATICA A.S. 2014/15 - CLASSE: I Q - Indirizzo Scienze applicate Modulo 1: Introduzione all informatica Fondamenti di teoria della elaborazione
DettagliScheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux
Scheduling della CPU Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux Sistemi multiprocessori Fin qui si sono trattati i problemi di scheduling su singola
DettagliFondamenti di Informatica Ingegneria Clinica Lezione 16/10/2009. Prof. Raffaele Nicolussi
Fondamenti di Informatica Ingegneria Clinica Lezione 16/10/2009 Prof. Raffaele Nicolussi FUB - Fondazione Ugo Bordoni Via B. Castiglione 59-00142 Roma Docente Raffaele Nicolussi rnicolussi@fub.it Lezioni
DettagliHardware di un Computer
Hardware di un Computer Monitor Mouse Tastiera Printer Disk CPU Graphics Adapter USB Controller Parallel Port Disk Controller BUS Memoria RAM Memoria ROM (BIOS) DMA CPU esegue istruzioni, effettua calcoli,
DettagliArchitettura dei computer
Architettura dei computer In un computer possiamo distinguere quattro unità funzionali: il processore (CPU) la memoria principale (RAM) la memoria secondaria i dispositivi di input/output Il processore
DettagliCon il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.
Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Compito fondamentale di un S.O. è infatti la gestione dell
DettagliApproccio stratificato
Approccio stratificato Il sistema operativo è suddiviso in strati (livelli), ciascuno costruito sopra quelli inferiori. Il livello più basso (strato 0) è l hardware, il più alto (strato N) è l interfaccia
DettagliIng. Paolo Domenici PREFAZIONE
Ing. Paolo Domenici SISTEMI A MICROPROCESSORE PREFAZIONE Il corso ha lo scopo di fornire i concetti fondamentali dei sistemi a microprocessore in modo semplice e interattivo. È costituito da una parte
DettagliPIANO DI LAVORO DEI DOCENTI
Pag. 1 di 6 Docente: Materia insegnamento: SISTEMI ELETTRONICI AUTOMATICI Dipartimento: ELETTRONICA Classe Anno scolastico: 1 Livello di partenza (test di ingresso, livelli rilevati) Sono richieste conoscenze
DettagliArchitettura (10/9/2003) Pag. 1/6. Cognome e Nome (in stampatello):
Architettura (10/9003) Pag. 1/6 Esame di Architettura (matr.0-1) del 10/9003 Per Fondamenti di Architettura NON rispondere Per le domande a risposta multipla cerchiare la risposta scelta. Non alle domande
DettagliPROGRAMMA di INFORMATICA E LABORATORIO Classi prime Servizi Commerciali (Grafica)
Istituto Kandinsky Anno Scolastico 2011-2012 PROGRAMMA di INFORMATICA E LABORATORIO Classi prime Servizi Commerciali (Grafica) INFORMAZIONE, DATI E LORO CODIFICA o Definizione di Informatica o Differenza
DettagliSISTEMI E RETI 4(2) 4(2) 4(2) caratteristiche funzionali
CL AS SE INFORMATICA 6(3) 6(4) - 6(4) SISTEMI E RETI 4(2) 4(2) 4(2) TECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI COMPETENZE 3 Essere in grado di sviluppare semplici applicazioni
DettagliContenuti. Visione macroscopica Hardware Software. 1 Introduzione. 2 Rappresentazione dell informazione. 3 Architettura del calcolatore
Contenuti Introduzione 1 Introduzione 2 3 4 5 71/104 Il Calcolatore Introduzione Un computer...... è una macchina in grado di 1 acquisire informazioni (input) dall esterno 2 manipolare tali informazioni
DettagliSTRUTTURE DEI SISTEMI DI CALCOLO
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
DettagliParte VIII. Architetture Parallele
Parte VIII Architetture Parallele VIII.1 Motivazioni Limite di prestazioni delle architetture sequenziali: velocità di propagazione dei segnali, la luce percorre 30 cm in un nsec! Migliore rapporto costo/prestazioni
DettagliIntroduzione alla GPGPU Corso di sviluppo Nvidia CUDATM. Davide Barbieri
Introduzione alla GPGPU Corso di sviluppo Nvidia CUDATM Davide Barbieri Contatti skype: davbar86 mail: davide.barbieri@ghostshark.it Panoramica corso Introduzione al mondo delle GPU Modello GPGPU Nvidia
DettagliCorso di Informatica Applicata. Lezione 3. Università degli studi di Cassino
Università degli studi di Cassino Corso di Laurea in Ingegneria della Produzione Industriale Corso di Informatica Applicata Lezione 3 Ing. Saverio De Vito e-mail: saverio.devito@portici.enea.it Tel.: +39
DettagliIndice Prefazione Capitolo 1 Tecnologie dell informazione e della comunicazione e sistemi informativi 1.1 Informatica e ICT
i-000_romane_sawyer:i-xiii_romane_sawyer.qxd 17-12-2009 11:10 Pagina V Prefazione XI Capitolo 1 Tecnologie dell informazione e della comunicazione e sistemi informativi 1 1.1 Informatica e ICT 2 1.2 Il
DettagliCORSO DI LAUREA IN SCIENZE ERBORISTICHE E DEI PRODOTTI NUTRACEUTICI
CORSO DI LAUREA IN SCIENZE ERBORISTICHE E DEI PRODOTTI NUTRACEUTICI Informatica con esercitazioni Prof. Onofrio Greco Modulo 1 Concetti di base dell ICT Modulo 2 Uso del Computer e Gestione dei File Modulo
DettagliIl Sistema Operativo
Il Sistema Operativo Il Sistema Operativo Il Sistema Operativo (S.O.) è un insieme di programmi interagenti che consente agli utenti e ai programmi applicativi di utilizzare al meglio le risorse del Sistema
DettagliArchitetture Applicative
Alessandro Martinelli alessandro.martinelli@unipv.it 6 Marzo 2012 Architetture Architetture Applicative Introduzione Alcuni esempi di Architetture Applicative Architetture con più Applicazioni Architetture
DettagliCorso di Sistemi Operativi Ingegneria Elettronica e Informatica prof. Rocco Aversa. Raccolta prove scritte. Prova scritta
Corso di Sistemi Operativi Ingegneria Elettronica e Informatica prof. Rocco Aversa Raccolta prove scritte Realizzare una classe thread Processo che deve effettuare un numero fissato di letture da una memoria
DettagliINFORMATICA. Il Sistema Operativo. di Roberta Molinari
INFORMATICA Il Sistema Operativo di Roberta Molinari Il Sistema Operativo un po di definizioni Elaborazione: trattamento di di informazioni acquisite dall esterno per per restituire un un risultato Processore:
DettagliEvoluzione dei sistemi operativi (5) Evoluzione dei sistemi operativi (4) Classificazione dei sistemi operativi
Evoluzione dei sistemi operativi (4) Sistemi multiprogrammati! più programmi sono caricati in contemporaneamente, e l elaborazione passa periodicamente dall uno all altro Evoluzione dei sistemi operativi
DettagliSistema Operativo. Fondamenti di Informatica 1. Il Sistema Operativo
Sistema Operativo Fondamenti di Informatica 1 Il Sistema Operativo Il Sistema Operativo (S.O.) è un insieme di programmi interagenti che consente agli utenti e ai programmi applicativi di utilizzare al
DettagliArchitettura di un calcolatore
2009-2010 Ingegneria Aerospaziale Prof. A. Palomba - Elementi di Informatica (E-Z) 7 Architettura di un calcolatore Lez. 7 1 Modello di Von Neumann Il termine modello di Von Neumann (o macchina di Von
DettagliEVOLUZIONE DEI LINGUAGGI DI ALTO LIVELLO
EVOLUZIONE DEI LINGUAGGI DI ALTO LIVELLO Linguaggi di programmazione classificati in base alle loro caratteristiche fondamentali. Linguaggio macchina, binario e fortemente legato all architettura. Linguaggi
DettagliIl computer: primi elementi
Il computer: primi elementi Tommaso Motta T. Motta Il computer: primi elementi 1 Informazioni Computer = mezzo per memorizzare, elaborare, comunicare e trasmettere le informazioni Tutte le informazioni
DettagliArchitettura degli elaboratori (A)
Laurea in Informatica a.a. 2010-2011 Laboratorio del corso di Architettura degli elaboratori (A) Modulo 1: l Architettura dell 8086 Valeria Carofiglio Linguaggi a vari livelli e loro relazioni Programma
DettagliCalcolo numerico e programmazione Architettura dei calcolatori
Calcolo numerico e programmazione Architettura dei calcolatori Tullio Facchinetti 30 marzo 2012 08:57 http://robot.unipv.it/toolleeo Il calcolatore tre funzionalità essenziali:
DettagliSistemi Operativi GESTIONE DELLA MEMORIA CENTRALE. D. Talia - UNICAL. Sistemi Operativi 6.1
GESTIONE DELLA MEMORIA CENTRALE 6.1 Gestione della Memoria Background Spazio di indirizzi Swapping Allocazione Contigua Paginazione 6.2 Background Per essere eseguito un programma deve trovarsi (almeno
DettagliSpecializzazione Elettronica ed Elettrotecnica Articolazione Automazione. Elettronica ed Elettrotecnica - Classe 3^
Specializzazione Elettronica ed Elettrotecnica Articolazione Automazione Elettronica ed Elettrotecnica - Classe 3^ Elettrotecnica Tipologie di segnali Unità di misura delle grandezze elettriche Simbologia
DettagliCOS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA
LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware COS È UN LINGUAGGIO? Un linguaggio è un insieme di parole e di metodi di combinazione delle
DettagliProgrammazione ad Oggetti. Java Parte I
Programmazione ad Oggetti Java Parte I Overview Caratteristiche generali 1 Caratteristiche generali Un moderno linguaggio orientato agli oggetti Pensato per lo sviluppo di applicazioni che devono essere
Dettagli- Algoritmi ed esecutori di algoritmi - ALGORITMI MACCHINA DI VON NEUMANN
ALGORITMI E MACCHINA DI VON NEUMANN 1 COMPUTER= ELABORATORE NON CERVELLO ELETTRONICO CERVELLO: Capacità decisionali ELABORATORE: Incapacità di effettuare scelte autonome di fronte a situazioni impreviste
DettagliCalcolatori Elettronici
Calcolatori Elettronici Classificazione dei calcolatori elettronici Sistemi basati sull architettura di von Neumann rchitettura dei calcolatori: definizioni Evoluzione dell architettura rchitettura della
DettagliSistema operativo: Gestione della memoria
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Sistema operativo: Gestione della memoria La presente dispensa e
DettagliPiù processori uguale più velocità?
Più processori uguale più velocità? e un processore impiega per eseguire un programma un tempo T, un sistema formato da P processori dello stesso tipo esegue lo stesso programma in un tempo TP T / P? In
DettagliInformatica 1 Lezione 1
Informatica 1 Lezione 1 Concetti base: Hardware È l insieme delle parti fisiche, elettroniche e meccaniche che compongono il computer, quali il chip, il mouse, il lettore CDROM, il monitor, le schede,
DettagliIntroduzione alle basi di dati. Gestione delle informazioni. Gestione delle informazioni. Sistema informatico
Introduzione alle basi di dati Introduzione alle basi di dati Gestione delle informazioni Base di dati Modello dei dati Indipendenza dei dati Accesso ai dati Vantaggi e svantaggi dei DBMS Gestione delle
DettagliIl Processore: i registri
Il Processore: i registri Il processore contiene al suo interno un certo numero di registri (unità di memoria estremamente veloci) Le dimensioni di un registro sono di pochi byte (4, 8) I registri contengono
DettagliDISCIPLINA TECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI
DISCIPLINA TECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI INDIRIZZO DI INFORMATICA E TELECOMUNICAZIONI ARTICOLAZIONE TELECOMUNICAZIONI Utilizzare consapevolmente gli strumenti
DettagliDMA Accesso Diretto alla Memoria
Testo di rif.to: [Congiu] - 8.1-8.3 (pg. 241 250) 08.a DMA Accesso Diretto alla Memoria Motivazioni Organizzazione dei trasferimenti DMA Arbitraggio del bus di memoria Trasferimento di un blocco di dati
DettagliIl processore. Il processore. Il processore. Il processore. Architettura dell elaboratore
Il processore Architettura dell elaboratore Il processore La esegue istruzioni in linguaggio macchina In modo sequenziale e ciclico (ciclo macchina o ciclo ) Effettuando operazioni di lettura delle istruzioni
DettagliLezioni frontali e/o multimediali. Lezioni frontali e/o
Istituto Istruzione Superiore di baronissi ind. tecnico PROGRAMMAZIONE DIDATTICA DI Tecnologie e Progettazione di Sistemi Informatici e di Telecomunicazioni Articolazione: Informatica Anno scolastico 2012-2013
Dettagli