Il 0% ha trovato utile questo documento (0 voti)
1 visualizzazioni33 pagine

Informatica

Il documento fornisce una panoramica sull'informatica, definendo hardware e software e la loro interazione, oltre a descrivere le generazioni di computer e la loro evoluzione. Viene anche trattata la memoria, le sue tipologie e le periferiche di input/output, incluse le stampanti e i loro tipi. Infine, si introduce il concetto di algoritmo, evidenziando le sue caratteristiche fondamentali.

Caricato da

iscrizioniric
Copyright
© All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd
Il 0% ha trovato utile questo documento (0 voti)
1 visualizzazioni33 pagine

Informatica

Il documento fornisce una panoramica sull'informatica, definendo hardware e software e la loro interazione, oltre a descrivere le generazioni di computer e la loro evoluzione. Viene anche trattata la memoria, le sue tipologie e le periferiche di input/output, incluse le stampanti e i loro tipi. Infine, si introduce il concetto di algoritmo, evidenziando le sue caratteristiche fondamentali.

Caricato da

iscrizioniric
Copyright
© All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd

INFORMATICA

Informatica & Informazione


Informatica = neologismo (parola formata da altre 2) formato dalle parole informazione e
automatica
Informazione = conoscenza

Hardware & Software


Hardware = ferramenta > parte dura, fisica di un computer, ad es. mouse, tastiera, monitor
Software = parte logica di un computer.

Hardware e software sono complementari l’uno all’altro (senza di uno, l’altro è inutile).

Esistono 2 tipi di software: software di base e software applicativo.


