Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Introduzione all'Informatica: Esercizi e Domande a Risposta Multipla, Sintesi del corso di Elementi di Informatica

riassunti e appunti completi di informatica per la comunicazione

Tipologia: Sintesi del corso

2019/2020

Caricato il 11/09/2020

lorenzo.colo
lorenzo.colo 🇮🇹

3 documenti

1 / 35

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
INFORMATICA PER LA COMUNICAZIONE
Modalità d’esame: test a risposta multipla
-10 domande a risposta multipla (2 punti per domanda)
-2 domande a risposta aperta (6 punti per domanda) È necessario rispondere correttamente
ad almeno 6 domande a risposta multipla
-Il punteggio complessivo deve essere almeno 18
Informatica (da informatique) disciplina che si occupa dell’elaborazione automatica di simboli
(informazione)
Vantaggi elaboratori automatici:
-Tempi di elaborazione: tempi molto veloci rispetto uomo
-Affidabilità: basse probabilità di errore
-Elaborazione operazioni meccaniche: effettua solo calcoli lasciano parte ideativa all’uomo
Information & Communication Technology (ICT): disciplina nata dalla convergenza tra
-Tecnologia dell’informazione
-Telecomunicazioni
L’elaborazione dell’informazione prevede le seguenti fasi:
1. Dati in ingresso (input) invio
2. Fase di elaborazione
3. Dati in uscita (output) arrivo
Possono essere presenti altre fasi:
-Memorizzazione
-Trasmissione
Nell’800 vennero compiuti diversi passi importanti.
-Progettazione del primo elaboratore con unità di memoria e unità di calcolo (C. Babbage)
-Scrittura dei primi programmi (A. King Lovelace)
-G. Boole inventò l’algebra booleana
Nel ‘900 vennero realizzati i primi modelli funzionanti:
- A. Turing (1936): modello teorico noto come macchina di Turing (The imitation game)
- K. Zuse 1941: Z1
Sistemi automatici di elaborazione
-Anni ’50: introduzione di transistor
-Anni ’60: produzione dei primi microprocessori, basati su circuiti integrati
-Anni ’70: personal computer
-Anni ’80: interfaccia grafica
Alan Turing:
-Alan Turing (1912-1954), matematico inglese, diede un contributo fondamentale alla nascita
dell’informatica
-Turing è considerato il padre dell’informatica
Macchina di turing
-Dispositivo per l’elaborazione automatica dell’informazione
-Modello teorico di elaborazione automatica
-Il funzionamento imita un uomo che svolge calcoli
La macchina di Turing è costituita da:
-Un alfabeto di simboli
-Un nastro diviso in celle: ogni cella può contenere un simbolo dell’alfabeto
-Una unità di controllo: può muoversi lungo il nastro, leggere/scrivere nella cella corrente
-Insiemi di stati, tra cui uno stato iniziale e uno stato finale, associati all’unità di controllo
(registro di stati)
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23

Anteprima parziale del testo

Scarica Introduzione all'Informatica: Esercizi e Domande a Risposta Multipla e più Sintesi del corso in PDF di Elementi di Informatica solo su Docsity!

INFORMATICA PER LA COMUNICAZIONE

Modalità d’esame: test a risposta multipla

- 10 domande a risposta multipla (2 punti per domanda) - 2 domande a risposta aperta (6 punti per domanda)  È necessario rispondere correttamente ad almeno 6 domande a risposta multipla - Il punteggio complessivo deve essere almeno 18 Informatica (da informatique) disciplina che si occupa dell’elaborazione automatica di simboli (informazione) Vantaggi elaboratori automatici: - Tempi di elaborazione: tempi molto veloci rispetto uomo - Affidabilità: basse probabilità di errore - Elaborazione operazioni meccaniche: effettua solo calcoli lasciano parte ideativa all’uomo Information & Communication Technology (ICT): disciplina nata dalla convergenza tra - Tecnologia dell’informazione - Telecomunicazioni L’elaborazione dell’informazione prevede le seguenti fasi:

  1. Dati in ingresso (input) invio
  2. Fase di elaborazione
  3. Dati in uscita (output) arrivo Possono essere presenti altre fasi: - Memorizzazione - Trasmissione Nell’800 vennero compiuti diversi passi importanti. - Progettazione del primo elaboratore con unità di memoria e unità di calcolo (C. Babbage) - Scrittura dei primi programmi (A. King Lovelace) - G. Boole inventò l’algebra booleana Nel ‘900 vennero realizzati i primi modelli funzionanti:
  • A. Turing (1936): modello teorico noto come macchina di Turing (The imitation game)
  • K. Zuse 1941: Z

