Informatica: scienza dell'informazione
Informatica: scienza dell’informazione e dell’elaborazione rigorosa, quindi potenzialmente automatica, dell’informazione. Il modo in cui l’informazione viene strutturata ed elaborata. Non è direttamente legata al calcolatore, questo è solo uno strumento di cui si avvale.
Il personal computer: architettura e funzionamento
Il PC (personal computer) elabora informazioni, opera attraverso hardware e software.
Hardware e software
Hardware: la parte fisica, elettronica, che dà luogo al funzionamento.
Software: programmi che il calcolatore elabora.
- Di base/di sistema: opera all’interno dell’altro. Gli permette di prendere vita, funzionare. Realizza le specifiche esigenze applicative degli utenti (sistema operativo).
- Applicativo (o d’ambiente): dedicato alla realizzazione di specifiche esigenze (AI, Ps, Id).
Il sistema operativo (SO)
Il sistema operativo (SO) svolge fondamentalmente due compiti:
- Macchina virtuale: l’architettura dei calcolatori (insieme di istruzioni in linguaggio macchina, organizzazione memoria, gestione input/output, bus) è primitiva e di difficile utilizzo anche per un programmatore. Il SO nasconde al programmatore tutte queste problematiche, presentando all’utente una macchina virtuale più facile da utilizzare.
- Gestione delle risorse: gestisce il corretto funzionamento di tutti i componenti schedulando l’accesso alle risorse tra i vari programmi che sono in competizione per avere il controllo (RAM, CPU), controlla chi le sta usando e gestisce sicurezza e priorità.
Il modello di Von Neumann
Tutte le diverse tipologie di calcolatori sono accomunate dalla medesima architettura logica schematizzata da questo modello. Abbiamo tre componenti fondamentali:
- Memoria centrale: conserva i dati da elaborare e la descrizione formale dei passi con cui i dati saranno elaborati, nonché i programmi.
- Processor (CPU): esegue i compiti, fa effettivamente il lavoro eseguendo gli algoritmi.
- Bus di sistema: canale di comunicazione tra i due (i dati elaborati dal processore dovranno essere conservati in memoria e viceversa).
Macchina sincrona
Esiste una fonte di sincronizzazione che scandisce il tempo, in modo che tutti i processi avvengano in maniera coerente (come in un'orchestra, se ognuno suonasse a suo tempo non avrebbe senso). Durante ogni intervallo di tempo l'unità di controllo (parte del processore) stabilisce la funzione da svolgere successivamente. Non vengono fatte due cose contemporaneamente. La maggior parte delle macchine oggi non è sincrona, ma abbiamo sempre un microprocessore, una memoria, delle connessioni fisiche con il mondo esterno e un bus.
Componenti principali del computer
- Cabinet: detto anche Chassis o Case, è il "contenitore" del computer.
- Alimentatore: sorgente di elettricità, converte l’energia elettrica esterna nei formati che servono al calcolatore. La trasforma al voltaggio riceve la corrente a 220 volt richiesto dalle varie componenti (hard disk...).
- Scheda madre: vi ci alloggiano le componenti principali del computer (scheda grafica, RAM, processore, uscite periferiche). Più la macchina è piccola, più tutte le componenti sono saldate, compatte alla motherboard.
Microprocessore
Il microprocessore (CPU) esegue le operazioni, gli algoritmi e quindi i programmi, controlla l’intero funzionamento della macchina. Deve poter comunicare con la memoria centrale e le periferiche. Deve:
- Leggere e scrivere dati nella memoria RAM
- Riconoscere ed eseguire i comandi e le istruzioni dei programmi
- Indicare alle altre componenti del computer cosa fare
Come è fatto?
- Unità di controllo: decodifica le istruzioni e controlla il funzionamento del sistema.
- Unità aritmetico logica (ALU): esegue le operazioni aritmetiche.
- Clock: sincronizza il funzionamento dei diversi elementi (come fosse un metronomo).
- Bus della CPU: collega i diversi elementi della CPU.
- Registro delle interruzioni: interazione con il mondo esterno. Coordina CPU e periferiche, comunica che è cambiato qualcosa (l’utente ha premuto un tasto ad esempio). Prima di passare all’operazione successiva la CPU controlla qui.
- Registro di stato: indica lo stato dell’ultima istruzione eseguita dall'ALU (che risultati ha dato?). Sulla base di questo registro si stabilisce la prossima azione da eseguire.
- Registro indirizzo: posizione del dato che mi serve.
- Registro dati: contiene l’ultimo dato letto o il prossimo da scrivere in memoria (da qui la ALU prende i numeri su cui operare). È un sottoinsieme delle informazioni che l’elaboratore usa, prese dalla memoria centrale.
- Registro istruzione corrente: contiene l’informazione che la ALU sta usando.
- PC programme center: indirizzo prossima istruzione da eseguire.
I microprocessori moderni sono multicore, il microprocessore del PC è dunque composto da molti microprocessori interni (2, 4 o 8) indipendenti, ognuno può fare una cosa diversa. Hyperthreading: Intel indica così la possibilità dei propri processori (ogni core) di eseguire più istruzioni in parallelo.
Memoria
In un calcolatore ci sono due tipi di memoria:
- Memoria di massa (Hard disk)
- Centrale: RAM (Random Access Memory), il tempo di accesso a un’informazione è indipendente dalla sua posizione (non come nel VHS per esempio). Contiene i dati elaborati dai programmi e le istruzioni che li costituiscono (solo la CPU distingue tra).