-​ Software di base:
-​ sistema operativo (es. Windows, iOS);
-​ programmi traduttori (tutti quei programmi che traducono da linguaggio
informatico (alto) a linguaggio “umano”(basso));
-​ programmi di utilità = programmi che facilitano l'utente nei lavori di uso
comune(es. Calcolatrice, WordPad). Solitamente sono programmi con
funzioni essenziali, proprio perché sono gratuiti e disponibili a tutti.
-​ Software applicativo: tutti quei programmi che non fanno parte del software di base
(tutti i programmi che non sono preinstallati e che vanno installati dall'utente).

Negli ultimi anni, con lo sviluppo della tecnologia, l’hardware è diventato sempre più
compatto e potente: basti pensare ai dispositivi mobili come smartphone e tablet, che oggi
sono veri e propri computer in miniatura. Alcuni componenti hardware fondamentali sono la
CPU (il “cervello” del computer), la RAM (memoria a breve termine), il disco rigido o SSD
(memoria a lungo termine), e le periferiche (mouse, tastiera, stampante, ecc.).
Anche il software si è evoluto molto: oggi esistono anche software basati su cloud, cioè
programmi che non vengono installati fisicamente sul computer, ma usati tramite Internet
(come Google Docs o Microsoft 365 online). Questo tipo di software permette di lavorare da
qualsiasi dispositivo connesso alla rete.
Esiste inoltre una categoria chiamata firmware, che sta a metà tra hardware e software: si
tratta di un software molto essenziale memorizzato in modo permanente all’interno di alcuni
dispositivi hardware (come stampanti, modem, schede madri) e serve per farli funzionare
correttamente.
Infine, esistono sistemi operativi open source come Linux, che possono essere modificati e
distribuiti liberamente, e che vengono spesso usati in ambito educativo, scientifico o da
programmatori esperti.
I PRIMI COMPUTER
Definizione di computer: macchina in grado di elaborare dati e informazioni e memorizzarli,
eseguendo istruzioni fornite da programmi per svolgere compiti specifici in modo automatico
e veloce.
Colossus è stato il primo “computer” programmabile della storia dell’informatica, esso venne
inventato durante la fine della 2 guerra mondiale da uno scienziato di nome Turing, per
intercettare il codice (chiamato enigma) dei nazisti. Si dice che grazie a questa macchina la
seconda Guerra Mondiale finì prima. Questa macchina, però, non era un vero e proprio
computer, infatti esso era un decriptatore.
Colossus divenne operativo nel 1944 ed era composto da circa 2.500 valvole termoioniche.
Utilizzava nastri perforati e lavorava analizzando rapidamente grandi quantità di dati per
cercare schemi nei messaggi cifrati. Poteva essere "programmato" modificando
manualmente la configurazione dei cavi e degli interruttori, rendendolo il primo esempio di
computer programmabile, anche se non nel senso moderno di "programmabile da software".
Il contributo di Colossus fu cruciale. Grazie alla sua capacità di elaborare rapidamente i
messaggi cifrati tedeschi, gli Alleati riuscirono ad anticipare molte mosse strategiche del
nemico. Gli storici ritengono che la sua esistenza abbia accorciato la guerra di almeno due
anni e salvato milioni di vite.
Tuttavia, per motivi di sicurezza e segretezza, Colossus rimase sconosciuto al pubblico per
decenni. Dopo la guerra, le macchine vennero smantellate e il progetto fu tenuto top secret
fino agli anni '70. Questo ha causato un ritardo nel riconoscimento del suo ruolo pionieristico
nella storia dell'informatica.
Il primo computer venne inventato per la prima volta nel 1946 in Pennsylvania da un gruppo
di ricercatori universitari. Esso si chiamava ENIAC (acronimo di Electronic Numerical
Integrator and Computer) ed era in grado di eseguire solo le 4 operazioni di base (più,
meno, per e diviso). Era una macchina enorme, composta da circa 18.000 valvole e
occupava una superficie di oltre 140 metri quadrati. Sebbene molto limitato rispetto ai
computer moderni, rappresentava un'enorme innovazione per l’epoca: poteva eseguire
calcoli che avrebbero richiesto ore o giorni in pochi secondi. ENIAC è considerato il primo
computer elettronico a programma non memorizzato, cioè i programmi dovevano essere
inseriti manualmente collegando cavi e interruttori. Questo segna l'inizio dell'era
dell'informatica moderna.
LE GENERAZIONI
Ogni computer fa parte di una [Link] generazione è un periodo storico
caratterizzato da invenzioni e miglioramenti nel campo dell’informatica, in cui si registrano
sviluppi tecnologici significativi che segnano il progresso delle capacità di calcolo e delle
architetture dei computer. Ogni generazione è definita da un'innovazione chiave, come
l’introduzione di nuovi componenti hardware, software o paradigmi tecnologici, che ne
determinano le prestazioni, l'efficienza e le applicazioni. Questi cambiamenti hanno portato
all'evoluzione dei computer da macchine primordiali e ingombranti a dispositivi potenti,
compatti e sempre più accessibili, influenzando enormemente tutti gli aspetti della vita
quotidiana e delle attività professionali.

●​ Generazione: I computer di questa generazione sono i primi modelli elettronici,


sviluppati tra la fine degli anni '40 e l'inizio degli anni '[Link] avevano dimensioni
enormi, possedevano un elevato consumo energetico e un elevato costo.
Gli elementi tecnologici fondamentali di questa generazione erano i tubi a vuoto e le
valvole termoioniche, dispositivi elettronici che utilizzano il fenomeno dell'emissione
termoionica, dove un filamento riscaldato emette elettroni in un ambiente a vuoto.
Questi dispositivi controllano il flusso di corrente elettrica e venivano utilizzati nei
primi computer per fare operazioni logiche e amplificare segnali. Nei computer di
prima generazione, i tubi a vuoto erano usati per eseguire calcoli, ma erano
ingombranti e poco affidabili.
●​ Seconda Generazione: computer di dimensioni enormi, con un elevato costo, ma un
uso energetico inferiore.
Gli elementi tecnologici fondamentali di questa generazione erano i transistor
(strumento in grado di controllare il consumo energetico).
Con questo tipo, commercialisti, avvocati, medici, etc. iniziarono ad usare un
computer.
●​ Terza Generazione: computer grandi, costosi e dotati di memoria.
Gli elementi tecnologici fondamentali di questa generazione erano i processori (o
circuiti integrati/chip), componente elettronico che contiene circuiti integrati,
responsabili di eseguire specifiche funzioni come l'elaborazione dei dati o la gestione
della memoria.
●​ Quarta generazione: computer più piccoli e più economici.
Gli elementi tecnologici fondamentali di questa generazione è il microchip, piccolo
circuito elettronico contenuto in un chip di silicio, che integra numerosi componenti
elettronici (come transistor, resistori e condensatori) in un'area molto ridotta. Viene
utilizzato per eseguire funzioni specifiche in dispositivi elettronici.
LA MEMORIA
Definizione di memoria: capacità di un qualunque dispositivo di immagazzinare dati e
informazioni.
La memoria si misura in byte e multipli di byte. La particella più piccola di memoria è il “bit”
(binary digit, cioè sistema di numerazione binario).

Il sistema di misurazione della memoria è formato da:


BIT BYTE KILOBYTE MEGABYTE GIGABYTE TERABYTE PETABYTE
Particell 8 bit 1024 Byte 1024 1024 1024 1024
a più Kilobyte Megabyte Gigabyte Terabyte
piccola

La memoria si divide in:


●​ ram = ​ random access memory (memoria ad accesso casuale);
è la memoria di lavoro
è una memoria di tipo volatile (temporanea), (es. documento di word senza
salvarlo).
●​ rom = acronimo di read-only memory: memoria di sola lettura (si può solo leggere e
non modificare).
la memoria rom si può classificare in:
●​ Prom = programmable rom (memoria programmabile);
●​ Eprom = erasable prom (prom cancellabile);
●​ Eeprom = electrically eprom (eprom che consente di conservare dati anche
quando il dispositivo è spento);
●​ Earom = electrically – alterable rom (rom elettricamente modificabile) =
memoria che può essere letta e modificata elettricamente, ma le modifiche
sono più lente e meno frequenti.
●​ temporanee e di transito = aree di memoria in cui i dati vengono
temporaneamente memorizzati prima di essere trasferiti in memorie più
permanenti o ausiliarie. Ad esempio, quando si scarica una serie di file, essi
vengono prima memorizzati in una memoria di transito e successivamente
trasferiti in una memoria ausiliaria (USB, disco rigido, etc.). Questa
operazione è nota come buffering, ovvero il processo di trasferimento
temporaneo di dati in una memoria di transito prima che vengano spostati su
una memoria definitiva o permanente.
Le memorie di transito principali sono:
Memory cache: viene introdotta con il processore 80386. Immagazzina i dati
utilizzati di frequente, riducendo il tempo di accesso ad essi poiché consente
di recuperare rapidamente le informazioni che potrebbero altrimenti richiedere
tempo maggiore per essere recuperate dalla memoria principale o da altre
memorie ausiliarie.
buffer: accumula i dati in attesa di essere processati o trasferiti, evitando
interruzioni e garantendo una comunicazione più fluida tra i dispositivi.

operazione di buffering = trasferire su una memoria ausiliaria qualcosa.


masterizzare = copiare integralmente il contenuto di un disco.
MEMORIE DI TIPO MAGNETICO E MEMORIE DI TIPO OTTICO
Il primo tipo di memoria esterna esistita è la scheda perforata, una specie di cartoncino della
dimensione di circa metà di un foglio a4. Essa riusciva a contenere qualche bit di memoria,
ed era usata principalmente negli uffici anagrafe.

Esistono due grandi famiglie di memoria:


●​ Quelle di tipo magnetico: questo tipo di memoria garantiva l’accesso alla memoria in
modo sequenziale (se si voleva individuare un file bisognava cercarlo con i tasti
avanti e indietro)
La memoria di tipo magnetico era il nastro magnetico (il nastro contenuto nelle
videocassette).
●​ Quelle di tipo ottico: questo tipo di memoria garantiva un enorme risparmio di tempo
grazie all’introduzione del gap (“checkpoint” che divideva la memoria in settori)
Un tipo di memoria di questo tipo era il disco magnetico (floppy disk), che venne
sostituito dal CD, in modo da riuscire ad immagazzinare file MP3. Successivamente i
DVD sostituirono i CD, riuscendo a memorizzare anche file MP4. Infine, il blu-ray
sostituì il DVD, riuscendo ad aumentare la qualità video, portandola all’HD.

Oggi, sia le memorie magnetiche sia quelle ottiche sono state in gran parte sostituite da
memorie allo stato solido, come le chiavette USB e gli SSD (Solid State Drive), che offrono
una maggiore velocità di accesso ai dati, maggiore resistenza agli urti e dimensioni più
compatte.
Nonostante ciò, supporti ottici come i DVD e i Blu-ray vengono ancora utilizzati in ambito
cinematografico o per l'archiviazione a lungo termine, grazie alla loro buona stabilità nel
tempo.

PERIFERICHE DI INPUT E OUTPUT


Periferica di input = tutto ciò che permette al dispositivo di acquisire informazioni.
Periferica di output = tutto ciò che permette al dispositivo di mostrare il risultato della propria
elaborazione all’esterno.
Periferiche di input/output = tutte le periferiche che possono funzionare sia da input che da
output.

Monitor = input
Scanner = output
Modem WIFI = input e output: modulatore demodulatore (trasforma da digitale ad analogico
in modo da far viaggiare i messaggi sulla linea analogica)
LE STAMPANTI
Le stampanti si dividono in due grandi categorie: a impatto e non ad impatto.

Le stampanti a impatto si dividono in stampanti ad aghi, sfera e margherita.


La stampante ad aghi usava dei fogli molto lunghi, con un carattere predefinito, perché era
formato da puntini (aghi). Il carattere era brutto, e più aghi aveva la stampante più era bello.
Le stampanti a impatto erano monodirezionali, cioè che stampavano andando da destra a
sinistra, poi tornavano a sinistra e infine riprendevano la stampa da destra a sinistra,
successivamente si evolsero e iniziarono a stampare da sinistra a destra e da destra a
sinistra, risparmiando il doppio del tempo.

Le stampanti moderne (laser, getto di inchiostro) sono tutte a non impatto.


Le stampanti a non impatto si dividono in:
●​ A caldo;
●​ A freddo.
Le stampanti laser sono a caldo e quelle a getto di inchiostro sono a freddo.
Si chiamano a caldo le stampanti che usano il calore per stampare. Però, anche se le
stampanti a inchiostro sono a freddo, il foglio esce dalla stampante caldo perché la
stampante usa il calore per sciogliere l’inchiostro.

Le stampanti a getto d’inchiostro sono molto diffuse in ambito domestico perché hanno un
costo contenuto e garantiscono una buona qualità di stampa, anche a colori. Tuttavia, le
cartucce d’inchiostro possono esaurirsi rapidamente e asciugarsi se non usate per lunghi
periodi.

Le stampanti laser, invece, sono spesso utilizzate in uffici o ambienti professionali perché
sono più veloci, precise e convenienti per grandi volumi di stampa. Utilizzano un toner
(polvere finissima) che viene fissato al foglio tramite calore, garantendo stampe resistenti e
durature.

Esistono anche stampanti multifunzione, che combinano più dispositivi in uno solo:
stampante, scanner, fotocopiatrice e a volte anche fax.

Infine, negli ultimi anni si sono diffuse le stampanti 3D, che non stampano su carta, ma
creano oggetti tridimensionali partendo da materiali come plastica, resina o metallo. Queste
stampanti rappresentano un’evoluzione importante e trovano applicazioni in settori come
l’industria, la medicina, l’architettura e persino l’arte.
GLI ALGORITMI

Un algoritmo è una successione finita di passi contenenti delle istruzioni per risolvere un
problema o una classe di problemi.

L’algoritmo deve avere delle determinate caratteristiche:


●​ finito = inizio e fine;
●​ completo = deve essere concluso in tutte le sue parti;
●​ univoco = non deve lasciare spazio ad interpretazioni diverse da quelle che si
vogliono dare;
●​ deterministico = determinato in ogni sua parte.

Due algoritmi si dicono equivalenti quando per gli stessi dati in input corrispondono gli stessi
dati in output.

Due scienziati di nome Böhm e Jacopini crearono un teorema che si occupa degli algoritmi
equivalenti. Questo teorema afferma che un algoritmo può essere trasformato in uno
equivalente se fa uso di determinate strutture di controllo, esse sono sequenza, selezione e
iterazione o ciclo.
●​ Sequenza: una sequenza o un blocco di istruzioni da eseguire uno di seguito all’altra
(in modo lineare);
●​ Sezione: indica un bivio in cui si deve scegliere se fare una cosa oppure un'altra (se
è x fai questo, se è y fai quest’altro);
●​ Iterazione o ciclo: indica un blocco di istruzioni che viene ripetuto.