Sistemi automatici di elaborazione

- Anni ’50: introduzione di transistor - Anni ’60: produzione dei primi microprocessori, basati su circuiti integrati - Anni ’70: personal computer - Anni ’80: interfaccia grafica

Alan Turing:

- Alan Turing (1912-1954), matematico inglese, diede un contributo fondamentale alla nascita dell’informatica - Turing è considerato il padre dell’informatica

Macchina di turing

- Dispositivo per l’elaborazione automatica dell’informazione - Modello teorico di elaborazione automatica - Il funzionamento imita un uomo che svolge calcoli La macchina di Turing è costituita da: - Un alfabeto di simboli - Un nastro diviso in celle: ogni cella può contenere un simbolo dell’alfabeto - Una unità di controllo : può muoversi lungo il nastro, leggere/scrivere nella cella corrente - Insiemi di stati , tra cui uno stato iniziale e uno stato finale, associati all’unità di controllo (registro di stati)

- Tabella di azioni La macchina con - Alfabeto A = { 0,1, þ} - Stato dell’unità di controllo: a Il funzionamento della macchina di Turing è guidato da un insieme di regole ; in base a: - Stato della testina - Simbolo letto La regola indica: - Il simbolo da scrivere - Lo stato della testina - Il movimento della testina In quale periodo iniziò la commercializzazione di massa delle Macchine di Turing? - Anni ' - Anni ' - Anni ' - Anni ' - Mai

MACCHINA DI TURING UNIVERSALE

- E’ possibile costruire una macchina universale (macchina di Turing universale ): una macchina che imita il comportamento di qualunque macchina di Turing - Opportuna codifica delle istruzioni

TEST DI CHURCH TURING

- Tesi di Church - Turing: l’insieme dei problemi risolvibili tramite metodi meccanici equivale all’insieme dei problemi risolvibili dalla macchina di Turing - Calcolatore in grado di simulare il comportamento di una macchina di Turing universale: Turing Equivalente. Non viene mai realizzata concretamente la macchina di turing perché è presente questo nastro che non permette di andare a ad una cella all’altra velocemente, dato che si devono attraversare tutte le celle e non è comodo.

MACCHINE PENSIERO, IA

- Turing oltre al modello per l’elaborazione automatica si pone una domanda «Le macchine sono in grado di pensare?» - Per illustrare il problema introduce il gioco dell’imitazione

GIOCO DELL’IMITAZIONE

- La donna deve rispondere da donna

- i linguaggi di programmazione di alto livello definiscono operazioni + complesse delle istruzioni primitive

  1. compilatore: traduttore da linguaggio di alto livello in linguaggio macchina ARCHITETTURE DI VON NEUMANN I computer sono dei sistemi di elaborazione: - costituiti da molte componenti - funzionamento coordinato delle divere componenti - architetture di riferimento generale: architettura di Von Neumann
  2. Progetto EDVAC (1994) Caratteristiche dell’architettura di Von Neumann - Descrizione di un elaboratore universale - Elaboratori costruiti secondo questa architettura: turing equivalente - Dati e istruzioni sono memorizzati nello stesso dispositivo - Utilizzo dell’aritmetica binaria - Distinzione tra memorizzazione ed **elaborazione Componenti dell’architettura di Von Neumann
  • Processore** (cpu, central processing unit): funzioni di elaborazione - Memoria: 1. Divisa in celle, ognuna associata ad un indirizzo univoco. 2. Contiene istruzioni e dati da elaborare - Interfaccia input/output: interfaccia con esterno - Bus: canale di comunicazione - Orologio di sistema: coordina le varie fasi Orologio di sistema (clock) - Controlla la velocità delle operazioni del computer - Invia una sequenza costante di impulsi alla cpu - Ad ogni impulso -> ciclo di elaborazione ( ciclo macchina) maggiore la velocità della cpu, maggiore è l’elaborazione dei dati. Bus di sistema: comunicazione tra le diverse componenti Funzionalmente diviso in 3 parti: - Bus dati -> dati da elaborare - Bus indirizzi -> indirizzi delle celle di memoria per la lettura / scrittura di dati - Bus di controllo -> istruzioni per il coordinamento delle componenti Collo di bottiglia di Von Neumann La velocità di elaborazione di una CPU è superiore alla velocità di trasferimento del bus - Tempo di attesa del trasferimento di dati - Spreco di tempo di elaborazione della CPU

