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


Riassunto informatica, Appunti di Fondamenti di informatica

appunto di informatica, primo anno con il professore cazzaniga

Tipologia: Appunti

2025/2026

Caricato il 07/02/2026

martinajodie
martinajodie 🇮🇹

3.9

(13)

7 documenti

1 / 44

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
CAPITOLO 1: FONDAMENTI DI INFORMATICA E HARDWARE
DEFINIZIONE DI INFORMATICA
È quella disciplina tecnico-scientifica che usa le macchine per elaborare automaticamente
l’informazione la quale viene espressa numericamente. Essa può essere considerata la tecnologia
dell’informazione. Essa ha portato vari benefici come la riduzione dei tempi di elaborazione,
maggiore affidabilità e la liberazione dell’uomo da incombenze noiose.
IL DATO, L’INFORMAZIONE E LA CONOSCENZA
Essi bisogna collocarli su tre livelli in ordine crescente e di astrazione
DATO è un insieme di simboli che rappresenta una proprietà di un oggetto nel mondo reale senza
contenere riferimenti alla proprietà stessa
INFORMAZIONE è un dato messo in relazione alla proprietà cui si riferisce
CONOSCENZA si ha quando si dispone di regole che permettono di trarre vantaggio
dall’informazione
I LINGUAGGI FORMALI
Sono importanti perché vanno a contrastare i linguaggi umani i quali sono ambigui. Essi prevedono:
UN ALFABETO, un elenco finito di simboli
UNA GRAMMATICA FORMALE che è un insieme di regole che permettono di combinare i simboli
tra di loro per costruire frasi ben formate
LE SEMANTICHE FORMALI che servono per dare significato
LA CODIFICA E LA RAPPRESENTAZIONE DELL’INFORMAZIONE
L’informazione è rappresentata dai dati i quali sono espressi in simboli. La codifica avviene
in modalità differenti.
In informatica si usa l’alfabeto binario il quale usa i bit (binary digital). Un bit è composto da simboli
0 e 1 e l’informazione è una sequenza di bit.
L’alfabeto binario rappresenta in maniera semplice i simboli sui dispositivi bistabili i quali possono
assumere due configurazioni alternative come ad esempio:
PRESENZA/ASSENZA di un foro di una scheda o di carica elettrica di una sostanza
PASSAGGIO/NON PASSAGGIO di corrente di un cavo conduttore o di corrente di luce in un cavo
ottico
DIVERSI STATI DI POLARIZZAZIONE di una sostanza magnetizzabile
N bit : 2n sequenze possibili es. 2 bit = 4 sequenze possibili(22) 00; 01; 10; 11
GLI STRUMENTI PER L’ELABORAZIONE DELL’INFORMAZIONE
Elaborazione dell’informazione qualsiasi attività fatta sull’informazione come creazione, modifica,
confronto, conversazione ecc… e i passaggi prevedono:
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
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c

Anteprima parziale del testo

Scarica Riassunto informatica e più Appunti in PDF di Fondamenti di informatica solo su Docsity!

CAPITOLO 1: FONDAMENTI DI INFORMATICA E HARDWARE

DEFINIZIONE DI INFORMATICA

È quella disciplina tecnico-scientifica che usa le macchine per elaborare automaticamente l’informazione la quale viene espressa numericamente. Essa può’ essere considerata la tecnologia dell’informazione. Essa ha portato vari benefici come la riduzione dei tempi di elaborazione, maggiore affidabilità’ e la liberazione dell’uomo da incombenze noiose.

IL DATO, L’INFORMAZIONE E LA CONOSCENZA

Essi bisogna collocarli su tre livelli in ordine crescente e di astrazione

  • DATO è un insieme di simboli che rappresenta una proprietà di un oggetto nel mondo reale senza contenere riferimenti alla proprietà’ stessa
  • INFORMAZIONE è un dato messo in relazione alla proprietà’ cui si riferisce
  • CONOSCENZA si ha quando si dispone di regole che permettono di trarre vantaggio dall’informazione

I LINGUAGGI FORMALI

Sono importanti perché vanno a contrastare i linguaggi umani i quali sono ambigui. Essi prevedono:

  • UN ALFABETO , un elenco finito di simboli
  • UNA GRAMMATICA FORMALE che è un insieme di regole che permettono di combinare i simboli tra di loro per costruire frasi ben formate
  • LE SEMANTICHE FORMALI che servono per dare significato

LA CODIFICA E LA RAPPRESENTAZIONE DELL’INFORMAZIONE

L’informazione è rappresentata dai dati i quali sono espressi in simboli. La codifica avviene in modalità’ differenti. In informatica si usa l’ alfabeto binario il quale usa i bit (binary digital). Un bit è composto da simboli 0 e 1 e l’informazione è una sequenza di bit. L’alfabeto binario rappresenta in maniera semplice i simboli sui dispositivi bistabili i quali possono assumere due configurazioni alternative come ad esempio:

  • PRESENZA/ASSENZA di un foro di una scheda o di carica elettrica di una sostanza
  • PASSAGGIO/NON PASSAGGIO di corrente di un cavo conduttore o di corrente di luce in un cavo ottico
  • DIVERSI STATI DI POLARIZZAZIONE di una sostanza magnetizzabile N bit : 2n^ sequenze possibili es. 2 bit = 4 sequenze possibili(2^2 ) 00; 01; 10; 1 1