Le strutture di controllo sono fondamentali nella programmazione e costituiscono la base per


la scrittura di qualsiasi algoritmo o programma informatico. Ogni linguaggio di
programmazione moderno (come Python, Java, C++) permette di rappresentare queste tre
strutture con comandi specifici.

L'iterazione può essere di due tipi: determinata, quando si sa in anticipo quante volte deve
essere ripetuto il ciclo (ad esempio, "ripeti 10 volte"), oppure indeterminata, quando il ciclo si
ripete finché una certa condizione è vera (ad esempio, "ripeti finché il numero è maggiore di
zero").
METODI DI RICERCA
I metodi di ricerca sono procedure sistematiche utilizzate per trovare un elemento all’interno
di uno spazio di ricerca, cioè un insieme di possibili soluzioni. Si dividono in metodo
sequenziale e metodo dicotomico:
●​ Il metodo sequenziale avviene su un insieme non ordinato di dati, controllando gli
elementi uno alla volta.
●​ Il metodo dicotomico (o ricerca binaria) si applica su dati ordinati e divide
ripetutamente l’insieme a metà per trovare l’elemento.

METODI DI ORDINAMENTO
I metodi di ordinamento principali sono tre:
●​ Shellsort: algoritmo che migliora l’insertion sort confrontando elementi distanti tra
loro, usando un valore chiamato gap che si riduce ad ogni passaggio. Inizialmente
confronta elementi lontani, poi via via più vicini; quando il gap è 1, si comporta come
un normale insertion sort, inserendo ogni elemento nella sua posizione corretta nella
parte già ordinata della lista.
●​ Bubblesort: algoritmo semplice che confronta coppie di elementi adiacenti e li
scambia se sono nell’ordine sbagliato, ripetendo più volte il processo fino a quando
la lista è ordinata.
●​ Quicksort: algoritmo più efficiente che sceglie un elemento chiamato pivot e
riorganizza la lista in modo che tutti gli elementi inferiori al pivot siano a sinistra e
quelli maggiori a destra, quindi applica ricorsivamente lo stesso procedimento alle
due sottoliste.
SISTEMI DI NUMERAZIONE
●​ Binario: due cifre (0,1);
●​ Ottale: otto cifre (0,1,2,…, 7);
●​ Esadecimale: sedici cifre (0,1,2,…,9,a,b,c,…,f,10,11,12).
Il sistema di numerazione usato dai computer è il più semplice: quello binario (è il più
semplice perché è o acceso o spento, o è vero o è falso, o è aperto o è chiuso, etc.).

CALCOLI NEI SISTEMI DI NUMERAZIONE


Somma ottale
Quando si sommano 2 numeri la cui somma è maggiore di 7, si aggiunge 2. Si salta l’80 e il
90, il 180 e il 190, etc.
(si calcola in colonna, e ad ogni risultato “in verticale” si aggiunge 2).

Moltiplicazione ottale
Quando si moltiplicano 2 numeri si fa prima la moltiplicazione in sistema decimale, poi si
aggiunge il numero delle decine moltiplicato per 2 ed infine si aggiunge il numero delle
decine in più rispetto al risultato decimale moltiplicato per 2.

Sottrazione ottale
Quando si sottraggono 2 numeri la cui differenza è maggiore di 7, si toglie 2.

Trasformazione ottale – decimale / decimale - ottale


36610 =​66 : 8 = 45 (resto 6)
45 : 8 = 5 (resto 5)
5 : 8 = 0 (resto 4)
​ ​ ​ =4568

Trasformazione esadecimale – decimale / decimale – esadecimale


●​ Capire quante esadecine sono presenti nel numero decimale (numero decimale
diviso 16 con numero intero) (x);
●​ Moltiplicare il numero delle esadecine per 16 (y) e contare quanto manca al numero
decimale (z).

17731510 = ​ 177315 : 16 = 11082 (resto 3)


11082 : 16 = 692 (resto 10 (a16))
692 : 16 = 43 (resto 4)​ ​ = ab4a316
43 : 16 = 2 (resto 11 (b16))
2 : 16 = 0 (resto 2)
SISTEMI DI CODIFICAZIONE
Per codificazione si intende la trasformazione che subisce un’informazione per poter essere
elaborata.
Un informazione che ha subito il trattamento della codificazione si chiama “dato”.
Ci sono tre tipi di codificazione:
●​ BCD (Binary Code Decimal) = sistema di codificazione a 4 bit di tipo binario.
Dato che è un sistema a 4 bit, se si ottiene un numero a 3 cifre (o dimeno), si aggiunge uno
0 a sinistra per arrivare a 4 cifre.
●​ EBCDIC (Extended Binary Code Decimal Interchange Code) = sistema di codifica
dell'informazione a 8 bit, è alfanumerico. Questi 8 bit si dividono in 2 semibyte, quello
di sinistra è sempre 1111 e si chiama zonatura, quello di destra si codifica con il
sistema BCD, e si chiama numerico.
●​ ASCII (American Standard Code for Information Interchange) sistema di
codificazione a 7 bit e diventa ad 8 bit quando c’è un bit di parità o di controllo.

Il sistema ASCII è stato per molti anni lo standard più utilizzato per la codifica di caratteri nei
computer, soprattutto nei paesi anglofoni, e permette di rappresentare lettere, numeri,
simboli di punteggiatura e alcuni caratteri di controllo (come “invio” o “tabulazione”). Oggi,
però, è spesso sostituito da codifiche più avanzate come UTF-8, che fa parte della codifica
Unicode e permette di rappresentare caratteri di tutte le lingue del mondo, inclusi simboli
speciali, emoji e alfabeti non latini.
Il processo di codifica è fondamentale per permettere al computer di memorizzare, elaborare
e trasmettere correttamente le informazioni. La scelta del tipo di codifica dipende dal tipo di
dati da rappresentare (numerici, testuali, binari, ecc.) e dal contesto in cui vengono utilizzati
(ad esempio, comunicazioni di rete, file di testo, basi di dati, ecc.).
Inoltre, accanto alla codifica esiste anche il processo opposto chiamato decodifica, che
consiste nel trasformare i dati codificati nuovamente in informazione comprensibile all’uomo
o ad altri sistemi.
LA CPU
Central Processing Unit (unità centrale di elaborazione o di processo), è il processore
(l’elemento tecnologico fondamentale di terza generazione), esso viene definito il “cervello
del sistema”.

Essa si divide in 3 parti:


●​ ALU (arithmetic logic unit) = unità aritmetico logica, essa svolge le operazioni logiche
e di calcolo, esegue ciò che gli viene detto dalla CU. Viene chiamata anche “unità
esecutiva”.
●​ CU (control unit) = unità di controllo, essa ordina alla ALU ciò che deve fare, controlla
e coordina il flusso dei dati nel sistema di elaborazione. Viene chiamata anche “unità
di controllo”.
●​ RG (registri) = piccole memorie che servono a far funzionare più velocemente il
processore.
I registri (RG) si trovano all’interno del processore e sono estremamente veloci:
vengono utilizzati per memorizzare temporaneamente dati e istruzioni durante
l’esecuzione dei programmi. Alcuni registri hanno funzioni specifiche, come il registro
contatore di programma (PC), che tiene traccia dell’indirizzo della prossima
istruzione da eseguire.

La CPU comunica continuamente con la memoria principale (RAM) per prelevare dati e
istruzioni da elaborare. Per velocizzare questo processo, la CPU è spesso affiancata da una
memoria cache, anch’essa molto veloce, che funge da “ponte” tra la RAM e il processore.
Negli ultimi anni, le CPU sono diventate multi-core, ovvero contengono più unità di
elaborazione indipendenti (core) all’interno dello stesso chip. Questo consente di eseguire
più operazioni contemporaneamente, migliorando notevolmente le prestazioni del sistema,
soprattutto nelle applicazioni moderne che richiedono molta potenza di calcolo, come
videogiochi, grafica 3D o intelligenza artificiale.
PORTE DEI COMPUTER
Le porte dei computer sono ingressi per delle periferiche, in modo da collegare alla
macchina unità sia di input che di output.

PORTA PS2: (piccole porte rotonde antiche, una di colore verde e una viola) esse
nascevano con l’Idm2, una casa costruttrice di hardware di eccellenza; queste porte
collegavano mouse e tastiera al computer.
PORTA PARALLELA: antica porta che collegava la stampante. È monodirezionale.
PORTA SERIALE: antica porta che collegava il monitor. È bidirezionale.
PORTA ETHERNET: porta che consente di collegare il computer alla rete wi-fi. Essa collega
un cavo all’hub, uno smistatore a cui ogni luce corrisponde una macchina.
SCSI: una porta che collega periferiche ad alte prestazioni.
JACK: porta che collega qualsiasi periferica che opera nell’ambito acustico.
USB A: dispositivi mobile come computer, smart tv, console di gioco, lettori DVD, ecc.
USB B: utilizzato per collegare dispositivi periferici come stampanti, scanner e alcuni dischi
rigidi esterni a computer o laptop.
USB C: sostituisce i precedenti connettori USB. Questa tipologia di cavo consente di
trasmettere dati, audio e video, può trasferire file, collegare altoparlanti o persino funzionare
come uscita video per un monitor.
HDMI: porta che collega monitor ad alta definizione.
SCART: vecchia porta che collegava il videoregistratore e precedeva l’HDMI.
IL SISTEMA OPERATIVO
Il sistema operativo è il software più importante della macchina, infatti, fa parte del software
di base.
Esso è un insieme organizzato di programmi che gestisce l’uso delle risorse del computer.
Fa da interfaccia tra macchina e utente, è il software che permette di interagire con la
macchina.

IL DOS
Una volta, ogni casa costruttrice di computer, utilizzava un proprio sistema operativo per
ogni macchina costruita da loro, questo fino all’anno 1982, quando una casa di software, di
nome Microsoft, inventa un sistema operativo che chiama MS DOS (Microsoft Disk
Operating System), questo sistema operativo occupava da 1 a 8 megabyte di memoria.
Esso era 640 kilobyte di ram, e 384 kilobyte, meno 16 byte di rom.
Questo nuovo sistema operativo, venne valutato dalla casa più importante di hardware, IBM,
che si accorse che esso era migliore di tutti gli altri sistemi operativi di quel tempo, allora
contattò la Microsoft chiedendogli di usare il sistema operativo DOS come base per le
proprie macchine. A quel punto Microsoft accettò, però a costo di una percentuale di
guadagno per ogni macchina che vendeva la casa.
A questo punto, tutte le altre case di hardware iniziarono a fallire, quindi si cercò di fare in
modo che tutte le altre marche usassero il software per le loro macchine, sempre a costo di
una percentuale per la Microsoft.
Quindi il capo di Microsoft, Bill Gates, diventava più ricco ad ogni nuovo computer acquistato
in qualsiasi parte del mondo che utilizzasse DOS.
MS-DOS era un sistema operativo monotasking, il che significa che era in grado di eseguire
un solo processo alla volta. Questa caratteristica lo rendeva relativamente semplice, ma
limitato rispetto ai sistemi operativi successivi che supportavano il multitasking.

COMANDI DOS
Con DOS, quando si accendeva la macchina, compariva una scritta: “C:\” e qui si doveva
inserire dei comandi per accedere alle operazioni da svolgere dal computer.
Directory: contenitore di file e altre cartelle, equivale a “cartella” di Windows.
●​ Rd = elimina directory;
●​ Del = cancella il file;
●​ Rename = rinomina il file;
●​ Md = Crea directory;
●​ Cd = Cambia directory;
●​ Copy = copia file in un’altra posizione;
●​ Dir = visualizza il contenuto della directory;
●​ Fc = controlla contenuto file;
●​ Print = stampa file di testo;
●​ Copy con = crea file di testo;
●​ Find = cerca caratteri nel file;
●​ Erase = elimina uno o più file;
●​ If = esegue un’elaborazione condizionale in un programma batch;
●​ Diskcopy = copia il contenuto di un disco floppy su un altro;
●​ Exit = termina il programma [Link] (interprete dei comandi);
●​ Format = formatta un disco per l’utilizzo con Windows;
WINDOWS 95
Il DOS subisce evoluzioni negli anni, e dura fino al 1995 (14 anni).

Windows nasce come software applicativo, cioè un’applicazione che girava sul sistema
operativo DOS. Dopo qualche anno (nel 1995) esso diventa sistema operativo, e quindi
sostituisce DOS. Windows introduce novità importanti, come i colori, i primi giochi, e tutte
quelle cose che rendono l’esperienza di uso del computer più “piacevole”.
Windows è un sistema operativo
●​ Multitasking: può eseguire più applicazioni contemporaneamente;
●​ Multiutente: può essere usato da più utenti contemporaneamente;
●​ User Friendy: impatto amichevole.
In Windows, il DOS, è ancora presente, sotto forma di programma di utilità.
LINGUAGGI DI PROGRAMMAZIONE
I linguaggi di programmazione si dividono in compilatore e interprete, che sono tutti e due
programmi traduttori, cioè che traducono un linguaggio da alto livello a basso livello: il
linguaggio di alto livello è quello utilizzato dal programmatore per programmare la macchina,
si chiama di alto livello perché si avvicina al modo di pensare dell’uomo, e tanto più si
avvicina al modo di pensare dell’uomo più sarà considerato di livello alto, al contrario, tanto
più si distacca dal modo di pensare dell’uomo più sarà considerato di livello basso.
Sia il compilatore che l’interprete traducono da alto a basso livello;
●​ Il compilatore traduce l’intero programma (in blocco) in basso livello;
●​ L’interprete traduce un'istruzione alla volta in basso livello.

Ci sono diverse tipologie di programma di traduzione, i linguaggi possono essere:


●​ di tipo imperativo, un linguaggio nel quale il programmatore da le istruzioni alla
macchina sotto forma di comando (con la voce del verbo imperativo);
●​ di tipo strutturato, i linguaggi di questo tipo vengono chiamati così perché usano le
strutture di controllo di Böhm e Jacopini;
●​ di tipo orientati agli oggetti, che utilizzano dei sottoprogrammi e devono avere delle
caratteristiche fondamentali: ereditarietà, polimorfismo ed incapsulamento.

Esempi di programma di traduzione


Imperativi Strutturati Orientati all’oggetti
C Pascal Python
COBOL ALGOL Java
Assembly Modula-2 JavaScript
TEORIA DELLA COMUNICAZIONE E MEZZI DI TRASMISSIONE
La comunicazione è il processo attraverso cui informazioni, idee, emozioni o dati vengono
trasmessi tra due o più soggetti, utilizzando parole, gesti, scrittura o altri mezzi.
Un aspetto importante della comunicazione è che, più un messaggio viene tramandato da
persona a persona, maggiore è la probabilità che perda parte del suo significato originale o
venga modificato (fenomeno noto anche come “effetto telefono senza fili”).

I SEI ASPETTI FONDAMENTALI DELLA COMUNICAZIONE


Per comprendere il processo comunicativo, Roman Jakobson ha individuato sei elementi
fondamentali:
1.​ Mittente: chi invia il messaggio.
2.​ Messaggio: l’informazione o contenuto che si vuole trasmettere.
3.​ Destinatario: chi riceve il messaggio.
4.​ Contesto: l’insieme di condizioni, situazione e ambiente in cui la comunicazione
avviene, che influisce sull’interpretazione del messaggio.
5.​ Codice: il sistema di segni e regole usato per creare il messaggio (es. una lingua, un
codice Morse, linguaggio visivo).
6.​ Canale: il mezzo fisico o il veicolo tramite cui il messaggio viene trasmesso (es.
voce, telefono, email, onde radio).

MEZZI TRASMISSIVI
Per far viaggiare le informazioni su grandi distanze, è necessario convertirle in segnali
elettrici o elettromagnetici, che vengono poi adattati al canale di trasmissione utilizzato.
La velocità di trasmissione nelle reti di comunicazione si misura in bit per secondo (bps) e
suoi multipli (Kbps, Mbps, Gbps).
Il parametro fondamentale che caratterizza un mezzo trasmissivo è il throughput, ovvero la
quantità di dati effettivamente trasmessa e ricevuta nell’unità di tempo, che può essere
influenzata da ritardi, perdite e interferenze.

PRINCIPALI MEZZI TRASMISSIVI


●​ Doppino telefonico​
Composto da due fili di rame intrecciati, originariamente sviluppato per la
trasmissione vocale, oggi usato anche per trasmettere dati digitali (es. ADSL).​
Vantaggi: costo basso, ampia diffusione.​
Svantaggi: bassa velocità e maggiore suscettibilità alle interferenze.
●​ Cavo coassiale​
Un filo di rame centrale isolato da un materiale dielettrico, circondato da una
schermatura metallica intrecciata. Usato per TV via cavo e reti locali.​
Vantaggi: maggiore capacità rispetto al doppino.​
Svantaggi: più costoso e meno flessibile.
●​ Fibra ottica​
Utilizza impulsi luminosi per trasmettere dati su lunghe distanze con altissima
velocità e capacità. È immune alle interferenze elettromagnetiche.​
Vantaggi: velocità molto elevata, grande capacità di trasmissione, bassa
attenuazione del segnale.​
Svantaggi: costo iniziale più elevato, fragilità fisica.
EVOLUZIONE DELLE CONNESSIONI INTERNET
●​ Connessioni analogiche​
Inizialmente, le connessioni a internet erano basate su linee telefoniche analogiche.
○​ Si pagava sia un abbonamento fisso che un costo a consumo.
○​ Il numero di connessioni simultanee era limitato: superato un certo limite, i
nuovi utenti venivano disconnessi.
○​ Scaricare file pesanti era lento e soggetto a interruzioni.
●​ ISDN (Integrated Services Digital Network)​
Introdotta per superare alcune limitazioni del doppino telefonico analogico:
permetteva di "sdoppiare" la linea telefonica, consentendo di usare
contemporaneamente telefono e internet.​
Tuttavia la velocità rimaneva ancora limitata e non adatta a grandi numeri di utenti.
●​ ADSL (Asymmetric Digital Subscriber Line)​
Con la ADSL è iniziata l’era della banda larga, con velocità molto superiori e
possibilità di gestire un numero maggiore di connessioni contemporaneamente.​
Il traffico dati è "asimmetrico": la velocità di download è più alta di quella di upload,
ottimizzata per l’uso tipico di internet.
●​ Fibra ottica​
La tecnologia attuale più avanzata, che utilizza impulsi luminosi per offrire velocità
molto elevate, stabilità e grandi capacità di traffico simultaneo, consentendo servizi
come streaming HD, videoconferenze, cloud computing, e altro.
PROCESSORI INTEL
I processori Intel sono tra i più diffusi e apprezzati al mondo grazie alle loro prestazioni
elevate, affidabilità e compatibilità con un’ampia gamma di software e hardware. Vengono
utilizzati in molti ambiti, dai computer domestici a quelli professionali, fino ai server e ai
dispositivi embedded.
Intel ha costantemente innovato nel tempo, sviluppando architetture e tecnologie che
migliorano velocità, efficienza energetica e capacità di elaborazione, adattandosi a esigenze
diverse come il gaming, la produttività, l’intelligenza artificiale e il cloud computing.

●​ 4004 (1971)​
Primo microprocessore commerciale a 4 bit. Bus dati a 4 bit, bus indirizzi a 12 bit. Fu
una rivoluzione che segnò l’inizio dell’era dei microprocessori.
●​ 8008 (1972)​
Processore a 8 bit con bus dati a 8 bit e bus indirizzi a 14 bit. Permise elaborazioni
più complesse rispetto al 4004.
●​ 8086 (1978)​
Processore a 16 bit (bus dati a 16 bit, bus indirizzi a 20 bit). È la base per
l’architettura x86 ancora oggi utilizzata.
●​ 8088 (1979)​
Evoluzione dell’8086, con bus dati ridotto a 8 bit (bus indirizzi sempre a 20 bit).
Questa modifica lo rese più compatibile con le tecnologie dell’epoca.
●​ 80286 (1982)​
Processore a 16 bit, bus dati a 16 bit e bus indirizzi a 24 bit. Introdusse la modalità
protetta, migliorando la gestione della memoria.
●​ 80386 (1985)​
Processore a 32 bit, con bus dati e indirizzi a 32 bit. Introdusse la memory cache
(memoria temporanea veloce) e la gestione della memoria virtuale.
●​ 80486 (1989)​
Processore a 32 bit, bus dati e indirizzi a 32 bit, con integrazione del coprocessore
matematico (FPU) sul chip, migliorando notevolmente le prestazioni nei calcoli.
●​ Pentium (1993)​
Voleva essere chiamato 80586, ma per motivi di marchio è stato chiamato Pentium
(dal greco penta = cinque). Processore a 32 bit, con bus dati a 64 bit e bus indirizzi a
32 bit, offrendo un significativo incremento di prestazioni.
LE RETI DEI COMPUTER
Una rete è un collegamento tra due o più computer. Una rete serve a scambiare e
condividere dati, informazioni, software e hardware.

Tipologie: estensione/capacità di copertura di una rete.


●​ Pan (personal area network) > la più piccola, collegamento hotspot > rete personale
●​ Lan (local area network) > la più sicura perché ha un collegamento fisico > rete
locale > es. collegamento via ethernet
●​ Wlan (wireless lan) > lan senza fili > rete locale > es. rete di casa
●​ Man (metropolitan area network) > grande > es. Brescia Wifi
●​ Wan (wide area network) > rete di tipo geografico, cioè riesce a coprire distanze
molto elevate (es. copre una regione)
●​ Gan (global area network)
●​ Internet (International network) > “la rete delle reti” > la più grande > rete
internazionale > formata dall’insieme delle altre reti > nasce nella guerra fredda (anni
60) per scopi militari (i soldati americani avevano l’esigenza di scambiarsi dati e
informazioni senza essere intercettati), viene a conoscenza della popolazione
durante gli anni 90.

Quando ci sono stati i primi collegamenti con internet, funzionava tutto in modo analogico,
ed oltre all’abbonamento annuale, si pagava anche a consumo. Infatti, se si voleva guardare
un film, per esempio, bisognava pagare per l’abbonamento a Sky, e poi bisognava pagare il
prezzo per il film.
Inoltre, i collegamenti potevano contenere un certo numero di connessioni: se potevano
contenere, per esempio 5000 utenti, e si entrava per primi, quando si connetteva il 5001
utente, si veniva buttati fuori, quindi se si faceva il download di qualcosa (che duravano
anche ore), tutto il lavoro veniva perso.
Questo problema si risolve con il collegamento isdn (Integrated Services Digital Network),
che dava la possibilità di “sdoppiare” la linea telefonica, cioè connettersi ad internet e avere
la linea del telefono libera. Però era ancora una connessione lenta e non riusciva a
contenere il numero di persone che si collegavano. Questo problema si risolve con la linea
adsl (Asymmetric Digital Subscriber Line), quella che viene anche definita “banda larga”:
essa riusciva a contenere grandissime quantità di connessioni, ma mai quante e così veloci
come quella di oggi, cioè la fibra ottica.
EXCEL
Excel è un'applicazione che fa parte di un pacchetto applicativo che si chiama Office (Word,
Access, powerpoint, Outlook), se lo si vuole installare bisogna comprarlo.
Word > editore di testi (programma di videoscrittura)
Access > database (gestore di archivi, è un programma che permette di gestire tante
informazioni, usato da biblioteche, rivenditori di dischi (es. Feltrinelli), ecc..)
Excel > foglio di calcolo elettronico,
Excel si presenta come un enorme reticolato formato da righe e colonne, le righe sono
rappresentate da numeri, le colonne da lettere. Le celle sono le intersezioni fra righe e
colonne. La cella è predisposta a contenere dati e informazioni.