ARCHITETTURA DI UN ELABORATORE

Componenti principali di un moderno elaboratore basato sull’architettura di Von Neumann

- Cpu - Memoria primaria - Memoria secondaria - Periferiche MEMORIA CENTRALE (memoria ram) - Accesso alla memoria centrale : casuale: si accede in modo diretto ad una cella tramite l’indirizzo - Tempo di accesso costante 1. Ogni cella richiede lo stesso tempo

ACCESSO AI DATI

Oltre all’accesso diretto ai dati:

- Accesso sequenziale : legato ad una sequenza di operazioni 1. Sequenza di accesso predefinita 2. Tempo di accesso variabile 3. Tipico dei nastri - Accesso misto: via di mezzo tra sequenziale e misto 1. Serie di accessi diretti seguiti da una ricerca sequenziale 2. Tempo di accesso varia a seconda di dove di trova il dato 3. Utilizzo di dischi - Accesso associativo : accesso particolare legato a memoria specifica. 1. Simile all’accesso diretto 2. Dipendente dal valore che si sta cercando 3. Tempo di accesso costante per ogni cella 4. Usato nelle memorie cache MEMORIA SECONDARIA Memoria secondaria: (memoria secondaria o di massa) - Memoria principale e registri: volatilità, capacità limitata - Necessita di una memoria

  1. Permanente
  2. Di grande capacità
  3. Modificabile Capacità di memorizzazione dei dispositivi di memoria: - memoria centrale: attualmente arriva ad alcuni GB - memoria secondaria: Centinaia di GB o TB Caratteristiche dispositivi di memorizzazione di massa: - persistenza di dati (rimangono anche senza alimentazione) - tempo di accesso maggiore rispetto alla RAM - minor costo per bit - dispositivi fissi/ rimovibili (hard disk, usb) Dischi fissi Memorie magnetiche Dischi floppy Nastri magnetici Dischi ottici. (CD) Memorie ottiche Memorie flash Memorie elettroniche MEMORIE MAGNETICHE - materiali ferromagnetici influenzati da un campo magnetico esterno: STATO DI MAGNETIZZAZIONE

3. Strato protettivo Superficie del substrato - singola traccia a spirale - traccia divisa in zone microscopiche

  1. pit: fossa
  2. land: pianeggiante - luce laser percorre la traccia - riflessa in modo differente a seconda del dato codificato. Tipi di supporto disponibili - sola lettura (Read Only Memory: ROM) - scrivibili (Write Once Read Many: WORM) - riscrivibili (Rewritable : RW) la scrittura dei dati richiede l’utilizzo di un dispositivo per la scrittura: masterizzazione Supporti differenti per capacità di memorizzazione - Compact Disk (CD): 700 MB - Digitale versatile Disk (DVD): fino a 8,5 – 17 GB - Blue Ray: fino a 50 GB Differenti per - Grandezza pit e land MEMORIE FLASH Memorie elettroniche flash - Programmabili (riscrivibili): numero limitato di operazioni di scrittura/cancellazione - Non volatili - Memory card - Drive usb: memoria flash e interfaccia USB - Drive a stato solido (SSD) sono memorie elettronico come memorie di massa. GERARCHIE DI MEMORIA Elaboratore ha diversi tipi di memoria organizzate per: - velocizzare le prestazioni - Ridurre i costi I diversi tipi di memoria sono organizzati in gerarchia: - Dalla + veloce, meno capiente - Alla + lenta, + capiente
  3. Registri CPU
  4. Cache di livello 1,2,
  5. Memoria Centrale
  6. Memoria di Massa Consideriamo un dispositivo di memoria M - Una cache per M è un dispositivo
  7. Con capacità inferiore rispetto a M
  8. Maggiore velocità rispetto a M - Nell’accesso ai dati di M
  9. Copia di una parte dei dati nella cache - Nell’organizzazione della gerarchia: Principio di località Due forme del Principio di località - Località spaziale: se un programma accede ad una cella di memoria: accesso alle celle vicine - Località temporale: se un programma accede ad una cella: nuovo accesso alla cella