GLI STRUMENTI PER L’ELABORAZIONE DELL’INFORMAZIONE

Elaborazione dell’informazione ➜ qualsiasi attività’ fatta sull’informazione come creazione, modifica, confronto, conversazione ecc… e i passaggi prevedono:

  1. Per prima cosa vi è la codifica dell’informazione in dati come simboli su un supporto fisico
  2. Dopo di cio’ vi è la trasformazione del supporto fisico il quale genera nuovi dati e nuove sequenze di simboli
  3. Infine abbiamo la decodifica dei dati che generano una nuova informazione Importanti sono gli input (informazioni in ingresso) e gli output (informazioni in uscita)
  • ALGORITMI ➜ si fornisce all’esecutore delle istruzioni per trattare automaticamente l’informazione e quindi si parla di algoritmi
  • LINGUAGGI DI PROGRAMMAZIONE ➜ sono i linguaggi formali per l’elaborazione dell’informazione che descrivono gli algoritmi e sono Basic, Cobol, Pascal, C, C++, Java, LISP, Prolog, Fortran
  • PROGRAMMI ➜ formulazione di un algoritmo di un linguaggio di programmazione scritto dal programmatore

I DISPOSITIVI AUTOMATICI PER L’ELABORAZIONE DELL’INFORMAZIONE

Si possono cassificare in.:

  • SISTEMI MANUALI ➜ attraverso i quali la codifica dei dati avviene manualmente (es. operazioni in colonna su carta)
  • SISTEMI SEMI AUTOMATICI RIGIDI ➜ effettuano singole trasformazioni dei dati ma l’uomo offre le indicazioni (es. calcolatrice)
  • SISTEMI AUTOMATICI FLESSIBILI ➜ macchine che hanno una memoria dove sono conservati dati ed istruzioni. Queste istruzioni sono chiare e precise e indicano quali trasformazioni fisiche la macchina deve fare sui dati (es. calcolatore) I sistemi nel corso del tempo hanno subito un’evoluzione
  • DIECI DITA DELLE MANI fu il primo strumento di elaborazione numerica
  • ABACO ➜ sistema di calcolo manuale basato su una rappresentazione numerica posizionale
  • REGOLO CALCOLATORE (Oughtred, XVII sec.) ➜ strumento di calcolo analogico in grado di fare moltiplicazioni, divisioni, potenze, logaritmi decimali e funzioni trigonometriche
  • PASCALINA (Pascal, XVII sec) ➜ calcolatrice meccanica in grado di svolgere addizioni e sottrazioni grazie all’uso di ruote dentate divise in settori equivalenti alle cifre del sistema decimale
  • STEPPED RECKONER (Leibniz, XVII sec) ➜ calcolatrice meccanica a manovella in grado di svolgere le quattro operazioni aritmetiche
  • ANALYTICAL ENGINE (Babbage, XIX sec) ➜ si introduce il concetto di calcolatrice programmabile ed è una macchina in grado di operare input e output su schede perforate dotate di memoria in grado di eseguire le quattro operazioni aritmetiche, confronti e radici quadrate

INTERFACCIA ➜ ha il compito di gestire le interazioni con gli utenti del calcolatore attraverso le periferiche BUS ➜ canale di comunicazione che gestisce lo scambio di informazioni COLLO DI BOTTIGLIA DI VON NEUMANN ➜ CPU moderna che elabora dati più velocemente rispetto al bus SOFTWARE (morbido manufatto) ➜ programmi HARDWARE (duro manufatto) ➜ parti fisiche e tangibili

STRUTTURA DEL CALCOLATORE E LE VARIE CLASSIFICAZIONI

il PC è composto da:

  • UNITÀ CENTRALE ovvero il case che contiene tutte le componenti
  • VENTOLE importanti per la dissipazione termica
  • ALIMENTATORE contenuto nel case e che serve per fare corrente alle varie parti
  • SCHEDA MADRE che è la struttura portante del calcolatore con degli alloggiamenti ( slot ) per il montaggio di altri componenti (RAM, microprocessore, schede di espansione). Essa funge da interfaccia per la comunicazione Ogni calcolatore presenta diverse caratteristiche come ad esempio la velocità di elaborazione, capacità di archiviazione, affidabilità, sicurezza, dimensioni, dotazione software, prezzo ecc…e a seguito di ciò possiamo classificarli in
  • PERSONAL COMPUTER (PC) ➜ calcolatore monoutente con programmi pacchettizzati il quale è composto da unità centrale + varie periferiche. L’unità centrale presenta varie forme: desktop (case orizzontale), tower (case verticale) e small form factor con un desktop con dimensioni contenute. (PC domestici che supportano la connessione di output: console e media center)
  • LAPTOP ➜ un pc pensato per la mobilità dove tutti i componenti sono presenti in un’unica unità e anche qua possiamo fare varie classificazioni: notebook (dimensioni block notes), subnotebook (più piccolo), netbook (impiego di applicazioni legate ad internet) e il tablet pc
  • PDA (personal digital assistant) detto anche handheld PC, palmtop PC, pocket PC e può essere uno smartphone con funzioni di telefono cellulare
  • WORKSTATION ➜ è simile al pc ma con prestazioni migliori tipo CPU più veloce, maggiore affidabilità a certi ambiti applicativi, migliore capacità di memoria
  • COMPUTER MULTIUTENTE ➜ più persone possono usare le risorse dello stesso calcolatore eseguendo programmi diversi da diverse postazioni. Può comprendere il minicomputer (elaborazioni dipartimentali nell’ambito d’impresa), mainframe (elaborazioni massive) e il supercomputer (tecnologie e prestazioni più avanzate per la ricerca tecnico-scientifica)
  • CALCOLATORI EMBEDDED ➜ per eseguire particolari SW e per essere inseriti all’interno di altri sistemi