In Excel, ogni cella può contenere testo, numeri, formule o funzioni. Le formule permettono
di eseguire calcoli automatici (ad esempio somme, medie, moltiplicazioni), mentre le funzioni
sono formule predefinite da Excel che facilitano operazioni complesse, come ad esempio
=SOMMA(), =MEDIA(), =SE(), ecc.
Excel è particolarmente utile per la gestione di dati, la creazione di tabelle e grafici, e viene
utilizzato in moltissimi ambiti, come contabilità, statistica, analisi di bilancio, gestione di
inventari, e persino per attività personali, come tenere traccia delle spese.
Ogni file Excel è chiamato cartella di lavoro, e può contenere più fogli di lavoro, che sono le
singole pagine del reticolato di celle. Gli utenti possono anche formattare le celle (colori,
bordi, tipi di carattere) per rendere più leggibili i dati o evidenziare informazioni importanti.
Infine, Excel consente anche l’uso di strumenti avanzati come filtri, tabelle pivot, macro e
convalida dei dati, utili per analisi approfondite e automatizzazione di compiti ripetitivi.
ERRORI DI PROGRAMMAZIONE
Programmazione: insieme di regole che devono essere conosciute dal programmatore per
dialogare con la macchina
Algoritmo: successione di passi o istruzioni completa, finita, univa e deterministica.