ESEMPIO 1

Località temporale: M contiene 8 squadre. La cache della memoria principale è più piccola e non può contenere tutte le celle di M infatti è fatta solo da 3 celle. Nella cache è riportato il tempo di accesso. Nuova richiesta di lettura: il processore vuole leggere il dato 8. Va a leggere la cache ma non è contenuto il valore della cella 8 allora deve leggerla in memoria M. Non basta, per il principio di località temporale probabilmente la richiederemo di nuovo, perciò effettuiamo l’aggiornamento della memoria cache spostando il dato della cella 8 facendo posto nella cache, cancellando un dato, quello letto più tempo fa ESEMPIO 2

Periferiche Output:Monitor: quando visualizziamo un’immagine sull’elaboratore noi visualizziamo la rappresentazione che il monitor dà. Questa immagine è costruita con la tecnica della discretizzazione. L’immagine che vogliamo vedere è continua quindi ha una precisione finita e un numero di colori infiniti. Utilizza quindi dei punti piccoli con cui le immagini vengono discretizzate (costruite rappresentando via via i singoli punti). Questi punti sono chiamati pixel (picture element), elemento che serve per la costruzione complessiva dell’immagine) Tecnologia LCD (cristalli liquidi): il singolo pixel è suddiviso in altre sotto parti (sub pixel) e ogni sub pixel è associato ad uno dei 3 clori fondamentali, rosso verde e blu. Rappresentazione dei colori RGB (red green blue). Il colore di ogni pixel viene deciso a seconda degli stati di colore che decidiamo e ognuno di questi sub pixel può assumere 256 gradazioni. Si parla di profondità di colore quando ci riferiamo al numero di colori che quel determinato monitor è in grado di rappresentare. Risoluzione: Qualità con cui possiamo rappresentare una determinata immagine, più il numero massimo di pixel rappresentabili: più si hanno elementi per costruire l’immagine discretizzata migliore sarà la qualità dell’immagine. Per descrivere/misurare la risoluzione: n’ pixel orizzontali x n. pixel verticali Rapporto d’aspetto: Quanto è grande la dimensione dell’immagine che viene visualizzata (in pollici). Si misura attraverso la diagonale del monitor, ovvero come una proporzione tra la base e il lato verticale. Due rapporti d’aspetto sono 4:3 e 16:9 (formato panoramico) Scheda Grafica e GPU: Ricordiamo che l’elaboratore gestisce tutte le funzioni del monitor tramite una scheda grafica. La scheda grafica offre all’elaboratore una mappa dello schermo dei pixel che costituiscono, così sarà definito lo stato di ogni singolo pixel per costruire l’immagine. Problema: con l’utilizzo di applicazioni multimediali si richiede un’elaborazione notevole e perciò sono state costruite schede grafiche che incorporano direttamente processori dedicati GPU che si occupano della gestione del monitor. Altre caratteristiche: luminosità, contrasto, frequenza di aggiornamento (l’immagine nello schermo viene via via aggiornata, soprattutto nei contenuti multimediali), angolo di visibilità (nel momento in cui mi sposto dalla posizione frontale nei confronti del monitor, con che grado si riesce a visualizzare concretamente il monitor? Problema dei portatili)

- Stampanti: Proprietà simili a quelle del monitor (discretizzazione dell’immagine) Deve costruire un’immagine utilizzato l’inchiostro colorando determinati punti del foglio in modo tale che si costruisca l’immagine o il testo. Viene fatto anche in questo caso con dei punti, ma non si tratta di pixel. La densità di punti stampanti sul foglio si misura in DPI (dots per inch) e rappresenta la risoluzione. La velocità della stampa si misura in PPM (pages per minute) anche se non è una misura standardizzata. Esistono diversi tipi di stampanti basate su tecnologie differenti: 1. Getto d’inchiostro: vi è un inchiostro che viene trasferito sulla carta. Il foglio scorre sotto una testina che trasferisce l’inchiostro nei punti opportuni. In questo caso abbiamo un’elevata risoluzione e un prezzo contenuto. Solo il costo delle cartucce è molto elevato 2. Laser: simile alla tecnologia delle fotocopiatrici. Entra in gioco un raggio laser che colpisce rullo nel punto in cui si deve posizionare l’inchiostro. Questi punti sono in grado di attrarre una polvere d’inchiostro ellettrostaticamente (toner) che viene depositato sui punti in cui il rullo viene colpito. Costano di più di quelle a getto d’inchiostro anche se i costi di ricambio sono più contenuti 3. A impatto (non più usate)  Casse Audio Altre periferiche possono essere le macchine fotografiche, la webcam, gli altoparlanti, i lettori MP3, i telefoni cellulari e la LIM Esempio domanda: La profondità di colore è legata a: Risposta: Numero di colori rappresentabili su un monitor Esempio domanda: Un pixel è: Risposta: Punti luminosi che costituiscono gli schermi Esempio domanda: Come si misura la dimensione dell’immagine visibile su un video? Risposta: Lungo la diagonale Esempio domanda: Con quale unità si può misurare la velocità di stampa? Risposta: PPM