IL PROCESSORE

CPU ➜ esegue istruzioni codificate in binario all’interno della memoria centrale e tramite il bus, legge/scrive in una cella di memoria specificando l’indirizzo di un dato REGISTRI ➜ unità di memorizzazione interna con una notevole velocità di lettura e scrittura Una volta acceso compie 4 attività :

  1. LETTURA DELLA MEMORIA (fetch) ➜ inizialmente legge l’istruzione dalla memoria centrale e la memorizza nel registro
  2. DECODIFICA ➜ vi è una parte che ha il compito di specificare l’operazione da eseguire, mentre altre parti hanno il compito di identificare gli operandi
  3. ESECUZIONE ➜ essa viene demandata all’unità aritmetico-logica (ALU)
  4. SCRITTURA ➜ il risultato viene trascritto in uno dei registri interni della CPU o nella memoria centrale ISTRUZIONI DI SALTO (JUMP) ➜ hanno il compito di modificare il valore del program counter con l’intenzione di modificare il flusso di esecuzione delle istruzioni CLOCK ➜ deve scandire le operazionit dei circuiti attraverso la sincronizzazione Sequenze del clock : hertz, kilohertz (KHz), megahertz (MHz), gigahertz (GHz) Vi sono anche i PROCESSORI MULTI-CORE che sono dei chip che possono operare su più chip (GHz)

LA MEMORIA CENTRALE

Viene chiamata RAM (random access memory) ed è un dispositivo di memorizzazione che serve a leggere e scrivere istruzioni e dati con una capacità tra 8 e 64 GB. Vi sono 4 tipi di accesso:

  • ACCESSO SEQUENZIALE che legge le celle precedenti per poter leggere una cella
  • ACCESSO DIRETTO che avviene solo se si conosce l’indirizzo della cella
  • ACCESSO MISTO (diretto + sequenziale) dove prima si accede ad un blocco diretto con accesso diretto grazie al quale si individuerà la singola cella
  • ACCESSO ASSOCIATIVO dove il contenuto della cella guida l’accesso ROM (read only memory) ➜ memoria di sola lettura EPROM (erasable programmable read-only memory) ➜ il contenuto si può modificare dal calcolatore attraverso aggiornamenti

LE MEMORIE DI MASSA

Nelle memorie di masse vi è la persistenza dei dati ed hanno una maggior capacità, minor costo di memorizzazione e tempi d’accesso più lunghi. Alcune sono rimovibili e la lettura è supportata dal drive, altre invece sono fisse perché sono installate nel case. SERIAL ATA, SCSI (small computer system interface) e Fibre Channel ➜ costituiscono l’interfaccia per la connessione delle memorie e servono per ripristinare la funzionalità del calcolatore

  • COMUNICAZIONE SERALE ➜ vi è un unico canale che trasmette un singolo bit alla volta
  • COMUNICAZIONE PARALLELA ➜ vi sono più canali che trasmettono contemporaneamente gruppi di bit Le connessioni più comuni sul PC sono:
  • Connettori parallel ATA (HD, lettore CD, masterizzatore)
  • Connettori serial ATA e SCSI (HD)
  • 2 connettori PS/2 connettore VGA (o DVI)
  • Connettori mini jack
  • Connettore seriale RS- 232
  • Porta parallela
  • Connettore RJ11 (modem/fax)
  • Connettore RJ45 (interfaccia di rete)
  • Connettori USB connettore
  • Firewire (IEEE 1394)
  • Dispositivo irda (infrarossi) e Bluetooth (onde radio) le periferiche sono
  • LA TASTIERA la quale comprende tasti modificatori (quei tasti che modificano l’effetto di un tasto se prodotti contemporaneamente), tasti funzioni (come F1; F2 che inviano rapidamente comandi ai software applicativi) e i tasti freccia (editano il testo come “page up” o “page down”)
  • IL VIDEO che comprende la scheda grafica (scheda di espansione che mantiene una mappa dello schermo), la risoluzione (rapporto tra le dimensioni della base e dell’altezza dell’immagine), CRT; LCD; OLED; AMOLED e il videoproiettore
  • I DISPOSITIVI DI PUNTAMENTO (GUI = graphical user interface che richiede un DDP) composti da mouse, trackball, joystick, touchpad, tavoletta grafica, touchscreen
  • LA STAMPANTE di cui bisogna tenere conto la risoluzione (misurata in DPI), la velocità di stampa (misurata in PPM), il getto d’inchiostro, laser e impatto
  • ACQUISIZIONE DI IMMAGINI di cui importanti sono la profondità di colore (24bit), la risoluzione (misurata in PPI), lo scanner, la fotocamera digitale, la videocamera digitale, la webcam e il lettore di codici a barre
  • I DISPOSITIVI AUDIO che comprendono la scheda sonora (scheda di espansione che supporta gli input e output di segnali audio. In output vi è un convertitore digitale-analogico per riconvertire la codifica digitale in segnale analogico), la Voice Over Internet Protocol (VOIP = sostituisce l’apparecchio telefonico), il media center (PC con un’interfaccia grafica, sonora e altre periferiche che formano il centro di controllo dell’home theater) e il lettore mp
  • COMBINAZIONE DI PERIFERICHE come foglie glasses, Cave Automatic Virtual Enviroment, LIM, realtà virtuale

