Politecnico di Milano - Laboratorio HOChoc.elet.polimi.it/vismara/2005/Hardware.pdf · • Slide...

32
6 ottobre 2004 - Cultura Tecnologica di Progetto - 1 Cultura Tecnologica di Progetto Cultura Tecnologica di Progetto Politecnico di Milano Politecnico di Milano Facolt Facolt à à di Disegno Industriale di Disegno Industriale A.A. 2004 A.A. 2004 - - 2005 2005 Ing. Lorenzo Vismara

Transcript of Politecnico di Milano - Laboratorio HOChoc.elet.polimi.it/vismara/2005/Hardware.pdf · • Slide...

6 ottobre 2004 - Cultura Tecnologica di Progetto - 1

Cultura Tecnologica di ProgettoCultura Tecnologica di Progetto

Politecnico di MilanoPolitecnico di MilanoFacoltFacoltàà di Disegno Industrialedi Disegno Industriale

A.A. 2004A.A. 2004--20052005Ing. Lorenzo Vismara

6 ottobre 2004 - Cultura Tecnologica di Progetto - 2

Testi consigliatiTesti consigliati

• Slide presentate a lezione

• Dennis P. Curtin, Kim Foley, KunalSen, Cathleen Morin"Informatica di base, 2/ed" Mc Graw Hill, 2001

6 ottobre 2004 - Cultura Tecnologica di Progetto - 3

Altre fontiAltre fonti

• Ron White“Il Computer. Come è fatto e come funziona.”Mondadori Informatica, 2001

• Peter Norton“Inside PC”Jackson Libri, 1999

• Autori vari“ECDL”Apogeo, 2000

• Sito web “ComeFunziona.Net”http://www.comefunziona.net

6 ottobre 2004 - Cultura Tecnologica di Progetto - 4

Acronimi e misureAcronimi e misure

Unità di misura informatiche:Bit unità binaria, valori 0 o 1byte gruppo di 8 bitKbyte 1.024 (210) byteMbyte 1.024 * 1.024 = 1.048.576 (220) byteGbyte 1.024 * 1.024 * 1.024 = 1.073.741.824 (230) byteHz n° di cicli a secondoMHz 1.000.000 (103) HzMicron un millesimo di millimetroms un millesimo di secondoPollice 2,54 cm

Acronimi di uso comune:HW HardwareSW SoftwareCPU Central Processing UnitRAM Random Access MemoryROM Read Only MemoryI / O Input / OutputBIOS Basic Input Output SystemPCI Peripheral Component InterconnectAGP Accelerated Grafic PortDMA Direct Memory AccessHDD Hard Disk DriveFDD Floppy Disk DriveCMOS Complementary Metal Oxide Semiconductor

6 ottobre 2004 - Cultura Tecnologica di Progetto - 5

Architettura di un PCArchitettura di un PC

– Il Personal Computer (PC) è, in generale, un elaboratore elettronico “general purpose” per uso individuale

– Le componenti principali, che analizzeremo nel seguito, sono:• Hardware• Software, d’ambiente ed applicativo

– Il funzionamento del PC è basato su due elementi fondamentali:• Istruzioni da eseguire• Dati da elaborare

6 ottobre 2004 - Cultura Tecnologica di Progetto - 6

Hardware e SoftwareHardware e Software

• La prima fondamentale distinzione che si deve fare nel mondo deicomputer riguarda l’hardware e il software. – L’hardware è tutto quanto c’è di fisico e tangibile nel computer, a

partire dal case, dal monitor, dalla tastiera fino ad arrivare alla scheda madre ed ai banchi di memoria.

– Un software è quanto serve per gestire la macchina. Un hardware senza software è soltanto un insieme di ferro, plastica e silicio, ben poco interessante per chi con un computer vuole eseguire dei conti o memorizzare delle informazioni.

• Tutti i computer condividono la stessa architettura di base: tutti hanno una memoria, una unità aritmetico logica, una unità di controllo ed i device input/output. L’astrazione presentata da JohnVon Neumann organizza i computer proprio suddividendoli in queste quattro parti principali.

6 ottobre 2004 - Cultura Tecnologica di Progetto - 7

Architettura di un PCArchitettura di un PC

Architettura di Von Neumann

Tutte le diverse tipologie di calcolatori sono accomunati dalla medesima architettura

logica, schematizzata dal modello di Von Neumann del calcolatore.

