vuoi
o PayPal
tutte le volte che vuoi
TASTIERE
Il layout delle tastiere è QWERTY (è stata studiata in modo che le coppie die lettere più usate
frequentemente fossere lontane).
Sotto i tasti ci sono circuiti, quando il tasto non è premuto il circuito è aperto. Nel momento in
cui il tasto viene schiacciato allora il circuito si chiude e l’elettricità passa.
La connessione wirless (onde radio o raggio infrarosso) ha come fattori negativi il fatto che
necessiti di una batteria e che può essere intercettata (per password e numeri di carta di
credito).
MOUSE
Il mouse proietta luce (led rosso) e legge cosa torna dai segnali di luce. Interpreta i fasci di
luce come movimento. Per questo il mouse non funziona su superfici piane.
CODICI A BARRE
(i lettori dei codici a barre sono unità di input). Il bianco rifletta la luce, mentre il nero delle
barre no. In questo modo le barre possono essere tradotte in numeri.
SOFTWARE
Il software è l’insieme di tutti i programmi presenti sul computer.
Ci sono tre diversi tipi di software:
di sistema (interagisce con il sistema)
• di programmazione (pre creare programmi)
• applicativo (programmi)
•
1. SOFTWARE DI SISTEMA
Il software di sistema fa da intermediario tra l’hardware (memoria,disco,periferica) e una
mappa astratta.
Ad esempio ci sono tre diversi tipi di hardware: hard disk, CD rom, chiavetta USB, e hanno
dettagli hardware completamente diversi, ma l’utente riesce a interagirci nello stesse modo
con tutt, grazie appunto ad una mappa astratta.
La mappa per scrivere programmi è completamente diversa, ma i programmi vengono scritti
facendo riferimento a questa mappa astratta.
Il software di sistema di divide in sistema operativo e driver.
Il sistema operativo: fa da intermediario tra l’hardware e i programmi applicativi
-input
-output
-gestione della memoria: assegna i pezzetti della memoria ai vari programmi aperti
-gestione della CPU: esegue liste di istruzioni per diversi programmi. E permete di gestire il
tempo.
Driver: consente ad un softwar applicativo di interagire con una periferica (esempio
stampante o scanner), inoltre dà una rappresentazione uguale per ogni sistema operativo
anche se le periferiche sono diverse.
I primi sistemi operativi caricavano nella memoria di massa da quella di centrale, ed
eseguivano un solo programma alla volta, e il linguaggio era direttamente quello macchina,
gestivano un’interfaccia utente basata su interruttori e spie luminose.
UNIX
Il primo sistema operativo moderno, nasce negli anni 60.
Era multitasking: può eseguire più di un programma
Multiuser: più utenti con lo stesso computer che interagiscono contemporaneamente
Introduce: il filesystem (sistema di organizzazione della memoria di massa)e la shell (sistema
di comandi testuali per controllare il sistema operativo. I comandi testuali sono digitati non
sono più 0 e 1).
UNIX OGGI
- unix veri e propri: seguono uno standard POSIX (regole da seguire per fare questo sistema
operativo). In parte MAC OS è un sistema operativa UNIX vero e proprio.
-unix like: non seguono tutte le direttive POSIX
DOS e WINDOWS
Viene sviluppato tra il 1981 e il 1994 da Microsoft.
Inizialmente aveva solo la shell (venivano digitati i comandi testuali), senza icone.
Nel 1985 nasce l’interfaccia utente grafica Windows (un anno dopo la nascita di quella
Apple).
Chi interagisce con il computer non lo fa con l’hardware ma con la sua rappresentazione
astratta: macchina virtuale. E’ la stessa per hardware molto diversi.
SISTEMA OPERATIVO
Pincipalmente gestisce le risorse hardware, gestione dell’interazione con l’utente (aprire
world, cancellare un file).
Ha due componenti principali
-Kernel : interagisce con l’hardware
funzioni del kernel: avvio del computer (1), gestisce la CPU, gestisce le memorie (virtuale,
principale (2), e secondaria (3)), gli input e output più comuni gli altri hanno bisogno del
driver.
(1) Quando viene avviato il computer, una parte del sistema operativo viene mandato in
esecuzione (viene spostato dal disco rigido alla ram). Questa fase prende il nome bootstrap.
Durante il bootstrap una parte del sistema operativo viene caricata nella memoria principale
In genere questa parte del sistema operativo comprende:
i programmi per la gestione del processore
– i programmi per la gestione della memoria
– i programmi per la gestione dell’input/output
– i programmi per la gestione delle risorse hardware
– i programmi per la gestione del file system
– un programma che crea l’interfaccia verso l’utente
–
(2) Il sistema operativo deve essere sempre in esecuzione, un pezzo di memoria principale il
Kernel quindi lo riserva al sistema operativo. La memoria riservata allo spazio utente è divisa
rispetto alla memoria dedicata al sistema operativo.
Quando un computer si blocca molto spesso è perchè qualche applicativo ha toccato la
memoria dedicata al sistema operativo (avviene tutto nella RAM, quindi spegnendo sparisce
tutto). Se fosse nella memoria di massa, spegnendo il computer non si risolverebbe il
problema. È compito del Kernel impedire conflitti.
(3) La memoria secondaria (disco rigido) serve per memorizzare programmi e dati in modo
permanente.
Il file system, è quella parte del sistema operativo che organizza la memoria secondaria.
Da quando c’è unix il sistema operativo è diviso gerarchicamente con una rappresentazione
astratta (cartelle). Le cose non sono lì fisicamente, ma esiste un indice che sa dove i file sono
contenuti nel disco. Ogni volta che si salva viene aggiornato. Inoltre identifica i file mediante
dei nomi e impedisce ad altri utenti di leggerli o modificarli (somprattuto per multiuser).
Sia i programmi che i dati sono rappresentati mediante file. Per capire che tipo di file sia, si
mette un’estenzione (.+sigla) In windows i programmi eseguibili hanno .exe, tutto il resto sono
dati (per alterare un compuer con un virus è sufficiente creare un eseguibile e mascherarlo
da dato).
Alcune operazioni eseguibili mediante un file system:
• creazione di un file
– cancellazione di un file
– copia o spostamento di un file
– visualizzazione del contenuto di un file
– stampa di un file
– modifica del contenuto di un file
– rinomina di un file
– visualizzazione delle caratteristiche di un file
–
I file hanno un’organizzazione gerarchica: il numero di file che devono essere memorizzati sul
disco può essere molto elevato, si ha quindi la necessità di mantenere i file in una forma
ordinata.
A ciascuna periferica che può essere una memoria viene assegnata una lettera (l’hard disk
principale ha la lettera C). Sistema ad albero: varie radici fino ad arrivare alle foglie
Se si scrivesse solo libro1.pdf, non identificherebbe il file , serve descrivere tutto il percorso, a
partire dall radice dell’albero (pathname).
C:\Biblioteca\Narrativa-Ita\libro1.pdf
NB: se sono già nella cartella Biblioteca allora il pathname inizia da Narrativa-Ita (pathname
relativo).
-Interfaccia utente : interagisce con l’utente, con l’interfaccia utente grafica, e permette di
lanciare programmi
Interfaccia testuale: comandi impartiti da tastiera, ogni comando ha un suo nome e una
sintassi ben precisa. La sintassi è un insieme di regole che permettono di formare frasi con
senso compiuto. Se non ha senso: SINTAX ERROR
L’interazione avviene attraverso il prompt (messaggio all’utente, implica che il computer è
pornto ad eseguire i comandi) C:>_
Una volta dato il comando, se è eseguito torna il prompt per il prossimo comando, se il
comando è errato si ha un messaggio d’errore ERROR, e poi torna il prompt.
Interfaccia grafica: anche qui c’è una sintassi (ad esempio spostare un file), quando
impartisco un comando cliccando con il mouse, per aprire un comando: il sistema operativo
cerca il programma corrispondente sulla memoria secondaria, lo copia in quella
prinmcipale, e imposta il registro program counter con l’indirizzo in memoria principale della
prima istruzione del programma.
2. SOFTWARE DI PROGRAMMAZIONE
Serve per creare nuovi software: ad esempio software applicativi.
Scrivere un programma implica scrivere istruzioni in un linguaggio di programmazione
(astrazione linguaggio macchina, indipendente dall’hardware).
Il linguaggio di programmazione non può essere letto dalla CPU, quindi grazie ad un
programma viene tradotto in linguaggio macchina.
Questi programmi che traducono possono essere :
-compilatori : prendono l’intero programma e lo traducono in linguaggio macchina da
equ.c a equ.exe (programma eseguibile). Ha una velocità di esecuzione maggiore.
-interpreti : non produce .exe ma prende una riga per volta la traduce e la esegue. È più
lento del compilatore ma è più facile interagire con la macchina che lavora.
A seconda di come è eseguito un software ci sono software di produttività (indipendente da
cos è usato) o software specializzati (specifici).
Una possibile classificazione del software in generale e degli applicativi è anche
-con copyright o software proprietario: coperto da diritti d’autore, non posso copiarlo,
modificarlo o rivenderlo.
Può essere
-freeware: disponibile gratuitamente, ma magri non può essere distribuito perchè per
ottenerlo è necessario andare sul sito.
-shareware: gratuito per un periodo limitato
-commerciale: da acquistare
-senza copyright o open source pubblico dominio: si può accedere modificarlo e distribuirlo
(per modificarlo neccessito del file equ.c non del file equ.exe, un esempio è Firefox).
RETI
RETI (NETWORK) DI COMPUTER
Un network è un insieme di computer collegati da canali di comunicazione che consentono
la comunicazione tra utenti e la condivisione di risorse.
-comunicazione tra utenti: email, chat, skype,..
-condivisione hardware: una stampante può essere usata da diversi computer.
-condivisione software: che risiedono su computer diversi dal nostro, ad esempio quando si
paga la banca si usa un software che appartiene alla banca (quindi usi un programma che
sta su di un altro computer).
-condivisione di file: ad esempio i file su unito
La velocità con cui vengono trasmessi file formati da bit, chiamata velocità di trasmissione, si
misura in bit per secondo (bps): ovvero quanti 0 e 1 passano da un computer ad un altro in
un secondo.
Vi sono diversi modi attraverso i quali possono avvenire le connessioni, possono essere wired
(con cavo) o wirless (senza cavo):
WIRED
-doppino telefonico: segnale elettrico
2