CAPITOLO 2: IL SOFTWARE

GLI ALGORITMI

Essi sono delle istruzioni che servono per trattare l’informazione. È presente un esecutore (calcolatore) che legge l’algoritmo eseguendo istruzioni di input per ricavarne i dati di output L’algoritmo deve avere delle caratteristiche specifiche : un linguaggio comprensibile il quale non dev’essere ambiguo, istruzioni elementari per eseguire operazioni elementari, specificare l’ordine di esecuzione delle istruzioni e dev’essere deterministico ( algoritmo parametrico ➜ risolve una classe di problemi)

I PROGRAMMI, I LINGUAGGI DI PROGRAMMAZIONE, I TRADUTTORI

LINGUAGGI DI PROGRAMMAZIONE ➜ linguaggio formale che serve per descrivere gli algoritmi PROGRAMMA ➜ algoritmo espresso in un linguaggio di programmazione. I programmi prima devono essere tradotti in linguaggi macchina e per eseguire lo stesso programma su calcolatori diversi si usa il compilatore o l’interprete Vi sono vari livelli di astrazione per scrivere i programmi come ad esempio

  • LINGUAGGIO MACCHINA ➜ sequenze di bit
  • LINGUAGGIO AD ALTO LIVELLO ➜ Basic, Pascal, Java, C
  • LINGUAGGIO NATURALE
  • LINGUAGGI ASSEMBLATORE (ADD,SUB ecc) ➜ è un linguaggio di programmazione che ad ogni istruzione binaria associa una codifica mnemonica in inglese. I programmatori hanno realizzato un programma assemblatore che traduce il linguaggio assemblatore di input nel linguaggio macchina di output eseguibile dalla CPU Per poter essere eseguito da un calcolatore, un programma scritto in un linguaggio di alto livello deve essere tradotto nel linguaggio macchina corrispondente e quest’operazione la esegue il traduttore ➜ 2 tipi
  • COMPILATORE ➜ riceve in input l’intero programma in linguaggio di alto livello ( programma sorgente ) e produce in output la sua traduzione in linguaggio macchina ( programma oggetto )
  • INTEPRETE ➜ riceve in input il programma sorgente e ne traduce le istruzioni facendole eseguire direttamente

LA MACCHINA DI TURING

Alan Mathison Turing è il padre dell’informatica moderna il quale ideò la Macchina Di Turing , un dispositivo per l’elaborazione dell’informazione pensata come entità astratta. Lo studio delle sue proprietà servono per comprendere i concetti, le proprietà e i limiti dell’elaborazione automatica dell’informazione, degli algoritmi e della complessità. Essa è costituita da:

  • UN ALFABETO costituito da simboli (simbolo speciale ➜ BLANK )
  • UN NASTRO il quale è suddiviso in celle per ogni simbolo
  • UNA TESTINA la quale è posizionata su una cella del nastro. Essa riesce a leggere e a scrivere un simbolo e spostarsi nella cella adiacente
  • insieme finito di STATI (stato iniziale + uno o più stati finali)

SOFTWARE APPLICATIVO ➜ applicazioni che aiutano l’utente a risolvere problemi specifici SOFTWARE DI BASE ➜ programmi che permettono l’interazione dell’utente con il calcolatore, gestendo le risorse e supportando l’esecuzione del software applicativo Ci sono vari tipi di applicazioni ognuna delle quali ha una funzione diversa

  • Applicazioni in ambito applicativo → software di produttività individuale (o applicazioni d’automazione d’ufficio, office automation) spesso distribuiti in pacchetti (es. Office).
  • Applicazioni di videoscrittura (word processor) → es. Word
  • Applicazioni per la gestione di fogli elettronici di calcolo → es. Excel
  • Applicazioni per la produzione di contenuti multimediali → es. PowerPoint
  • Applicazioni di desktop publishing
  • Applicativi per la gestione di basi di dati
  • Editor web (html)
  • Applicazioni grafiche e di fotoritocco → es. Adobe
  • Applicazioni per la realizzazioni di diagrammi
  • Applicazioni per la gestione di finanze individuali
  • Organizer
  • Applicazioni di project manager
  • Mobile application

