Fondamenti di Informatica - Università Degli Studi di Ferrara - Lez. 01 - Concetti Hardware e Software - Unife
←
→
Trascrizione del contenuto della pagina
Se il tuo browser non visualizza correttamente la pagina, ti preghiamo di leggere il contenuto della pagina quaggiù
Università Degli Studi di Ferrara Corso di Laurea in Scienze della Comunicazione - A.A. 2017 - 2018 Fondamenti di Informatica Lez. 01 - Concetti Hardware e Software Fondamenti di Informatica - Docente: Giacomo Piva - giacomo.piva@unife.it
L’informatica Non è la scienza che "crea" o "studia" i computer. È la scienza applicata che si occupa del trattamento dell'informazione mediante procedure automatizzate. .
Il Calcolatore Il calcolatore (o elaboratore), è una macchina utilizzata per: • Collezionare; • Analizzare; • Elaborare. In maniera precisa e (si spera) veloce, grandi quantità di informazioni per risolvere problemi di tipo deterministico.
Il Calcolatore Il calcolatore, è uno strumento in grado di: • Trasmettere; • Trasformare; • Conservare. Solamente informazioni opportunamente codificate in maniera comprensibile dalla macchina.
Il Calcolatore Costituito da 2 macro-componenti: • Hardware: (componenti elettroniche e meccaniche); • Software: (programmi che sfruttano l’ hardware per eseguire calcoli e operazioni).
Hardware In poche parole, l’hardware è tutto ciò che di un computer possiamo “toccare”: • Monitor • Tastiera • Mouse
Hardware Anche parti più “piccole” e “nascoste”: • Processore (CPU) • Memoria (RAM) • Disco rigido (C:)
Hardware L’architettura hardware di un calcolatore moderno (e reale) è molto complessa ed è materia di studio dell’ingegneria elettronica. Noi vedremo l’architettura di Von Neumann (matematico ungherese) come modello semplificato di un moderno calcolatore.
L’uomo e la macchina Sensori Display (output) Macchina Risponditori Controls (input) Uomo Interfaccia Computer Dal corso di Tecnologie Web dell’Università di Ferrara A.A. 2016/2017
Le Periferiche Per rendere possibile l’interazione fa l’uomo e la macchina, sono quindi necessari dei dispositivi in grado di essere manipolati dall’uomo. Questi dispositivi prendono il nome di Periferiche e possono essere predisposte per l’immissione dei dati all’interno del computer (controllers) o per l’uscita dei dati dal computer (display).
Le Periferiche Input Output
Dispositivi di Input Altri dispositivi di input: •Microfono •Lettori di codici a barre •Web cam Qualunque dispositivo hardware in grado di portare all’interno del computer delle informazioni.
Dispositivi di Output Altri dispositivi di output: •Casse acustiche •Stampanti 3D •Proiettori Qualunque dispositivo hardware in grado di portare all’esterno del computer delle informazioni.
Informazioni e Dati Le informazioni, una volta codificate e rese comprensibili al computer, prendono il nome di Dati. I Dati sono gestiti dal calcolatore come insieme di Byte Codifica Decodifica Informazioni Dati Informazioni
John Von Neumann Budapest, 28 Dicembre 1903 – Washington, 8 Febbraio 1957 Matematico, Fisico e Informatico. L’architettura hardware di Von Neumann è stata pensata negli anni ‘40 ed oggi è ancora l’architettura sulla quale si basa la maggior parte dei computer moderni.
Macchina di Von Neumann I calcolatori moderni sono ancora basati sull’architettura della macchina di V. N. che è composta da 4 componenti: • Dati (ingresso e uscita); • Programma; • Memoria; • Agente.
Macchina di Von Neumann Memoria input CU ALU output Agente (CPU) Dati
CPU - Principali funzioni La CPU a sua volta è composta da due componenti: • CU: Controller Unit Controllo del flusso delle istruzioni • ALU: Arithmetic Logic Unit Esegue le istruzioni Aritmetiche e logiche
Memoria I dati, all’interno del calcolatore devono essere conservati in memoria. Esistono più tipi di memoria: • Dischi rigidi (Persistente) • Memoria RAM (Principale) • Cache (Riservata alla CPU) • Registri (Riservata alla CPU)
Memoria La principale distinzione che si può fare è fra: • Memoria Volatile • Memoria Persistente
Memoria Volatile Memoria Principale • Capacità ridotte (qualche GB) • Prestazioni elevate (poche decine di ns) ns = nano-secondi => 10-9 secondi => 1 miliardesimo di secondo
Memoria Volatile Memoria Riservata • Capacità ridotte (da alcuni KB fino a 1 MB) • Prestazioni molto elevate (pochissimi ns)
Memoria Persistente • Elevate capacità (TB) • Prestazioni non elevate (ms) Le prestazioni della memoria persistente, sono oggi il vero “collo di bottiglia“ delle prestazioni dei calcolatori
Memoria Indirizzo Memoria 0 1 2 Dimensione 3 della memoria ... Ampiezza della memoria
Unità di misura L’unità di misura della memoria è il Byte 1 Byte è formato da 8 bit 1 bit è un valore binario (0,1) 1 bit 1 0 1 1 nibble (4 bit) 1 0 0 0 1 1 0 1 Byte (8 bit) 1 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 Word (16bit)
Gerarchia della memoria • Registri della CPU: qualche KB; • Cache: da 32KB a 1024KB; Minore tempo Maggiore capacità di accesso • Memoria principale: diversi GB; • Dischi fissi: qualche TB.
Riassumendo Il Calcolatore attraverso i dispositivi di Input (Periferiche) raccoglie le informazioni e le trasforma in Dati per conservarle nella Memoria. Dati Informazioni Memoria
Riassumendo Il Calcolatore, recupera dalla Memoria i Dati per restituire le informazioni attraverso i dispositivi di Output Dati Memoria Informazioni
Software Il Software si divide in: • Software di Base (OS); • Software Applicativo (dipendente dal OS).
Sistema Operativo Il sistema operativo è il programma (cioè un software) responsabile del controllo e della gestione dei componenti hardware che costituiscono un computer e dei programmi che su di esso vengono eseguiti. Ha anche il compito di permettere all'uomo di interagire con la macchina.
Sistema Operativo In sintesi il S.O. ha come compiti principali: • Avvio del computer • Gestione del processore • Gestione della memoria • Gestione dei dispositivi di input/output • Interazione con l’utente
Sistema Operativo In passato i S.O. avevano una interfaccia detta “A linea di comando” o commandline
Sistema Operativo A partire dagli anni ’80 (1984 Apple “Lisa”) i computer hanno una interfaccia più “user friendly”
Sistema Operativo •Windows •macOS •Linux (Ubuntu, Fedora, CentOS …)
Programma È l’insieme delle istruzioni definite dal programmatore. È un’entità statica tipicamente memorizzata su un supporto di archiviazione (disco). Scritto con un linguaggio di programmazione, viene eseguito tramite l’ausilio del S.O.
Programma Si possono suddividere in 2 categorie: Programmi interattivi: programmi che durante la loro esecuzione dialogano con l’utente attraverso una interfaccia; Programmi batch: programmi che non hanno interazione con l’utente, non hanno una interfaccia per l’utente.
Facciamo un esempio Il sistema operativo è il responsabile della gestione del calcolatore. Ad esempio, l’utente può richiede al sistema operativo di eseguire un programma (facendo “doppio click” sull’icona corrispondente). A questo punto, il sistema operativo, svolge le seguenti attività: 1) Individua il programma all’interno del disco; 2) Copia il codice del programma nella memoria principale 3) Avvia l’esecuzione del programma (compare la finestra sul nostro schermo)
I Processi Con il termine processo, si indica un programma in esecuzione, cioè, un’entità in continuo mutamento. Nei sistemi attuali, più copie dello stesso programma si possono eseguire contemporaneamente, quindi, una definizione più formale di processo è: Una copia di un programma in esecuzione sul calcolatore più i dati necessari alla sua esecuzione.
Domande?
Quali nuovi termini possiamo aggiungere al nostro dizionario?
Puoi anche leggere