Computer Organization and Design rappresenta un testo universitario utilizzato all’interno del corso di sistemi operativi ed embedded systems.
Raramente ci si trova a studiare su di un testo tecnico definendolo “bello. In questo caso l’aggettivo è d’obbligo.
Ho avuto la fortuna di approfondire l’esame di Hardware di sistema su questo libro, versione per processore MIPS, ed il caso ha voluto che incrociassi succesivamente anche la versione per ARM. IL testo è scritto in perfetto Inglese, non mancano citazioni colte, descrizioni estese ed un pizzico di quello humor inglese che tanto aiuta a digerire testi simili.
Ma, soprattutto, si tratta di un testo perfettamente centrato sull’argomento. Non vi nascondo che l’ho letto, da cima a fondo, per “vedere come andasse a finire”, cioè per capire come funzionasse il cervello degli autori ed in che modo ricomponessero i vari elementi descritti, come in un favoloso puzzle virtuale.
Il link
- Titolo: Computer Organization and Design – ARM Edition
- Autori: David A. Patterson – John L. Hennessy
- Editore: Morgan Kaufmann
- Prezzo: 68.38 euro (copertina flessibile) – 40,76 euro (formato Kindle)
Gli autori:
David A. Patterson ha insegnato architettura dei computer all’Università di California, Berkeley, da quando è entrato a far parte della facoltà nel 1976, dove detiene la cattedra di Pardee di informatica. Ha condiviso la medaglia IEEE John von Neumann e il Premio C & C con John Hennessy.
A Berkeley, Patterson ha guidato la progettazione e l’implementazione di RISC I, probabilmente il primo VLSI ha ridotto il set di istruzioni del computer e la base dello spot pubblicitario Architettura SPARC. Era un leader dei Redundant Arrays of Inexpensive Disks (RAID), che ha portato a sistemi di archiviazione affidabili di molte aziende.
È stato anche coinvolto nel progetto Network of Workstations (NOW), che ha portato a tecnologia cluster utilizzata dalle società Internet e successivamente dal cloud computing. I suoi attuali progetti di ricerca sono Algorithm-Machine-People and Algorithms and Specializers for Provably Optimal
Implementations with Resilience and Efficiency. Il laboratorio ASPIRE utilizza una profonda sintonizzazione hardware e software per ottenere il massime prestazioni ed efficienza energetica possibili per sistemi mobile e rack computing.
John L. Hennessy è il decimo presidente della Stanford University, dove è stato membro della facoltà dal 1977 nei dipartimenti di ingegneria elettrica e informatica. Hennessy è un membro dell’IEEE e dell’ACM; un membro del National Academy of Engineering, National Academy of Science e American Società filosofica; e un membro dell’Accademia americana delle arti e delle scienze.
Tra i suoi numerosi premi ci sono il 2001 Eckert-Mauchly Award per i suoi contributi a Tecnologia RISC, il Seymour Cray Computer Engineering Award 2001 e il 2000 Premio John von Neumann, che ha condiviso con David Patterson. Ha anche ricevuto sette dottorati onorari.
Nel 1981, ha avviato il progetto MIPS a Stanford con una manciata di studenti laureati.
Dopo aver completato il progetto nel 1984, ha preso un congedo dall’università per cofondare MIPS Computer Systems (ora MIPS Technologies), che ha sviluppato uno dei primi Microprocessori RISC commerciali. Nel 2006 soltre 2 miliardi di microprocessori MIPS sono stati inseriti in dispositivi che vanno dai videogiochi e dai computer palmari alle stampanti laser e
switch di rete. Hennessy ha successivamente guidato il DASH (Director Architecture for Shared Memory), che ha prototipato il primo multiprocessore scalabile cache coherent; molti delle idee chiave sono state adottate nei moderni multiprocessori. Oltre alle sue attività e responsabilità universitarie, ha continuato a lavorare con numerose start-up, sia come consulente in fase iniziale che come investitore.
Il formato
Il libro è davvero imponente: quasi 1100 pagine di testo, tabelle e grafici, divisi in sei capitoli e quattro appendici, come segue:
- Computer abstractions and technology
- Instructions: language of the computer
- Arithmetic for Computers
- The Processor
- Large and fast: exploiting memory hierarchy
- Parallel processors from client to cloud
- Appendix A: The basics of logic contents
- Appendix B: Graphics and computing GPUs
- Appendix C: Mapping control to hardware
- Appendix d: A survey of RISC architectures fpor desktop,s ervers and embedded computers
Il manuale “Computer Organization and Design” è caratterizzato dai contenuti decisamente interessanti ed approfonditi, ma anche di paragrafi più leggeri, legati alla storia dei microprocessori e della Scienza dell’Informazione. Disponibile anche per processori MIPS e RISC-V, l’esemplare in questione è specializzato sui processori con architettura ARM.
Trattandosi dell’architettura del processore contenuto nel Raspberry PI, appare particolarmente indicato per chiunque desideri sfruttare al massimo le caratteristiche del proprio SBC ed ottimizzarne le prestazioni. Lo studio di questo libro mi ha consentito in meno di 14 giorni di progettare e realizzare un driver per la gestione del sensore di temperature DHT11 interamente in codice assembler.
A chi è diretto
Il libro è un testo universitario, e non è certamente indicato ai deboli di cuore. Risulta invece ottimale per tutti coloro che abbiano una vena di curiosità scientifica e tecnologica, siano appassionati di computer e informatica, e vogliano restare informati sulle ultime novità relative ai processori.
Nonostante la difficoltà intrinseca nell’argomento, il manuale riesce ad accompagnare lo studente curioso quasi per mano, arricchendo lo studio con una messe incredibilmente varia di informazioni sull’argomento.