Processore(CPU)

Processore(CPU)

BUS di sistemaBUS di sistema

MemoriaCentraleMemoriaCentrale

InterfacciaperifericheInterfacciaperiferiche

6 ottobre 2004 - Cultura Tecnologica di Progetto - 8

Architettura di un PCArchitettura di un PC

Funzionamento della macchina di Von Neumann• Il processore estrae le istruzioni dalla memoria le esegue, le

istruzioni possono comportare:– operazioni di manipolazione dei dati– operazioni di trasferimento dei dati

• I trasferimenti di dati attraverso elementi funzionali diversi avvengono attraverso il bus sistema

• Le fasi di elaborazione si susseguono in modo sincrono rispetto ad un orologio di sistema

• Durante ogni intervallo di tempo l’unità di controllo (parte del processore) stabilisce la funzione da svolgere

• L’intera macchina opera in maniera sequenziale

6 ottobre 2004 - Cultura Tecnologica di Progetto - 9

Architettura di un PCArchitettura di un PC

• Hardware (HW) - componenti fisici di sistema– è composto da una serie di elementi funzionali, presenti in ogni PC:

Unità di elaborazione, memoria centrale, memoria di massa, bus di sistema, unità periferiche

• Software (SW) - programmi che vengono eseguiti dal sistema– Software di sistema (o di base): dedicato alla gestione dell’elaboratore– Software applicativo: opera al di sopra del SW di base, è dedicato alla

realizzazione di specifiche esigenze applicative

6 ottobre 2004 - Cultura Tecnologica di Progetto - 10

Architettura di un PCArchitettura di un PC

SW d’ambiente e SW applicativo

UtilizzatoreUtilizzatore

Software ApplicativoSoftware Applicativo

Compilatore / InterpreteCompilatore / Interprete

HardwareHardware

Sistema OperativoSistema OperativoDevice DriverDevice Driver

Software di ambiente

Software applicativo

6 ottobre 2004 - Cultura Tecnologica di Progetto - 11

Architettura di un PCArchitettura di un PC

Software d’ambienteIl Sistema Operativo (SO) esegue fondamentalmente due funzioni:• Macchina virtuale

L’architettura dei calcolatori, intesa come insieme di istruzioni in linguaggiomacchina, organizzazione della memoria, gestione I/O e struttura del bus, èprimitiva e di difficile utilizzo, anche per programmatori esperti. In modo particolareper tutto quello che riguarda la gestione dell’input / output. Il SO nasconde alprogrammatore tutte le problematiche inerenti alla gestione dei dispositivi fisicipresentando all’utente l’equivalente di una macchina virtuale più facile da utilizzare.

• Gestore delle risorseIl SO gestisce il corretto funzionamento di tutti i componenti schedulando l’accessoalle risorse tra i vari programmi che sono in competizione per averne il controllo:sincronizza e controlla gli accessi alle risorse interne: CPU, RAM, HD, FD …Controlla chi sta usando le risorse, gestisce la sicurezza e la priorità dei processi incoda, schedula le richieste in conflitto.

6 ottobre 2004 - Cultura Tecnologica di Progetto - 12

Architettura di un PCArchitettura di un PC

Esempio di software di sistema: il sistema operativo Windows

• WINDOWS è il sistema operativo più diffuso. E’ dotato di un’interfaccia utente molto semplice (a finestre – da cui il nome del S.O. stesso).