Esempio domanda: Con quale unità di misura si può misurare la risoluzione di stampa? Risposta: DPI

SISTEMI OPERATIVI (SOFTWARE)

Parliamo di componente logica dell’elaboratore. Esistono due categorie di software:

- Applicativo : creato per applicazioni riguardo problemi specifici - Sistema Operativo: progettato per la gestione dell’elaboratore All’avvio di un elaboratore la RAM è vuota. Come fa l’elaboratore a iniziare la propria fase di elaborazione se la memoria RAM è vuota? Attraverso la fase di bootstrap. Si tratta della presenza di una memoria non volatile che indica i passi di elaborazione che la macchina deve compiere per il proprio avvio. Sistema operativo Software di base che riguarda la gestione delle risorse del computer. Queste risorse richiedono una complessità di gestione che non è affrontabile per gli utenti finali e neanche per chi sviluppa software applicativo. Questa complessità viene gestita dal sistema operativo che costruisce un’interfaccia, cioè una modalità di comunicazione sia per l’utente che per i programmi applicativi in modo tale che l’elaboratore presenti all’utente o ai programmi applicativi una macchina virtuale semplificata. Il sistema operativo quindi semplifica l’interazione tra l’utente e la macchina. Diverse componenti: -Nucleo: gestione GPU -Gestione della memoria -File System (gestione della memoria di massa) -Gestione delle periferiche -Gestione della rete -Interprete dei comandi Esempi di sistemi operativi: Unix, Linux, Microsoft Windows, Mac OS Esempio domanda: Quale di questi non è una componente di un sistema operativo? Risposta: CPU

GESTIONE DELLA CPU

Primi elaboratori: Non esisteva il sistema operativo, si trattava di elaboratori Monoprogrammati che contenevano nella memoria un solo programma. La gestione dell’hardware veniva fatta da da parte degli utenti Con i sistemi batch arriva l’automatizzazione della fase di avvio dei programmi, ma durante l’esecuzione non esisteva ancora un’interazione Intorno agli anni ’60 si creano i primi sistemi operativi e richiedevano molto tempo Arrivano i sistemi Multiprogrammati : sistemi in cui la memoria centrale è condivisa. La memoria RAM è divisa in spazi e ognuno è associato ad un determinato programma. In ogni istante un solo programma può essere eseguito dalla CPU La nascita delle applicazioni interattive ha portato a classificare le applicazioni in base all’utilizzo della CPU Due tipi di applicazioni:  I/O Bound : interattive anche se avviene uno spreco di CPU  CPU Bound: non interattive e con un utilizzo intenso di CPU Una volta prodotti i sistemi operativi Multiprogrammati è stato possibile progettare i sistemi operativi time-sharing (multitasking) in cui il tempo di esecuzione della CPU viene suddiviso in intervalli e viene condiviso inoltre tra i processi/programmi in memoria. I programmi in memoria hanno la possibilità di aver un intervallo della CPU dedicato a loro. Quindi se abbiamo 10 programmi su 10 secondi, ogni programma avrà un secondo a disposizione, e in quel secondo, il programma deve fare l’elaborazione. In quei 10 secondi ogni programma ha compito un secondo della propria fase di elaborazione: si crea un parallelismo virtuale Esempio di sistema operativo time-sharing:

ESEMPIO