IL SOFTWARE DI BASE: IL SISTEMA OPERATIVO

SISTEMA OPERATIVO ➜ software di base costituito da varie macchine virtuali che servono per l’interazione tra utente/calcolatore, gestire le risorse e l’esecuzione del calcolatore. Ogni macchina ha la propria interfaccia e fornisce nuove funzionalità agli strati superiori. Le componenti di questo sistema sono:

  • NUCLEO che gestisce il CPU
  • GESTORE DELLA MEMORIA gestisce la RAM
  • GESTORE DISPOSITIVI INPUT E OUTPUT che gestisce le periferiche
  • FILE SYSTEM che gestisce l’archiviazione e il reperimento di dati
  • GESTORE DELLA RETE che gestisce la comunicazione con altri integratori
  • INTERPRETE DEI COMANDI che gestisce l’interazione con l’utente I sistemi operativi piu comuni sono: Unix, Linux, Windows, IOS, Android, macOS

LA GESTIONE DELLA CPU

TIME SHARING & MULTITASKING ➜ sono la possibilità di avere un parallelismo virtuale e l’utente crede che la loro esecuzione sia parallela in quanto i vari processi in esecuzione sono gestiti dalla CPU Anni 40 ➜ ci furono i MONOPROGRAMMATI , i primi calcolatori e potevano eseguire un programma alla volta in cui il programmatore accedeva alle istruzioni della CPU tramite schede perforate. Anni 50 ➜ introduzione dei monitor in cui ci fu la prima versione di sistema operativo che poteva automatizzare l’avvio dei programmi. Attraverso il Job Control Language si poteva predisporre un job, un programma che organizzava l’esecuzione di più programmi. I calcolatori in questo periodo vennero chiamati sistemi batch

Anni 60 ➜ i calcolatori si evolsero divenendo MULTIPROGRAMMATI e potevano tenere in RAM più programmi. In questo periodo le schede perforate scomparvero, l’utente inserisce l’input attraverso una tastiera anche in funzione dell’output e nascono molte applicazioni tra cui:

  • INPUT/OUTPUT BOUND ➜ interattive che favoriscono lo spreco della CPU in quanto deve aspettare l’input da tastiera
  • CPU BOUND ➜ non interattive le quali richiedono una massiccia elaborazione da parte della CPU Da tenere conto è anche il PROCESSO un entità dinamica. Quando viene richiesta l’esecuzione di un programma, si crea un nuovo processo al quale viene collocato in RAM lo spazio necessario per le istruzioni e i dati. Alla fine dell’esecuzione, il processo muore. Ci sono vari stati del processo:
  • PRONTO ➜ il processo viene inserito in una lista in cui attende l’esecuzione
  • IN ESECUZIONE ➜ il processo può accedere alla CPU la quale ne esegue le istruzioni
  • IN ATTESA ➜ il processo attende il completamento di un’operazione asincrona CONTEXT SWAPPING ➜ operazione che mette i processi nello stato di esecuzione

LA GESTIONE DELLA MEMORIA CENTRALE

Essa avviene attraverso la multiprogrammazione che deve avere un gestore della memoria la quale ha vari compiti:

  • Controllare la RAM
  • Gestire e proteggere lo spazio di ogni processo
  • Gestire lo spazio comune tra processi La memoria virtuale rende disponibile ad ogni processo un suo spazio di indirizzamento virtuale, attraverso il quale ogni programma opera come se avesse a disposizione l’intera RAM suddivisa in pagine. COMPITO IMPORTANTE SVOLTO DALLA MEMORY MANAGEMENT UNIT ➜ suddivide i dati del programma in pagine le quali vengono posizionate nelle pagine libere nella RAM Quando i processi hanno bisogno di più pagine di memoria di quante la RAM possa offrirne, il sistema operativo libera spazio tramite swapping : sposta temporaneamente sul disco (nell’area di swap) i processi che in quel momento hanno minore probabilità di essere eseguiti subito. Questo trasferimento permette di liberare RAM per i processi attivi. Quando un processo spostato in swap serve di nuovo, viene riportato in memoria principale.

LA GESTIONE DELLE PERIFERICHE

I processi operano su periferiche virtuali il cui impiego dipende dalla disponibilità dei driver specifici, importanti perché forniscono al sistema operativo i dettagli per gestirle. Alcuni sistemi operativi supportano il Plug and Play grazie al quale il calcolatore riconosce il driver da installare e configurare per una nuova periferica e quindi:

  • un processo , device indipendente grazie al driver, opera come se la periferica fosse a sua completa disposizione
  • un DRIVER SPECIFICO decide di impiegare una periferica in un dato sistema operativo

What you see is what you get ➜ visualizzazione immediata degli effetti di esecuzione dei comandi

