Questo libro ha l’obiettivo di studiare l’architettura degli elaboratori secondo un approccio integrato e strutturato. Ogni argomento viene trattato sviluppando metodologie le più formali possibile e modelli di costo, e, al tempo stesso, facendo riferimento alle tecnologie disponibili e a quelle previste nel breve-medio termine, eventualmente discutendo possibili evoluzioni nel lungo termine.Il testo è suddiviso in quattro parti: Fondamenti e Strutturazione Firmware (unità di elaborazione, reti logiche, modelli di parte controllo, memorie, parallelismo, comunicazioni), Macchina Assembler e Processi (rappresentazione ed esecuzione di processi, uso e indirizzamento della memoria, spazi d’indirizzamento, macchine Risc e Cisc, cooperazione tra processi e loro supporto), Architettura Base di Elaboratori General-Purpose (interpretazione delle istruzioni, prestazioni, gerarchie di memoria, cache, ingresso-uscita), Architetture Parallele (strutturazione e valutazione delle computazioni parallele, architetture con parallelismo a livello d’istruzioni, multithreading, architetture multiprocessor a memoria condivisa e multicomputer a memoria distribuita).Oltre che utilizzabile da professionisti e ricercatori, il testo contiene materiale per più corsi sull’architettura dei sistemi di elaborazione, e può essere utilizzato in modo del tutto modulare selezionando facilmente specifici capitoli o parti di essi. La trattazione fa ampio uso di esempi ed esercizi svolti.Le propedeuticità necessarie sono quelle di una preparazione di base a livello universitario nei settori della matematica, della programmazione e degli algoritmi.Rispetto alla prima edizione sono sviluppati a fondo i temi delle gerarchie di memoria, architetture ILP scalari e superscalari, in-order vs out-of-order, VLIW, multithreading, multicore, cache coherence.