Un programmatore quando scrive un algoritmo commette degli errori più semplici o più
difficili da individuare.
Classici errori che vengono commessi in programmazione sono:
1.​ Errori sintattici
Sono errori legati alla grammatica del linguaggio di programmazione utilizzato.
●​ Facili da individuare, perché generalmente il compilatore o l’interprete li
segnala subito.
●​ Esempi:
○​ Dimenticare il punto e virgola alla fine di un’istruzione C/C++/Java.
○​ Usare parentesi non bilanciate
○​ Scrivere una parola chiave in modo errato (es. fucntion invece di
function in JavaScript).
2.​ Errori logici
Sono errori nella logica dell’algoritmo: il programma è sintatticamente corretto, ma
non fa ciò che dovrebbe.
●​ Difficili da individuare, perché il programma si esegue correttamente ma
produce risultati sbagliati.
●​ Esempi:
○​ Usare l’operatore + invece di -.
○​ Calcolare la media tra due numeri e dimenticare di dividere per due.
○​ Si individuano con il testing, cioè confrontando i risultati ottenuti con
quelli attesi.
3.​ Errori semantici
Simili a quelli logici, ma derivano da un uso improprio delle istruzioni o da una cattiva
interpretazione del significato di un’istruzione o concetto.
●​ Esempi:
○​ Utilizzare un ciclo for quando sarebbe necessario un while, ottenendo
un comportamento inatteso.
○​ Chiamare una funzione con parametri nell’ordine sbagliato.
4.​ Errori di Runtime (esecuzione)
Sono errori che si verificano durante l’esecuzione del programma e che possono
causarne l’arresto.
●​ Possono dipendere da:
○​ Conflitti tra applicazioni.
○​ Accesso a memoria non valida.
○​ Divisione per zero.
○​ Accesso a file inesistenti.
●​ Si manifestano con messaggi di errore, crash o comportamenti imprevedibili.
●​ Esempi:
○​ In Java: NullPointerException quando si tenta di accedere a un
oggetto che è null.
○​ In Python: ZeroDivisionError
STRUMENTI DI SUPPORTO: IL DEBUGGER
Il debugger è uno strumento fondamentale che consente di:
●​ Eseguire il codice passo per passo.
●​ Controllare il valore delle variabili durante l’esecuzione.
●​ Mettere dei breakpoint per fermare l’esecuzione in punti specifici.
●​ Identificare facilmente la posizione e la causa degli errori.