Abbiamo 1 processo in esecuzione e altri 3 processi nello stato pronto che formano una coda in cui il processo 2 è il primo nella coda (2,3,4). In attesa non c’è nessun processo. Immaginiamo che ad un certo punto il processo 1, interattivo, vada dall’esecuzione all’ attesa nel momento in cui arriva la richiesta di interazione. La CPU viene quindi liberata e il primo processo che viene prelevato è il 2, il primo nella coda e viene mandato dallo stato pronto a quello in esecuzione: Nel momento in cui il processo 1 termina la propria operazione di input o output in cui l’utente schiaccia un determinato pulsante, il processo uno viene riportato nello stato pronto in cui la coda si trova formata adesso dal processo 1,4 e 3 perché il due si trova in esecuzione: Immaginiamo che il processo 2 termini il proprio intervallo di tempo, verrà poi riportato nello stato pronto e verrà preso il processo 3 dallo stato pronto allo stato in esecuzione. La parte importante è la gestione dei processi, che vengono prima sospesi e poi ripresi. La sospensione di un processo da stato in esecuzione prevede:  Il salvataggio delle informazioni sul contesto di esecuzione

 Il salvataggio delle informazioni per la ripresa dell’esecuzione: stato della CPU Perciò è importante ricordarsi tutti gli stati precedenti, lo stato della CPU, le istruzioni ecc.… perché nel momento in cui il processo tornerà nello stato pronto, è necessario che il processo venga ripreso dal punto in cui era stato sospeso Se assegniamo degli istanti brevi di esecuzione ad ogni processo, in un tempo più ampio avremo l’impressione che l’esecuzione sia parallela (parallelismo virtuale). Quindi, la multiprogrammazione permette  L’esecuzione virtuale di più applicazioni contemporaneamente  Una sola finestra attiva: quando usiamo i nostri sistemi di elaborazione abbiamo i sistemi a finestra in cui troviamo una sola finestra attiva in un determinato momento legata al processo chiamato in “foreground” l’unico in evidenza, mentre gli altri processi vengono detti in background cioè eseguiti sullo sfondo, senza interazione diretta Esempio domanda: In un sistema programmato...? Risposta: La memoria centrale è condivisa tra i vari processi Esempio domanda: In un sistema time-sharing…? Risposta: Il tempo della CPU è condiviso tra i processi Esempio domanda: In un sistema time-sharing cosa si intende per “context swapping?” Risposta: Un’operazione legata al sistema operativo

GESTIONE DELLA MEMORIA

Nella multiprogrammazione la memoria centrale è condivisa da più processi. Le problematiche che si creano riguardano

- La memoria centrale: costosa e con dimensioni limitate - La gestione dello spazio, essendo condiviso da più processi Tecnica di gestione della memoria centrale Memoria virtuale: Per ogni processo viene creato uno spazio virtuale che non corrisponde necessariamente ad uno fisico. Il gestore della memoria centrale usa una tecnica che si chiama paginazione : il gestore stabilisce che la memoria centrale sia divisa in un certo numero di pagine fisiche , blocchi di memoria di dimensione fissa. Nel momento in cui un programma viene caricato nella memoria centrale, viene creata la memoria virtuale associata a questo processo. Questa memoria è costituita da pagine logiche , non fisiche, che poi il sistema operativo farà corrispondere a quelle fisiche della memoria centrale. Abbiamo il processo 1 e 2. Ognuno ha 3 pagine logiche corrispondenti allo spazio virtuale. La memoria centrale è suddivisa in pagine fisiche fino alla pagina 12. . Il processo 1 ha le tre pagine logiche che corrispondono alle rispettive pagine fisiche . Il processo 2 ha la pagina 1 logica è legata alla 9 fisica, la 2 alla 10 e la 3 alla 7. Quindi non necessariamente le pagine devono essere in successione Dato che la memoria centrale è limitata, si cerca di estendere la memorizzazione centrale utilizzando una memoria più capiente, la memoria secondaria. Viene creata una zona della memoria secondaria, area di swap , per il trasferimento di parte della memoria centrale Periodicamente quando la memoria centrale si satura, vengono spostati dei dati nell’aera di swap mentre altri dall’aera di swap a quella centrale

Ci sono casi in cui mi sposto dentro le cartelle del file system in cui può essere utile non solo il Pathname, ma anche il Percorso Relativo, che specifica come raggiungere un file a partire dalla cartella corrente ESEMPIO: Sono nella cartella C:\Programmi