LA VIRTUALIZZAZIONE

  • La REALTÀ VIRTUALE si ottiene grazie a delle applicazioni le quali, grazie ad input sensoriali, sono in grado di simulare la collocazione di un utente all’interno di un mondo virtuale
  • Le PIAZZE VIRTUALI sono dei servizi basati su rete che permette a persone di comunicare in luoghi più o meno distanti
  • Vi è anche la virtualizzazione dell’hardware che assume il ruolo di host machina nel calcolatore in cui viene installato un hypervisor che supporta la creazione di macchine virtuali, chiamate guest machine. La sua evoluzione viene chiamata Hyper-converged Infrastructure ed è una tecnologia che visualizza e gestisce con un’unica console tutte le componenti hardware delle infrastrutture dei server tradizionali

I SOFTWARE MALIGNI

  • MALWARE ➜ virus del computer ed è una classe di programmi progettati per infiltrarsi e danneggiare un calcolatore
  • WORM ➜ programma che attraverso la rete invia copie di sé stesso ad altri calcolatori e genera problemi sulla rete
  • TROJAN HORSE ➜ applicazione che le persone sono incentivate ad installare è una volta fatto, apre una breccia all’interno delle difese del calcolatore il quale sarà oggetto di attacchi e hacking
  • RANSOMWARE ➜ limita le funzionalità del calcolatore infetto e per il ripristino delle funzionalità chiede il riscatto
  • SPYWARE ➜ programma installato senza autorizzazione su un pc che raccoglie informazioni sull’utente
  • ADWARE ➜ programma che propone all’utente pubblicità sotto forma di immagini, animazioni, filmati e pagine web
  • CRIMEWARE ➜ progettati per furto d’identità
  • HOAX & SPAM ➜ mail che annuncia l’arrivo di altri messaggi infettati da virus. L’utente la inoltrerà o compirà azioni che potrebbero compromettere il funzionamento del calcolatore Vi sono anche i sistemi di difesa: a. FIREWALL ➜ crea una barriera elettronica contro gli attacchi b. ANTIVIRUS ➜ previene, individua e rimuove i programmi malware

CAPITOLO 3: LA RAPPRESENTAZIONE DEI DATI PER LE SCIENZE UMANE

LA CODIFICA DELL’INFORMAZIONE

L’informazione viene trattata seguendo tre passaggi:

  1. Si rappresentano i dati su un supporto fisico con sequenze di simboli che codificano l’informazione
  2. Il supporto fisico viene trasformato e modifica i dati
  3. I dati ottenuti vengono decodificati generando una nuova informazione i calcolatori moderni:
  • hanno supporti fisici bistabili con una memoria centrale (RAM) e una memoria di massa (disco fisso)
  • rappresentano l’informazione tramite bit
  • ogni informazione (numerica, testuale, grafica, sonora) viene codificata con sequenze di 0 e 1 La Information and Communication Technology ha degli obbiettivi:
  • definisce tecniche per codificare secondo il sistema binario nuovo tipi di informazione
  • definisce tecniche di codifica come minimizzare il numero di simboli utilizzati, diminuire la dimensione dell’informazione e rendere l’informazione più semplice da trattare

LA RAPPRESENTAZIONE DECIMALE POSIZIONALE

Per RAPPRESENTAZIONE DECIMALE s’intende il concetto di cardinalità (0;1;2;3….) mentre nella RAPPRESENTAZIONE POSIZIONALE ogni cifra assume un ruolo diverso a seconda della sua posizione (unità, decine, centinaia…). Se si aggiunge il separatore decimale , si possono rappresentare sottomultipli decimali delle unità

LE RAPPRESENTAZIONI NON POSIZIONALI

È ad esempio il sistema di numerazione romano :

  • insieme di SIMBOLI LETTERARI a cui viene associato un valore numerico
  • Numero ➜ sequenza di simboli letterari
  • Valore di un numero ➜ somma dei valori che corrispondono ai simboli della sequenza Nel Medioevo sono state introdotte delle regole:
  • I, V, X, L, C, D, M ➜ 1, 5, 10, 50, 100, 500, 1000
  • I, X, C e M ➜ possono ripetersi 3 volte consecutivamente
  • V, L e D ➜ non possono ripetersi in sequenza
  • Simboli scritti in ordine decrescente si valutano sommandoli
  • Coppia di simboli i ordine decrescente ➜ il primo viene sottratto al secondo
  • Una barra sopra un simbolo ➜ moltiplicato per 1000/ due barre laterali + una sopra un simbolo ➜ moltiplicato per 100.
  • Numero ➜ sequenza di simboli dell’alfabeto