ASSEMBLY
Assembly serve per scrivere programmi che controllano direttamente l’hardware del
computer, con istruzioni molto dettagliate e precise. Ogni istruzione Assembly corrisponde
quasi 1 a 1 a un'istruzione del processore.

Il suo compilatore è Assembler (programma che converte il codice Assembly in linguaggio


macchina).

Assembly si divide in 4 parti:


1.​ Campo etichetta: Nome simbolico per riferirsi a un punto nel codice (segnaposto)
2.​ Campo operandi: I dati o registri su cui l’operazione agisce (valori o registri)
3.​ Campo codice operativo: L'operazione da eseguire (istruzione)
4.​ Campo commento: Spiegazione scritta per il programmatore (spiegazione)

Assembly si differenzia dagli altri programmi perché è molto semplice e si avvicina parecchio
al basso livello (pur essendo di alto livello), inoltre offre un controllo diretto e dettagliato
dell’hardware del computer, come la CPU e la memoria. Assembly utilizza codici mnemonici
che corrispondono quasi direttamente alle istruzioni macchina, permettendo programmi più
efficienti, più compatti e con un comportamento deterministico.
STRUTTURA DEL SISTEMA OPERATIVO
La struttura del sistema operativo è a buccia di cipolla: ha molteplici strati.
Lo strato principale, il nucleo si chiama kernel, e gestisce il cuore del sistema (la CPU), la
memoria e l’input/output. Poi ci sono il gestore della memoria, il gestore dei dispositivi di
input/output (periferiche), il gestore del file system, l’interfaccia utente, lo scheduler, e shell
(o interprete dei comandi).
●​ Kernel è il componente più interno e centrale (nucleo), è responsabile del controllo e
della gestione di tutte le risorse hardware del sistema, della memoria principale e
delle periferiche, è il livello più alto che più si avvicina al linguaggio hardware.
●​ Lo strato successivo è costituito dal gestore della memoria, esso si occupa di gestire
l’allocazione della memoria RAM ai processi in esecuzione inoltre gestisce anche la
memoria virtuale.
●​ Successivamente si trova il gestore delle periferiche, che permette la comunicazione
fra il sistema e le periferiche esterne utilizzando i driver per tradurre le richieste
generiche in comandi specifici.
●​ Poi c’è il file system, che organizza, memorizza e recupera i file su dispositivi di
memorie esterne.
●​ Proseguendo si trova l’interfaccia utente, lo strato più esterno e fornisce l’interazione
diretta tra l’utente e il sistema operativo.