- Percorso relativo del file prova.exe: Prove\prova.exe - Percorso assoluto: C:\Programmi\Prove\prova.exe Il File System memorizza alcune caratteristiche fondamentali di un file: - Formato - Occupazione di memoria - Informazioni temporali (ad esempio l’ultima volta che il file è stato modificato) - Diritti di accesso (definiscono le operazioni che possono essere fatte sui file) Esempio domanda: Quale struttura dati meglio delinea il file system di Windows? Risposta: Albero Esempio domanda: Il percorso assoluto di un file è Risposta: Il percorso dalla cartella radice Esempio domanda: Il percorso relativo di un file è: Riposta: Il percorso dalla cartella corrente GESTIONE DELLE PERIFERICHE Le periferiche sono collegate al computer tramite interfacce Le caratteristiche fisiche delle periferiche sono nascoste, quindi abbiamo una rappresentazione astratta e perciò parliamo di periferiche virtuali Il sistema operativo quindi ci dà questa operazione virtuale con cui è più semplice interagire e inoltre gestisce la condivisione, cioè i momenti in cui in le periferiche vengono condivise da più elaboratori. Il gestore si occupa di conflitti nell’utilizzo e di comandi di alto livello. Per gestire la comunicazione con le periferiche e per presentarne la virtualizzazione, i sistemi operativi utilizzano il Driver , ovvero una componente software che gestisce la comunicazione tra l’elaboratore e la periferica e si occupa di: - Nascondere i dettagli del controller

- Fornire comandi di alto livello - Tradurre dei comandi astratti in comandi specifici Esempio domanda: Come si chiama il componente software, specifico per un particolare modello di periferica, che ne consente la corretta gestione da parte del sistema operativo? Risposta: Driver INTERFACCIA UTENTE Inizialmente l’interfaccia utente era a Linea di Comando in cui l’utente inseriva una sequenza di comandi e di conseguenza il sistema rispondeva al comando. Problema: richiedeva la conoscenza specifica di tutti i comandi di interazione. A partire dalla fine degli anni ’70 sono state proposte delle altre modalità di interazione, Interfaccia utenti Grafiche : in cui il sistema operativo offre una mediazione tra utente ed elaboratore. Si tratta di interfacce multimediali Fase di autenticazione : utenti differenti possono compiere azioni differenti quindi vi è un controllo sui vari accessi alle risorse Le autenticazioni possibili sono: - Dimostrazione di conoscenza (username/password) - Dimostrazione di possesso (smart card) - Dimostrazione di caratteristiche fisiche (impronte digitali, retina)

SOWTFARE MALIGNI

Si tratta di programmi progettati per infiltrati nell’elaboratore Esistono diverse versioni di software maligni con funzionalità di attacco alla sicurezza della macchina. vLa categoria complessiva viene chiamata Malware : serie di programmi che si infiltrano nell’elaboratore senza che l’utente lo sappia. Il software maligno più noto è il Virus : costituito da una parte di codice nascosto all’interno di un altro programma e compie istruzioni dannose all’interno di esso. Il programma è infettato, e quando arriva il virus, non eseguiamo solo le istruzioni del programma che pensiamo, ma anche altre che non notiamo, formate da codici introdotti senza che noi lo volessimo e quindi danneggia i file e a volte li cancella. Non esistono solo i Virus informatici:

- Worm: (verme) programma con lo scopo di diffondersi sulla rete spostandosi da un elaboratore ad un altro - Cavallo di Troia : programma nascosto dentro altre applicazioni, spesso durante il download, che una volta entrato nell’elaboratore, cerca di disabilitare le misure di sicurezza

CODIFICA DEI DATI ED ELABORAZIONE DELL’INFORMAZIONE

Un elaboratore permette la funzione di diversi contenuti, molto differenti tra loro: Numeri, Testi, Immagini, Audio, Video…. La rappresentazione dell’informazione è basata sulla codifica. Se abbiamo un insieme di dati con una certa informazione che vogliamo rappresentare, dobbiamo definire una codifica, cioè una rappresentazione tramite dei simboli di un’informazione che stiamo considerando. Non basta definirla, essa deve avere una