LA RAPPRESENTAZIONE DECIMALE IN BASE NON DECIMALE

  • Un alfabeto di simboli (per esempio le cifre 0–9).
  • Regole di codifica per associare un valore a una sequenza di simboli (es. “18453” seguendo le regole del sistema decimale). La codifica digitale è più compatta (es. Scrivere 18453 è molto più breve che rappresentarlo con migliaia di sassolini o con la parola “diciottomilaquattrocentocinquantatre”) La codifica analogica contiene meta-informazioni , cioè informazioni aggiuntive le quali sono:
  • ORDINALE : mostra subito chi è maggiore (più sassolini = valore maggiore).
  • METRICO : permette di capire quanto è grande la differenza (togliendo tre sassolini da cinque ne restano due). Senza conoscere le regole di codifica, non possiamo ricavare queste meta-informazioni:
  • Non possiamo sapere chi è maggiore tra 13 e 31 se non conosciamo il sistema numerico usato.
  • Non possiamo capire che la differenza tra 5 e 3 è 2, perché il significato delle cifre dipende dalle regole. Vi sono due tipi di grandezze da tenere in considerazione che sono: GRANDEZZE DISCRETE ➜ assumono valori appartenenti ai numeri naturali (es. conteggi, oggetti). GRANDEZZE CONTINUE ➜ assumono valori appartenenti ai numeri reali (es. lunghezze, temperature). Di esse bisogna tenere conto della QUANTIZZAZIONE , in cui si individua un numero finito di intervalli e tutti i valori all’interno dello stesso intervallo vengono rappresentati con la stessa sequenza di simboli. Prevede il seguente processo:
  • quando vi è un valore continuo che viene rappresentato con una codifica digitale allora bisogna discretizzarlo
  • la rappresentazione discreta prevede questo processo Vi è poi il CAMPIONAMENTO che ha lo scopo di rappresentare, con una codifica digitale, l’andamento di una grandezza continua. Prevede il seguente processo:
  • si divide l’intervallo di osservazione del fenomeno in sotto-intervalli
  • il valore viene rivelato in un istante predefinito FREQUENZA DI CAMPIONAMENTO ➜ numero di campioni per unità di tempo Sia la quantizzazione che il campionamento portano ad un’approssimazione

LA TRASMISSIONE DELL’INFORMAZIONE DIGITALE

I calcolatori hanno diffuso la codifica digitale, rendendo i messaggi digitali più facili da trasmettere rispetto a quelli analogici per due motivi:

  1. con la codifica binaria è semplice capire se ci sono stati errori di trasmissione
  2. sia il trasmettitore che il ricevitore possono concordare meccanismi di ridondanza in caso di errore La trasmissione prevede:

LO SCHEMA DI RIPETIZIONE ➜ esso si assicura che ogni simbolo del messaggio (bit) sia trasmesso due o più volte:

  • MESSAGGIO ➜ scomposto in blocchi di nibble (4 bit) o byte (8 bit) i quali vengono ripetuti più volte
  • vengono individuate le differenze tra le copie dello stesso blocco IL CONTROLLO DI PARITÀ ➜ il trasmettitore suddivide il messaggio binario in blocchi di bit di dimensione prefissata:
  • se il blocco contiene un numero DISPARI di 1 , viene aggiunto un bit di parità a 1
  • se il blocco contiene un numero PARI di 1 , viene aggiunto un bit di parità a 0 I singoli errori vengono rilevati (solo quelli di trasmissione), ma se nello stesso byte cambiano 2 bit il messaggio risulta corretto. Gli errori non vengono rivelati dal ricevente.

IL TESTO

La codifica del testo avviene quando si associa un codice binario ad ogni singolo carattere. L’ISO (International Organization for Standardization) ha adottato

  • ASCII (American Standard Code for Information Interchange) ➜ ogni carattere è rappresentato da una sequenza di 7 bit
  • ASCII esteso ➜ usa una codifica di 8 bit e qua l’ISO ha rilasciato varie versioni per i vari carattere dei linguaggi: ❖ CARATTERI DEI LINGUAGGI EUROPA OCCIDENTALE ➜ ISO 8859-1 (Latin1) ❖ CARATTERI DEI LINGUAGGI EUROPA ORIENTALE ➜ ISO 8859- 2 ❖ CARATTERI CIRILLICI ➜ ISO 8859- 5 UNICODE ➜ codifica a 21 bit e favorisce l’interoperabilità , ovvero quella capacità dei sistemi informatici di cooperare e di scambiare informazioni o servizi. Esso comprende ASCII esteso Latin (caratteri di lingue vive e morte, ideogrammi, braille, simboli matematici, chimici, cartografici) A seconda del tipo di codifica utilizzata, si distinguono i file memorizzati nella memoria del calcolatore:
  • SO Windows ➜ FILE TXT (contengono caratteri) e RTF (supporta lo scambio di testo tra sistemi e applicazioni)
  • Word e Office ➜ FILE DOC (contengono il testo e l’informazione sulla formattazione)
  • FILE SCRITTI CON LINGUAGGI DI MARCATURA (markup language) come HTML (pagine ipertestuali che costituiscono il World Wide Web in internet) e ODT + DOCX (documenti di testo basati su XML SBML Systems Biology Markup Language)
  • Editoria ➜ POSTSCRIPT (linguaggio di programmazione che descrive l’impaginazione)
  • PDF ➜ comune per la diffusione di documenti su internet

LE IMMAGINI