• E’ un sistema a finestre (differente da MS-DOS che è un sistema operativo a “riga di comando”.

• Esistono altri sistemi operativi quali Unix, Solaris, Linux, Mac OSX, ecc…

• Sono le diverse applicazioni che il sistema operativo Windows può mantenere contemporaneamente attive (Multitask) e su cui l’utente può operare in modo parallelo: lettura di un doc. da disco, download di file da Internet, esecuzioni di algoritmi di calcolo tramite Excel ecc.

6 ottobre 2004 - Cultura Tecnologica di Progetto - 13

Qualche definizione 1/2Qualche definizione 1/2

• Processo: è un programma in uso. Si può pensare al programma come la stesura (implementazione) di un algoritmo, cioè un sequenza strutturata di azioni, e al processo come la sua effettiva messa in funzione (esempio: calcolo della media di n valori)

• Memoria: mantiene traccia dei dati e dei programmi in uso. La parte del sistema operativo che si occupa della memoria è detto gestore della memoria (Memory Management System). I suoi compiti sono:– tener traccia delle parti di memoria utilizzate e di quelle libere– di fornire memoria ai processi che la richiedono e toglierla ai processi

che non ne fanno più uso– gestire gli scambi tra memoria e disco

6 ottobre 2004 - Cultura Tecnologica di Progetto - 14

Qualche definizione 2/2Qualche definizione 2/2

• La memoria spesso non è adeguata per memorizzare tutte le informazioni necessarie ai vari programmi.

• La prima limitazione della memoria è la sua dimensione. Per capiente che sia, non è mai paragonabile ai dischi rigidi. Inoltre la memoria RAM èvolatile, cioè il suo contenuto si perde col venir meno dell’alimentazione.

• L’accesso ai dati in memoria tra l’altro è permesso solo ad un processo.• Spesso è necessario memorizzare grandi quantità di dati, poterli condividere

e poterli conservare per diverso tempo (anche dopo la terminazione dei processi e dopo lo spegnimento della macchina).

• Questi problemi trovano soluzione nell’utilizzo di unità dette file.• Il file è un meccanismo di astrazione, che fornisce un modo per salvare

delle informazioni e per poterle ritrovare in seguito. • I file sono gestiti da una parte del sistema operativo detto file system.

6 ottobre 2004 - Cultura Tecnologica di Progetto - 15

Architettura di un PCArchitettura di un PC

Tipologie di calcolatori

• Handheld computer (PDA):– di dimensioni molto limitate– usualmente privi di memorie di massa

• Personal computer– Dotati di monitor e tastiera separati dall’unità centrale– Dotati di diversi dispositivi di memoria di massa interni o esterni

• Notebook– Versione portatile del personal computer– Spesso dotati di caratteristiche inferiori per potenza di calcolo e memoria

• Workstation– Versione “potente” dei personal computer– Dotate di monitor di dimensioni superiori– Per lo più orientate alle applicazioni grafiche o di CAD– Spesso condivise da più utenti (non necessariamente in contemporanea)

• Mainframe– Calcolatori di elevata potenza di calcolo e memorizzazione– Orientati all’elaborazione di dati per l’intera azienda– Condivisibili da più utenti in contemporanea

6 ottobre 2004 - Cultura Tecnologica di Progetto - 16

Architettura di un PCArchitettura di un PC

6 ottobre 2004 - Cultura Tecnologica di Progetto - 17

Architettura di un PCArchitettura di un PC

6 ottobre 2004 - Cultura Tecnologica di Progetto - 18

Architettura di un PCArchitettura di un PC

Alimentatore

• È un contenitore metallico avvitato una estremità dello chassis, con alcuni fili colorati che fuoriescono.

• Il computer è un dispositivo elettrico che ha bisogno di energia per poter funzionare. La corrente elettrica alternata fornita dall’ENEL ha una tensione di 220 volt. L’alimentatore svolge la funzione di ricevere la corrente alternata a 220 volt e trasformarla in corrente continua nel voltaggio richiesto dalle varie componenti del PC: 12 e 5 volt.

• La corrente continua non cambia da negativo a positivo come l’alternata ma fornisce un voltaggio costante a polaritàfissa.

• L’alimentatore agisce anche in modo di limitare le irregolarità del flusso di corrente

6 ottobre 2004 - Cultura Tecnologica di Progetto - 19

Architettura di un PCArchitettura di un PC

Scheda madre

• La scheda madre (motherboard) èchiamata anche piastra madre o scheda di sistema ed è l’elemento centrale del computer.

• Si tratta di un grande circuito stampato sul quale trovano posto i componenti elettronici principali: i chip di silicio su cui si fonda il funzionamento del PC.

• Sulla MB si installano tutti gli altri componenti, tra cui la scheda grafica, la scheda di rete, il processore, la RAM ecc.

• Nell’immagine sono riconoscibili lo slot 1, l’alloggiamento delle DIMM e delle schede di espansione (ISA, PCI, AGP).

6 ottobre 2004 - Cultura Tecnologica di Progetto - 20

Architettura di un PCArchitettura di un PC

Microprocessore (CPU)

• La CPU, Central Processing Unit, èl’elemento dedicato all’esecuzione dei programmi: si occupa di eseguire tutte le operazioni richieste dal sistema operativo e dal software applicativo.

• Per poter svolgere il suo compito deve essere in grado di:

– leggere e scrivere i dati nella memoria del computer (RAM)

– riconoscere ed eseguire i comandi e le istruzioni fornite dai programmi

– indicare alle altre componenti del computer cosa fare, in modo da organizzare e sincronizzare le varie operazioni da svolgere

6 ottobre 2004 - Cultura Tecnologica di Progetto - 21

Architettura di un PCArchitettura di un PC

Microprocessore (CPU)

I sistemi attualmente in uso sono dotati di processore Intel Pentium.In questi modelli il processore non è saldato in modo permanente sulla piastramadre (come avveniva una volta) ma viene alloggiato su un particolareconnettore che per i Pentium tradizionali (e per gli altri processori, quelliprodotti dalla concorrenza, quali AMD o Cyrix) viene chiamato Socket. Lapiastra madre è infatti progettata per supportare vari tipi di CPU a velocitàdifferenti. In questo modo è più facile aggiornare un PC, sostituendo unprocessore installato con un altro più veloce recente.

6 ottobre 2004 - Cultura Tecnologica di Progetto - 22

Architettura di un PCArchitettura di un PC

PC

Registro istruzione corrente

Registro interruzioni

Registro di stato

A

B

R0

Rn

ALU

Unità di controllo (UC)

Registro dati Registro indirizzi Clock

Segnali di controllo

6 ottobre 2004 - Cultura Tecnologica di Progetto - 23

Architettura di un PCArchitettura di un PC

CPU - Central Processing Unit Schema logico

• Unità di controllo (UC)– decodifica le istruzioni e controlla funzionamento del sistema attraverso opportuni

segnali• Unità aritmetico logica (ALU)

– esegue le operazioni aritmetiche• Clock

– sincronizza il funzionamento dei diversi elementi• Bus della CPU

– collega i diversi elementi della CPU (da non confondere con il bus di sistema)• Program Counter (PC)

– mantiene l’indirizzo della prossima istruzione da eseguire• Registro istruzione corrente

– mantiene l’istruzione attualmente fase di esecuzione

6 ottobre 2004 - Cultura Tecnologica di Progetto - 24

Architettura di un PCArchitettura di un PC

CPU - Central Processing UnitSchema logico

• Registro delle interruzioni– indica l’avvenuta richiesta di una interruzione

• Registro di stato– indica lo stato dell’ultima istruzione eseguita dalla ALU

• Registro indirizzi– contiene l’indirizzo del prossimo dato da leggere/scrivere in memoria

• Registro dati– contiene l’ultimo dato letto o il prossimo dato da scrivere in memoria

• Registri A e B– registri contenenti i dati su cui opera la ALU

• Registri R0, ..., Rn– registri di uso generale

6 ottobre 2004 - Cultura Tecnologica di Progetto - 25

Architettura di un PCArchitettura di un PC

CPU - Central Processing Unit

• Esecuzione di un programma • L’esecuzione di un programma ha inizio con il caricamento della

locazione della prima istruzione nel PC • La UC manda un segnale di controllo affinché il contenuto del PC

sia spostato nel registro degli indirizzi • Viene inviato un segnale di controllo (read) alla memoria per

effettuare la lettura del dato posto all’indirizzo specificato nel registro indirizzi

• In conseguenza del passo precedente il dato viene reso disponibile nel registro dati (la UC attende fino all’arrivo del segnale MFC -memory function completed)

6 ottobre 2004 - Cultura Tecnologica di Progetto - 26

Architettura di un PCArchitettura di un PC

Memoria principale: RAM • Random Access Memory (RAM), detta

anche memoria principale o memoria volatile perché mantiene le informazioni solo fino a quando il PC èacceso.

• E’ fisicamente il posto dove sono conservate tutte le informazioni su cui si sta lavorando.

• Serve per contenere i dati elaborati dai programmi e le istruzioni che costituiscono i programmi stessi. Solo la CPU è in grado di distinguere se le istruzioni memorizzate indicano un’operazione da svolgere, oppure sono dati su cui il programma deve agire.

6 ottobre 2004 - Cultura Tecnologica di Progetto - 27

Architettura di un PCArchitettura di un PC

Memoria non volatile: ROM • ROM (Read Only Memory: memoria a sola lettura), non riscrivibile

dal sistema. La memoria ROM è scritta dal produttore e non può essere modificata dall'utilizzatore. I livelli 1 e 0 che costituiscono i dati binari sono "incisi" durante il processo di produzione del componente e non possono essere cambiati.

6 ottobre 2004 - Cultura Tecnologica di Progetto - 28

Architettura di un PCArchitettura di un PC

Memoria Cache • La memoria Cache è una memoria RAM che il microprocessore può

accedere in modo più veloce rispetto alla memoria di lavoro principale RAM

• Il microprocessore, nel suo lavoro di elaborazione dei dati, accede prima alla memoria Cache e se trova i dati necessari (perché giàutilizzati in precedenza) non deve effettuare la lettura nella RAM (più lenta)

• Fisicamente la Cache è una memoria ad alta velocità, costruita con RAM Statiche (SRAM) anziché le più lente ed economiche RAM Dinamiche (DRAM), usate per la memoria principale

• SI parla anche di memoria cache di primo livello (L1) e secondo livello (L2): la cache di primo livello è incorporata nello stesso chip del microprocessore e quindi è ancora più veloce

6 ottobre 2004 - Cultura Tecnologica di Progetto - 29

Architettura di un PCArchitettura di un PC

Bus: Dati• Il BUS collega i vari componenti interni

del PC in modo da permettere che i dati vengano inviati da un componente all’altro.

• Sulla piastra madre del PC non c’è una parte precisa che individui il BUS perché questo è un insieme di circuiti elettrici detti tracce, stampate sulla superficie della MB. Inoltre il BUS include anche diversi microchip (quelli indicati in figura come controller) e gli alloggiamenti (slot) in cui si inseriscono le schede di espansione.

• Sul BUS sono previste degli slot di espansione in modo che aggiungendo una nuova scheda anche in un secondo tempo rispetto all’istante in cui si assembla il PC, sia permessa la comunicazione con le altri componenti, interne ed esterne.

6 ottobre 2004 - Cultura Tecnologica di Progetto - 30

Architettura di un PCArchitettura di un PC

Controller• Il Controller è un dispositivo elettronico dotato di

microprocessore e di un interfaccia di comunicazione che si occupa del controllo del corretto funzionamento della trasmissione dei dati tra la periferica e il resto del personal (ad esempio tra le memorie di massa - disco fisso, CD Rom - e la scheda madre)

• All’interno dei cavi che collegano fisicamente un controller e il disco viaggiano segnali elettrici che rappresentano i dati e i comandi di lettura e scrittura

– Esistono diversi tipi di unità di controller, ciascuno caratterizzato da prestazioni e funzioni differenti

– Nei computer di vecchia generazione (386 e 486) sono generalmente installati controller di tipo IDE, montati su una piccola scheda di espansione

– Sui computer più recenti (dai Pentium in poi) sono presenti controller del tipo Enhanced IDE, integrati direttamente sulla scheda madre

– Esistono anche controller di tipo SCSI utilizzati sugli HD dei server o delle workstation grafiche

6 ottobre 2004 - Cultura Tecnologica di Progetto - 31

HD HD -- Hard DiskHard Disk

• Il disco rigido è il componente dove vengono memorizzate in modo permanente le informazioni elaborate. Le informazioni sono magnetizzate sulla superficie del disco e pertanto rimangono memorizzate anche se viene a mancare la corrente.

• Sull’Hard Disk si trova il Sistema Operativo, il Software Applicativo e i file dati.

• Fisicamente è composto da piùdischi rivestiti da una sostanza magnetica e da più testine di lettura che contemporaneamente leggono i dati dai dischi in rotazione.

6 ottobre 2004 - Cultura Tecnologica di Progetto - 32

Acceleratore grafico (scheda video)Acceleratore grafico (scheda video)• La scheda video originariamente era del tipo CGA

- Computer Graphic Adapter cioè era un adattatore grafico, capace di rappresentare sullo schermo solo caratteri dalla forma e dalle dimensioni predefinite (cioè non in grado di elaborare autonomamente le informazioni grafiche) e con un solo colore.

• Nel tempo questo tipo di schede sono state sostituite dalle VGA (Video Graphic Adapter) capaci di gestire 16 colori e una risoluzione di 640x480, poi dalle SVGA, 256 colori e 800x600 fino ad arrivare agli acceleratori grafici moderni, capaci di gestire 16,7 milioni di colori con risoluzioni elevatissime 2048x1024 e oltre.