Lo scheduler è una componente del sistema operativo che decide quale processo deve
essere eseguito dalla CPU e quando. Esso ha la funziona di gestire la CPU tra i vari
processi in esecuzione o in attesa, in modo efficiente e secondo una certa politica.

La shell è l’interfaccia tra l’utente e il sistema operativo. Permette di inviare comandi al


sistema operativo, spesso in forma testuale. Ha la funzione di interpretare i comandi digitati
dall’utente, eseguire script (comandi scritti in un certo linguaggio) e lanciare programmi.
VIRUS E ANTIVIRUS
Un virus è un frammento di software studiato ad hoc.
Un virus è utile a chi vende antivirus. Chi crea un virus cerca di farlo diffondere il più
possibile. Più computer vengono infettati, più gente ha bisogno di un antivirus.

Uno dei virus più comuni è Trojan Horse, funziona ingannando l’utente facendogli credere
che sia una cosa sicura, il suo punto debole è che viene mandato durante la notte. Una volta
che il virus entra nella macchina, esso inizierà a mandare mail ai contatti, e così via via e si
diffonde.

Un altro virus è Worm, esso è autoreplicante, e si diffonde automaticamente attraverso le


reti, senza bisogno dell’intervento dell’utente. Può rallentare i sistemi, consumare banda e, a
volte, installare malware aggiuntivo.

Un altro ancora è Cryptolocker: un malware molto cattivo creato da cracker russi tra i migliori
al mondo. Questo virus è diffuso tramite email con allegati o link infetti: quando la vittima
apre l’allegato, il malware crittografa i file del computer e mostra una richiesta di riscatto,
solitamente in Bitcoin (moneta non rintracciabile), per ottenere la chiave di decrittazione. Il
suo obiettivo è estorsivo, non distruttivo, ma può rendere i dati irrecuperabili senza la chiave.
Esso è un ransomware (un tipo di trojan).

●​ Hacker: persona con grandi conoscenze informatiche, che esplora i sistemi per
curiosità o per metterne alla prova la sicurezza, senza causare danni.
●​ Cracker: individuo che viola i sistemi informatici con intenzioni criminose, come
rubare dati o denaro, o danneggiare.
●​ Lamer: persona che finge di essere un hacker o un cracker, ma non ha vere
competenze tecniche e spesso usa strumenti creati da altri.

Antivirus
●​ Norton è un antivirus sviluppato da Symantec (oggi Gen Digital) che protegge il
computer da virus, malware, spyware e ransomware, controllando file, email e siti
web per bloccare minacce e mantenere il sistema sicuro.
●​ McAfee è un antivirus che protegge il computer da virus, malware, spyware e
ransomware, offrendo anche sicurezza web e protezione della privacy online.
●​ NOD32 è un antivirus sviluppato da ESET che protegge il computer da virus,
malware, spyware e phishing, offrendo scansioni veloci e basso consumo di risorse
di sistema.
●​ Avast è un antivirus che offre protezione in tempo reale contro virus, malware,
spyware e ransomware, con funzioni aggiuntive come scansione web, firewall e
protezione della privacy online.
●​ VirIT è un antivirus italiano sviluppato da TG Soft, che protegge il computer da virus,
malware, trojan e ransomware, offrendo scansione e rimozione delle minacce in
modo semplice e leggero.
Spyware: quando si fa una ricerca di un prodotto e vengono mostrate molte notifiche su
esso. Letteralmente “spia”, esso spia le proprie abitudini per indurre l’utente a comprare un
prodotto. Non è un virus.

Fishing: notifica che ti fa credere di aver vinto un prodotto, quindi si mettono i dati di una
carta di credito e vengono rubati tutti i soldi su di essa. Non è un virus.
TOPOLOGIA DELLE RETI
Topologia: architettura e disposizione fisica delle macchine. Esistono diverse topologie di
rete:
●​ ad albero: a ciascun nodo ne sono collegati altri due di livello inferiore
●​ a bus: tutti i computer sono collegati ad un unico cavo
●​ ad anello: i nodi sono disposti a forma di cerchio creando un anello
●​ a stella: tanti nodi figli, tutti connessi a un nodo padre che si trova al centro della
stella
●​ peer-to-peer: tutti i nodi sono equivalenti e possono agire sia come client che come
server
●​ a maglia: tutti i nodi sono collegati tra loro e ciascuno di essi ne riesce a raggiungere
un altro attraverso un solo passaggio.

Architettura server/client
Client: (cliente) è il computer o programma che chiede un servizio o un’informazione
Server: (servente) è il computer o programma che fornisce il servizio o l’informazione
richiesta. Un computer server ha una capacità di magazzinaggio elevata, e generalmente ha
2 hard disk per la salvaguardia dei dati.
L’architettura server/client permette di condividere software e hardware a più macchine.
L’architettura server/client può essere:
●​ dedicato: fa solo ed esclusivamente le funzioni da servente
●​ non dedicato: fa anche da client

Il client può essere terminale (composti solo da monitor e tastiera > il server manda gli
output), e non terminale (funziona autonomamente e poi condivide i dati al server, se il
server è spento esso lavora in locale, e poi alla riaccensione del server, tutti i dati vengono
condivisi).

Il server è la prima macchina ad essere accesa e l’ultima ad essere spenta (non si spegna
quasi più ormai).
IL MODELLO ISO/OSI
È uno standard concettuale a 7 livelli che definisce come i sistemi di comunicazione
possano scambiarsi i dati in una retta. Quindi suddivide la complessità delle comunicazioni
di rete in livelli funzionali, ognuno di questi livelli svolge un compito specifico affinché venga
garantita l’operabilità tra i vari sistemi. Iso/osi è un acronimo che significa International
Standard Organization Open System Interconnection: è un protocollo standard per
l’interconnessione dei sistemi aperti.
Il modello viene sviluppato nel 1977 perché in quegli anni le reti informatiche erano gestite
soprattutto a livello governativo.

È strutturato in 7 livelli, a buccia di cipolla (gli strati sono adiacenti), dal basso verso l’alto:
●​ Livello 1: Fisico: Gestisce la trasmissione e ricezione di segnali elettrici e ottici e si
occupa delle caratteristiche fisiche del collegamento.
●​ Livello 2: Collegamento dati: Garantisce un trasferimento affidabile dei dati sul livello
fisico, facendo apparire la trasmissione come priva di errori.
●​ Livello 3: Rete: Si occupa dell'instradamento dei pacchetti attraverso reti
interconnesse, scegliendo il percorso migliore.
●​ Livello 4: Trasporto: Gestisce il trasferimento dei dati end-to-end, assicurando
l'affidabilità e il controllo degli errori.
●​ Livello 5: Sessione: Controlla le connessioni tra applicazioni, stabilendo, gestendo e
terminando le sessioni di dialogo.
●​ Livello 6: Presentazione: Traduce i dati tra il formato delle applicazioni e un formato
standard, occupandosi di crittografia, formattazione e compressione.
●​ Livello 7: Applicazione: È il livello più vicino all'utente e fornisce l'accesso ai servizi di
rete, gestendo i protocolli specifici delle applicazioni come HTTP, FTP, SMTP.

Possono comunicare fra di loro solo i livelli adiacenti (il fisico può comunicare con il
collegamento dati, ma non con il livello rete senza passare al data link).