Per poter visualizzare o stampare un’immagine vettoriale, serve trasformarla in un’immagine raster e questo processo si chiama RASTERIZZAZIONE : serve perché ogni dispositivo (monitor, stampante) ha una propria risoluzione, e rasterizzando si ottiene la miglior qualità possibile su quella periferica. Anche i FONT possono essere raster o vettoriali. FONT BITMAP (O RASTER) ➜ Ogni carattere è una piccola matrice di pixel (se ingrandisci molto il testo, si vede la scalettatura però poco usati oggi) FONT OUTLINE (O VETTORIALI) ➜ I caratteri sono descritti come forme geometriche, come nelle immagini vettoriali e si ingrandiscono senza perdere qualità. I principali tipi sono:

  • PostScript Type 1
  • PostScript Type 3
  • TrueType
  • OpenType (il più moderno e diffuso)

I SUONI

Quando registriamo un suono, esso è inizialmente un’onda continua e per salvarlo su un computer, dobbiamo trasformarlo in numeri binari (0 e 1). Questa trasformazione avviene seguendo tre caratteristiche principali:

  • STEREOFONIA : significa che il suono viene registrato in due canali (sinistro e destro), così possiamo sentire la differenza tra ciò che arriva da destra e da sinistra, dando la sensazione dello spazio e della direzione del suono.
  • FREQUENZA DI CAMBIAMENTO (44100 Hz) : il suono viene misurato 44100 volte al secondo.
  • QUANTIZZAZIONE (65536 livelli, cioè 16 bit) : ogni misura del suono viene convertita in un numero. Dopo ci sono i vari formati:
  • WAV (Waveform Audio Format) e AIFF (Audio Interchange File Format) che non sono compressi.
  • MP3 (MPGE-1 Audio Layer 3) è un formato compresso con perdita di qualità (lossy).
  • AAC (Advance Audio Coding) : anche questo è compresso e lossy, ma di qualità migliore rispetto all’MP3. È lo standard usato da Apple, e anche da alcune console come quelle di Sony e Nintendo.

I FILMATI

Un filmato digitale è una serie di immagini (fotogrammi) mostrate una dopo l’altra molto velocemente. La velocità si chiama FPS (frame per second) , cioè quante immagini vengono mostrate in un secondo. I formati video principali sono

  • QUICKTIME ➜ sviluppato da Apple.
  • MPEG- 2 ➜ (usato per DVD e Blu-ray) Applica una compressione lossy sia per il video che per l’audio.
  • FLV (Flash Video) ➜ sviluppato da Macromedia e supportato da Adobe. Era molto usato per filmati su Internet (come YouTube prima di HTML5). Anche questo usa compressione lossy.
  • AVI (Audio Video Interleave) ➜ è un contenitore, cioè un tipo di file che può contenere video e audio codificati in diversi formati tramite codec., cioè può salvare video in modi diversi, a seconda del codec scelto

LA COMPRESSIONE

La compressione serve a ridurre lo spazio che i file occupano, cambiando il modo in cui sono codificati i dati senza alterare troppo il contenuto percepito. Ci sono due tipi principali:

  • COMPRESSIONE LOSELESS (senza perdita) gli esempi più comuni sono dati da WinZip per Windows e GunZip per Linux. Qui i dati originali possono essere ricostruiti perfettamente dopo la compressione. È reversibile perché comprimendo e poi decomprimendo ottieni esattamente lo stesso file e la riduzione dello spazio dipende dal tipo di dati
  • COMPRESSIONE LOSSY (con perdita) in cui parte delle informazioni viene eliminata definitivamente, riducendo molto di più lo spazio rispetto al lossless. Nei diversi tipi di file avviene un procedimento diverso:
  • IMMAGINI ➜ alcuni colori dei pixel vengono modificati; la differenza è quasi impercettibile all’occhio umano.
  • AUDIO ➜ usando modelli psico-acustici, vengono tolte frequenze o molto alte o troppo basse.
  • VIDEO ➜invece di salvare ogni singolo fotogramma, si salvano solo le differenze tra fotogrammi consecutivi.

LE BASI DEI DATI

Un Sistema Informativo è tutto ciò che un’organizzazione usa per raccogliere, organizzare e rendere disponibili le informazioni necessarie per le proprie attività. Oggi i dati vengono organizzati in basi di dati (DB, Data Base). Un database è una grande “costruzione” digitale che permette di:

  • Tenere tutte le informazioni insieme in un unico contenitore logico.
  • Evitare duplicazioni inutili e dati incoerenti (problemi comuni dei vecchi sistemi a file).
  • Proteggere le informazioni dagli accessi non autorizzati. Il database viene gestito da un DBMS (Data Base Management System) , un software a cui tutte le applicazioni si rivolgono per leggere o modificare i dati. Esso usa due tipi di linguaggi principali:
  • DDL (Data Definition Language) ➜ per definire le strutture dei dati e le relazioni tra di esse.
  • DML (Data Manipulation Language) ➜ per modificare i dati e fare interrogazioni (query).
  • SQL (Structured Query Language) è il linguaggio più comune che combina DDL e DM MODIFICHE AL DB ➜ inserire nuovi dati, cambiare quelli esistenti o cancellarli.