Teoria dell’informazione : riguarda tutti gli aspetti che riguarda tutti gli aspetti dell’informazione. Teoria creata da Claude Shannon e misura della quantità di informazione contenuta in un supporto Esempio domanda: Volendo codificare in binario, con una codifica a lunghezza costante, i 30 giorni del mese di settembre, quale lunghezza minima devono avere le sequenze di bit adottate? Risposta: 5, perché 2^5 Esempio domanda: Volendo codificare in binario, con una codifica a lunghezza costante, i 7 giorni della settimana, quale lunghezza minima devono avere le sequenze di bit adottate? Risposta: 3, perché 2^3 INFORMAZIONE ANALOGIA E INFORMAZIONE DIGITALE Due approcci per codificare l’informazione:

- Codifica analogica : noi dobbiamo rappresentare una determinata quantità rappresentando le variazioni di quest’informazione. Dobbiamo fare un’analogia, un’altra grandezza che ha un andamento simile, in cui gli incrementi o i decrementi, ovvero le variazioni, possano essere rappresentati in modo simile alla grandezza che vogliamo rappresentare. Questo avviene con il termometro analogico in cui gli incrementi e i decrementi della temperatura di qualcosa sono legati al livello che ha il mercurio e rappresentano la temperatura che cresce e decresce. - Codifica digitale : Uso una codifica numerica. Ricorro ad un alfabeto di simboli e stabilisco qual è la codifica in cui un certo valore numerico è associato ad una certa informazione. Quindi la configurazione di 3 e 7 corrisponde alla temperatura 37. Oppure 3 e 52 che rappresenta l’ora. Informazione discreta : Insieme di valori riconducibile ai numeri naturali. Può raggiungere un numero finito di valori. Es. termometro digitale Informazione continua: Insieme di valori riconducibile ai numeri reali. Posso rappresentare un numero infinito di valori. Es. termometro a mercurio, il suo livello potrebbe assumere livelli infiniti. RAPPRESENTAZIONE BINARIA DI INFORMAZIONE NON NUMERICA Codifica del testo - Carattere: simbolo dell’alfabeto - Stringa: successione di caratteri Conversione in codifica dei caratteri: Si tratta di una codifica univoca per ogni simbolo dell’alfabeto. I simboli da codificare sono: -Lettere maiuscole e minuscole -Simboli interpunzione -Cifre numeriche e simboli matematici -Altri caratteri come è,ò,@ ecc… Codifica ASCII (American Standard Code for Information Interchange): codifica con 7 bit

  • Successivamente Extended ASCII: estensione a 8 bit (1 byte)
  • Il carattere “A” è rappresentato da 0100 0001 Esempio codifica ASCII

Altre codifiche: Codifica Unicode : I vari caratteri sono rappresentati da sequenze di 16 bit per rappresentare un carattere. Rappresentazione di circa 65 000 simboli Obiettivo: favorire interoperabilità Unicode 2015: aggiunta la codifica degli emoji Alcune varianti per il Web

- UTF-8 (unicode transformation format 8: codifica più diffusa basata su una lunghezza variabile - ISO - Codifica Microsoft File utilizzati dagli elaboratori - File di puro testo, semplice sequenza di carattere associati all’estensione file.txt - File di testo con formattazione (file.doc, docx, odt con altri aspetti come il colore ecc…) - Linguaggi di marcatura: marcature (tag) per descrivere alcuni aspetti del documento (html) - Linguaggi di descrizione dell’impaginazione (PDF) Esempio domanda: La codifica ASCII…? Risposta: Utilizza 7/8 bit per la codifica dei caratteri Esempio: La codifica Unicode…? Risposta: Utilizza più bit della codifica ASCII CODIFICA IMMAGINI Rappresentazione digitale delle immagini - Colore

  • Profondità di colore: quanti bit associamo ad ogni pixel - Forma dell’immagine
  • Schermo costituito da pixel Rappresentazione del colore: utilizzo di colori primari combinati - RGB: modello attivo
  • Combinazione di colori con varia intensità da 0 a 255
  • Varianti: sRGB e Adobe RGB Grafica per rappresentare le immagini Due formati pe rappresentare le immagini: - Formato Raster : utilizza una strategia per rappresentare le immagini, i bitmap , una mappa di bit costituita da diversi punti e ogni punto stabilisce quale stato/colore deve assumere
  • Formati non compressi: BMB
  • Formati compressi: GIF, JPEG