Il modello ISO/OSI è stato inventato per creare uno standard universale che permettesse a
dispositivi di reti diverse di comunicare tra loro, superando la frammentazione delle reti
proprietarie.
PROTOCOLLO TCP/IP
Transmission Control Protocol e "IP" sta per Internet Protocol
Stabilisce le regole che rendono possibile la comunicazione e il trasferimento di dati in
internet sulla maggior parte delle reti, senza questo mandare e-mail sarebbe impossibile.
E’ formato da 4 livelli:
-​ Network: comprende il livello fisico e data link del modello ISO/OSI
-​ Internet/rete: livello di rete
-​ Trasporto: trasporto
-​ Applicazione: comprende i livelli di sessione, presentazione e applicazione
L’indirizzo IP si occupa dell'indirizzamento dei dati, che vengono chiamati pacchetti,
attraverso la rete, e si assicura che raggiungano la destinazione corretta. Invia pacchetti
senza garantire l’arrivo o l’ordine.
Il transmission control stabilisce una connessione logica e affidabile per la trasmissione ed è
responsabile della suddivisione dei dati in pacchetti per la trasmissione e verifica che il
pacchetto sia arrivato integro a destinazione.
HTML
-​ hyper textual mark-up language
Non è un linguaggio di programmazione. È stato inventato intorno agli anni ‘90 da Tim
Berners-Lee.
HTML è un linguaggio marcatore: abbiamo bisogno, per poter lavorare, di un editore di testi
e di un browser. Lavora in tutti i sistemi operativi.
L’editore di testi di windows è block notes perché fa parte del software di base (non Word
che fa parte di un software applicativo). In Linux si usa Pico. In iOS si usa Text Edit.
Questo linguaggio è stato inventato da un professore universitario perché voleva che si
volessero scambiare ricerche e lavori fatti in un'università con altre università del mondo.
Non avrebbe mai pensato di raggiungere un successo così grande (vinse il premio Turing).

Per ipertesto si intende un collegamento tra più pagine tramite una parola chiave

Per lavorare in HTML bisogna lavorare in blocco note, e salvare il file in un formato
particolare.
Il codice inizia con <html> e finisce con </html>
Bisogna conoscere elementi e tag.

Tag (<; >) il testo deve essere compreso in questi simboli e si parte con la scritta html.
Elemento: ciò definisce cosa deve essere visualizzato nella pagina web.
Attributi: elementi che definiscono una caratteristica fisica dell’elemento (come il grassetto).
Lista non ordinata (puntini): tag <ul> </ul>, ad ogni elemento <li> </li>
Lista ordinata (numeri): tag <ol> </ol>, ad ogni elemento <li> </li>

<head> serve a scrivere informazioni sulla pagina ma non contenuti che si vedono sullo
schermo
<title> è contenuto in <head> e definisce il nome della pagina
<body> tutto ciò che si vede sul sito

<h1> titoli più importanti


<h2> - <h6> titoli sempre meno importanti
<p> paragrafo (testi normali)
<hr> linea orizzontale
<br> a capo
<u> sottolineato
<i> corsivo (<em> è uguale ma migliore - testo enfatizzato)
<b> grassetto (<strong> è uguale ma migliore - testo importante)
DISPOSITIVI HARDWARE NECESSARI PER LA COMUNICAZIONE IN RETE

Dispositivo Funzione principale Livello OSI Gestione del traffico

Hub Collega più 1 (fisico) Non intelligente;


dispositivi in una invia i dati a tutti i
singola rete locale dispositivi connessi,
(LAN) e ripete i dati creando potenziale
a tutte le porte. traffico non
necessario.

Switch Collega più 2 (collegamento Intelligente;


dispositivi in una dati) ottimizza il traffico di
LAN, ma rete instradando i
invia i dati solo al dati in modo
dispositivo efficiente.
destinatario
specifico utilizzando
gli indirizzi MAC.

Modem Modula e demodula 1/2 Stabilisce la


i segnali (digitali in connessione fisica
analogici e e la conversione del
viceversa) per segnale con l’ISP
connettere la rete
locale a Internet
tramite la linea del
provider (es. cavo
telefonico o fibra
ottica).

Router Instrada i pacchetti 3 (rete) Gestore del traffico


di dati tra reti tra reti, essenziale
diverse (es. tra la per l’accesso a
tua LAN e Internet) Internet e per la
in base agli indirizzi creazione di reti
IP e alle regole Wi-Fi.
preimpostate.

Gateway Funge da punto di tutti i livelli Traduce i protocolli


ingresso/uscita tra di comunicazione
due reti che per consentire
utilizzano protocolli l’interoperabilità tra
di comunicazione reti eterogenee.
diversi, traducendoli
per consentire il
flusso di dati.
Differenze Chiave
-​ Ambito di Funzionamento: Hub e switch operano all’interno della stessa rete locale
(LAN), mentre router e gateway connettono reti diverse.
-​ Intelligenza e Efficienza: Gli hub sono “stupidi” e inviano tutto a tutti; gli switch sono
“intelligenti” e inviano i dati solo al destinatario corretto; i router sono “direttori del
traffico” tra reti che utilizzano indirizzi IP.
-​ Connessione a Internet: Il modem è il dispositivo che stabilisce la connessione fisica
con il provider di servizi Internet (ISP), convertendo il segnale esterno in un formato
utilizzabile dalla rete locale. Spesso, nelle configurazioni domestiche, un singolo
dispositivo integra le funzioni di modem e router.
-​ Traduzione di Protocolli: Un gateway è il dispositivo più versatile, in grado di tradurre
protocolli di comunicazione tra reti fondamentalmente diverse, a differenza del router
che gestisce il routing standard basato su IP.

Nell’ambito delle reti informatiche, per bridge (letteralmente ponte) si intende un dispositivo –
che può essere sia hardware sia software – in grado di collegare tra di loro due o più reti
diverse (solitamente delle LAN) in modo che possano comunicare tra di loro.
Il bridge è un dispositivo di rete che si colloca al livello datalink del modello ISO/OSI che
connette e gestisce il flusso di dati tra due rete locali o tra due segmenti di una stessa rete
locale.
macOS & Linux
macOS e Linux sono sistemi operativi di nicchia (non utilizzati da tutti perché macOS è
costoso, e linux è difficile da usare).

-​ Linux
Linux è stato inventato da uno studente universitario chiamato Linus Torvalds, che utilizzò
Unix per crearlo, da questo il nome.
Per scaricare Linux bisogna fare una partizione del disco fisso (occupa spazio) e ogni volta
all’avvio bisogna decidere il sistema operativo da utilizzare, perché esso sovrasta il sistema
operativo della macchina.
I vantaggi di Linux sono la sicurezza: non prende virus perché non è utilizzato da nessuno.
Linux si usa tramite interfaccia grafica o con il terminale, dove scrivi comandi. I programmi si
installano con un gestore pacchetti (es. apt su Ubuntu). I file sono organizzati in cartelle
come /home, /etc, /usr.

-​ iOS
iOS è il sistema operativo degli iPhone, creato da Apple.​
Ha un’interfaccia semplice e si usa toccando lo schermo.​
Le app si scaricano dall’App Store.​
È noto per sicurezza e aggiornamenti regolari.​
Supporta funzioni come Face ID, iMessage e iCloud.​
È ottimizzato per funzionare in modo fluido sui dispositivi Apple.

-​ macOS
macOS è il sistema operativo dei computer Mac, sviluppato da Apple.​
Ha un’interfaccia semplice con Dock e Finder per gestire file e app.​
Le applicazioni si scaricano dal Mac App Store o da internet.​
È stabile, sicuro e ben integrato con iPhone e iPad.​
Riceve aggiornamenti regolari e offre buone prestazioni.
I DATABASE
I database sono dei programmi che gestiscono grandi quantità di dati (archivi).
I database nascevano di tipo gerarchico, poi reticolari e poi sono diventati relazionali

Potrebbero piacerti anche