Il sistema operativo
BIOINGEGNERIA ELETTRONICA ED INFORMATICA
1
Lezione II - 2013/2014
Riepilogo lezione precedente
L'informatica è la scienza che studia come trattare
l'informazione in maniera automatica
In realtà, l'informatica tratta sia i dati, che l'informazione, che la
conoscenza



Il dato è un valore, una misura di un certo fenomeno del mondo
reale; il dato, posto in un certo contesto ed interpretato secondo un
codice, diventa informazione; un insieme di informazioni, messe in
relazione fra loro, possono fornire conoscenza
Il calcolatore utilizza l'alfabeto binario per tutti i tipi di dati,
mentre utilizza una semantica differente a seconda del tipo di
informazione da trattare
In medicina, il processo di codifica consiste essenzialmente
nell'assegnazione di un codice ad un concetto medico (sia per
le patologie, che per i costi, che per gli eventi clinici)


2
Lezione II - 2013/2014
Riepilogo lezione precedente:
architettura di un calcolatore
Unità di elaborazione
La CPU si appoggia
alla RAM per
memorizzare i
programmi e i dati
intermedi
Memoria RAM
(Random Access
Memory)
Control
Unit
Dispositivi attraverso
cui l’utente fornisce
l’informazione (i dati)
in ingresso
Dispositivi di INPUT
Tastiera, mouse,
touchpad, microfono,
webcam, …
3
Il calcolatore esegue
calcoli su numeri e
operazioni logiche
ALU
(Arithmetic
Logic Unit)
CPU (Central Processing Unit)
Dispositivi attraverso
cui l’utente riceve
l’informazione (i dati)
in uscita
Dispositivi di OUTPUT
Monitor, stampante, casse
audio, …
(Architettura di Von Neumann)
Lezione II - 2013/2014
Software

Il software è l’insieme dei programmi che operano sul
calcolatore

Software di base

E’ dedicato alla gestione delle funzioni
elementari dell'elaboratore, e lavora
direttamente sull'hardware della
macchina.
Software applicativo


4
Implementa particolari esigenze
dell'utente usando il software di base.
Lezione II - 2013/2014
Che cos’è il sistema operativo?
Il sistema operativo
 Il componente principale del software di base è il sistema
operativo (SO), cioè il programma che permette
l'interazione con le risorse fisiche dell'elaboratore.
1. Gestisce le risorse fisiche dell'elaboratore





2.
5
Processore
memoria centrale
memoria di massa
dispositivi di input/output
Fornisce l'interfaccia uomo-macchina
Lezione II - 2013/2014
Struttura del sistema operativo
Struttura a cipolla

6
Lezione II - 2013/2014
Gestione dei processi
Processo
Si definisce processo (o anche job, task) una istanza di un
certo Programma. Un processo è composto da una parte
statica (le istruzioni) e da una parte dinamica (i dati)


SO Monotasking
Il sistema operativo
permette l'esecuzione di
un unico processo alla
volta


7


SO Multitasking
Il sistema operativo
permette l'esecuzione
contemporanea di più
processi
Lezione II - 2013/2014
Monotasking
In un sistema operativo monotasking, ciascun
processo impegna la CPU in maniera esclusiva
L'esecuzione di più processi avviene
sequenzialmente
C’è spreco di risorse sia durante l'input/output, sia
durante l'attesa del lancio di un ulteriore processo



8
Lezione II - 2013/2014
Multitasking (1)

In un sistema operativo multitasking, più processi possono
essere eseguiti «contemporaneamente»

Un solo processo e in esecuzione in un certo istante di tempo
Gli altri processi sono o pronti ad andare in esecuzione, o in
attesa del termine delle operazioni di I/O

9
Lezione II - 2013/2014
Multitasking (2)


1.
2.
3.
Un processo entra in una coda di processi pronti e - al suo turno va in esecuzione
L'esecuzione può essere interrotta da
Interruzione interna - per eseguire operazioni di I/O
Interruzione esterna - quando scade il tempo ad esso dedicato
Termine - se il processo e terminato
10
Lezione II - 2013/2014
Multitasking (3)

l metodo del time-sharing


11
a ciascun processo viene ciclicamente assegnato un tempo di
esecuzione t (time-slice)
in caso di una operazione di I/O, l'esecuzione passa al
successivo processo, per poi essere ripresa al termine
Lezione II - 2013/2014
Gestione della memoria


La memoria è una risorsa generalmente scarsa e va quindi
suddivisa tra i vari processi in competizione
Nella realtà, i sistemi operativi:



fanno vedere ai processi una quantità di memoria maggiore
(memoria virtuale) di quella centrale
tengono in memoria centrale solo porzioni dei processi in
competizione, mentre le restanti parti restano sulla memoria di
massa
La gestione della memoria avviene utilizzando la tecnica
della segmentazione o della paginazione


12
segmentazione, la memoria è assegnata in segmenti uguali
alla parte di programma da caricare
paginazione, la memoria è suddivisa in pagine di dimensioni
fisse
Lezione II - 2013/2014
La segmentazione

Nella tecnica di segmentazione, la memoria è assegnata in
segmenti uguali alla parte di programma da caricare
13
Lezione II - 2013/2014
La paginazione

Nella tecnica di paginazione, la memoria è suddivisa in
pagine di dimensioni fisse
14
Lezione II - 2013/2014
Gestione delle periferiche

Per gestire una periferica, il sistema operativo utilizza
i driver


Deve esistere quindi un determinato driver per ogni
periferica da gestire
La gestione delle periferiche in un sistema
multitasking è una attività «insidiosa» perché


E’ necessario gestire correttamente errori di I/O
E’ indispensabile adottare corrette politiche di utilizzo
affinché


15
non si acceda a risorse attualmente in uso da un altro processo
non si verifichino situazioni di blocco irreversibile
Lezione II - 2013/2014
Accesso concorrente alle risorse

Per permettere ai processi di accedere correttamente alle
risorse, si usa il cosidetto lock





nessuno la risorsa è libera
in lettura il processo può leggere dei dati dalla risorsa
in scrittura il processo può scrivere dei dati dalla risorsa
in lettura/scrittura il processo è esclusivo proprietario della
risorsa
Un processo può richiedere


16
una risorsa libera e chiedere il suo lock in lettura e/o scrittura
(a seconda dell'operazione che deve eseguire)
al termine dell'operazione, la risorsa deve essere libera
Lezione II - 2013/2014
Deadlock (1)

Il deadlock è una situazione in cui alcuni membri di un
gruppo di processi (che detengono risorse) sono bloccati
indefinitamente nell'accesso ad altre risorse possedute da
altri processi dello stesso gruppo

17
Un esempio e un incrocio che deve essere affrontato da
quattro macchine che devono tutte girare alla propria sinistra
Lezione II - 2013/2014
Deadlock (2)
18
Lezione II - 2013/2014
Deadlock (3)

I metodi per risolvere i deadlock sono
essenzialmente



19
semafori viene assegnato un ordine predefinito di
accesso alla risorsa
priorità viene assegnato un ordine di accesso alla
risorsa sulla base di priorità (diritti di precedenza)
attesa casuale quando un processo trova una
risorsa occupata, attende un tempo casuale prima di
provare nuovamente ad utilizzarla
Lezione II - 2013/2014
Starvation

La starvation è una situazione per cui un processo
potrebbe restare indefinitamente in attesa che una risorsa
si liberi

20
Un esempio è un incrocio attraversato da una serie di
automobili, e una ulteriore automobile in attesa di attraversarlo
Lezione II - 2013/2014
Il file system (1)

Per organizzare la grande quantità di dati che possono
essere stoccati nella memoria di massa, si ricorre ad




una unità astratta di memorizzazione detta file
un contenitore di file detta directory
File system
Il file system è l'insieme di programmi del sistema
operativo che si occupano della gestione della memoria di
massa.


21
Il file system è strutturato ad albero
Il percorso di un file è dato dalla
«somma» delle varie directory
(partendo dalla radice, discendendo
l'albero) e il nome del file
Lezione II - 2013/2014
Il file system (2)
22
Lezione II - 2013/2014
L’interprete dei comandi


L'interprete di comandi
L'interprete dei comandi è lo strumento più spartano per
dialogare con il sistema operativo


23
In Windows, l'interprete dei comandi è richiamabile lanciando il
programma «COMMAND.COM» o «CMD.COM»
In Linux/Unix, esistono vari interpreti dei comandi dotati di
funzioni più o meno potenti (e.g., BASH)
Lezione II - 2013/2014
Interfaccia grafica

L'interfaccia grafica o offre una metafora visuale per
l'interazione con il sistema operativo.
Attualmente, la metafora usata per la gestione dei processi è la
finestra, le icone identificano i file e/o le directory, mentre è
usato il desktop (la scrivania) per organizzare i file

Vantaggi di una interfaccia grafica




Semplicità di utilizzo
Rapidità di esecuzione di compiti complessi
Vantaggi dell'interprete dei comandi

24
E’ possibile eseguire anche compiti non disponibili sull'interfaccia
grafica
Lezione II - 2013/2014
Reti e web
BIOINGEGNERIA ELETTRONICA ED INFORMATICA
25
Lezione II - 2013/2014
Le reti di calcolatori


Il computer networking è uno dei campi tecnologici più
importanti della nostra epoca
La «rete delle reti» è sicuramente Internet
26
Lezione II - 2013/2014
I «pezzi» di Internet

Internet è l'insieme di



27
End-system (o host)
mutuamente interconnessi,
ciascuno dei quali esegue
delle applicazioni di rete
Link di rete: rame, fibra
ottica, radio, satellitari
Router: organizzano il
traffico di informazioni
attraverso la rete
Lezione II - 2013/2014
I nodi terminali della rete


Ai nodi terminali della rete
ci sono gli end-system:
eseguono applicativi (e.g.
web, email)
Modello client/server


Il client invia le richieste, e
riceve le risposte dal server
(e.g., il client web riceve le
pagine da un server)
Modello peer-to-peer

28
Gli host interagiscono
simmetricamente (e.g., il file
sharing)
Lezione II - 2013/2014
La sezione interna della rete


È composta da griglie di router
intercomunicanti, eventualmente
raccolte in sottoreti
Si occupa di come trasferire i
dati attraverso la rete
29
Lezione II - 2013/2014
I servizi di Internet

Internet è una infrastruttura di comunicazione che
permette l'esecuzione di servizi come






Web
Posta elettronica
Trasferimento file
Condivisione di risorse
Internet - quindi - non è il solo web!
Possibile definizione

30
Internet è un insieme di reti collegate da
protocolli comuni che consentono agli utenti di
ciascuna rete di comunicare o di utilizzare i servizi
situati su una qualsiasi delle reti componenti
Lezione II - 2013/2014
Tipologie di rete (1)
31
Lezione II - 2013/2014
Tipologie di rete (2)
32
Lezione II - 2013/2014
Che cos’è un protocollo

Un protocollo definisce il formato e l'ordine dei
messaggi scambiati fra due o più entità comunicanti, così
come le azioni che hanno luogo a seguito della
trasmissione e/o ricezione di un messaggio o di altri
eventi
33
Lezione II - 2013/2014
Un protocollo umano e una di retr
34
Lezione II - 2013/2014
Architettura stratificata




Internet è un sistema estremamente complesso: deve far
convivere differenti reti, differenti applicativi, differenti sistemi
operativi, etc.
Data questa grande complessità, la rete è organizzata tramite
una architettura stratificata
Si ha un'architettura stratificata quando è possibile identificare
dei livelli (strati, layer ) di uniforme astrazione, in cui è
possibile nominare consistentemente le entità che vi operano
Vantaggi di un'architettura stratificata:




35
Separazione delle funzioni
Semplicità di progetto
Facilità di gestione
Semplicità di standardizzazione
Lezione II - 2013/2014
Architettura stratificata


In ciascuno strato di una architettura stratificata vengono
definiti dei protocolli (pila protocollare)
La pila protocollare Internet è a 5 livelli
36
Lezione II - 2013/2014
Strato di collegamento/fisico






Questi due strati non sono specificati da Internet
Una rete che implementa questi soli due livelli è una rete
locale
Qualunque rete locale può utilizzare i propri specifici
protocolli di collegamento e/o fisici, ma sarà collegabile ad
Internet se e solo se renderà implementabile il protocollo
IP
Un esempio di rete locale è la rete Ethernet
Le informazioni trasportate a questo livello vengono
chiamate tecnicamente frame
Lo strato di collegamento/fisico si occupa di trasferire frame
attraverso un link
37
Lezione II - 2013/2014
Tipologie di link
Esistono due tipologie di link
1. Link punto-a-punto: un singolo sender ad una
estremità del link, e un singolo receiver
all'altra estremità del link
2. Link broadcast: più sender e più receiver
condividono un unico mezzo trasmissivo

38
Lezione II - 2013/2014
Stato di rete

Lo strato di rete è responsabile
dell'instradamento dei dati da un host all'altro

Internet ha molti protocolli di instradamento che
permettono di specificare come «districarsi»
all'interno della rete per raggiungere il destinatario
Contiene il protocollo IP e tutti i componenti
che vogliono appartenere ad Internet devono
impiegarlo
 Le informazioni trasportate a questo livello
vengono chiamate tecnicamente datagrammi

39
Lezione II - 2013/2014
Indirizzi IP


Un indirizzo IP è un insieme di quattro numeri (ciascuno da 0
a 255) separati da un punto 141.250.187.187. L'indirizzo IP e
strutturato gerarchicamente
Ad esempio,



Gli indirizzi che cominciano per 141.250.187. sono di end-system
appartenenti alla Facoltà di Medicina e Chirurgia di Perugia
Il gruppo di indirizzi 141.250.187.xxx è detta una classe di indirizzi IP
Una classe deve risiedere dietro un solo router
40
Lezione II - 2013/2014
Strato trasporto


Lo strato di trasporto fornisce il servizio di trasporto
dei messaggi provenienti dallo strato di applicazione
Il servizio di trasporto può essere



Orientato alla connessione Garantisce la consegna dei
messaggi, un controllo di flusso e congestione
Senza connessione Non garantisce niente alle applicazioni
Le informazioni trasportate a questo livello vengono
chiamate tecnicamente segmenti
41
Lezione II - 2013/2014
Strato applicazioni
Lo strato di applicazione è responsabile del
supporto delle applicazioni di rete
 Queste applicazioni comprendono molti
protocolli (e.g., HTTP, FTP, SMTP) che
forniscono le funzionalità più note presenti
sulla rete Internet
 Le informazioni trasportate a questo livello
vengono chiamate tecnicamente messaggi

42
Lezione II - 2013/2014
DNS


Il DNS (Domain Name Service) è il servizio di strato di
applicazione che permette di tradurre il nome di un host
nel corrispondente indirizzo IP
Il DNS è un servizio distribuito, cioè esistono più DNS
che cooperano fra di loro al fine di offrire il servizio di
traduzione.
.it
.net
.google.com
.unipg.it
.med.unipg.it
.com
.ing-inf.unipg.it
www.med.unipg.it
IP 141.250.187.187
43
Lezione II - 2013/2014
Applicativi dello strato di applicazione



Nello strato di applicazione trovano spazio numerosi
applicativi, per ciascuno dei quali sono definiti uno o più
protocolli
A ciascun applicativo di rete è assegnato un numero di
porta
Si tratteranno le seguenti applicazioni di rete





44
DNS
Web
Posta elettronica
Trasferimento file
Condivisione risorse
Lezione II - 2013/2014
Web e HTTP
Il web nasce all'inizio degli anni '90
 Il web opera su richiesta (al contrario delle
trasmissioni televisive): gli utenti ricevono
quello che vogliono, quando lo vogliono
 L'applicazione web è costituita da:





45
Gli standard per i formati dell'ipertesto (e.g. HTML)
Il protocollo di strato di applicazione (HTTP)
I browser web (e.g. Explorer, Mozilla)
I server web (e.g. Apache, IIS)
Lezione II - 2013/2014
URL

Il web è un ipertesto di dimensioni «planetarie»



Per individuare una risorsa in Internet, esiste l'URL
(Uniform Resource Locator) [RFC 2396]
Una URL è composta dalle seguenti tre parti:
1.
2.
3.

Un ipertesto è un insieme di testi (documenti ipertestuali)
collegati fra di loro, in maniera non sequenziale, tramite
particolari parole chiamate collegamenti ipertestuali (hyperlink)
il protocollo utilizzato per indirizzare la risorsa
il nome dell'host
il nome della risorsa
Ad esempio:
http://www.med.unipg.it/index.html
protocollo
46
host
risorsa
Lezione II - 2013/2014
Posta elettronica





La posta elettronica (e-mail) è sicuramente il servizio di
rete più conosciuto e più usato attualmente
I protocolli usati nella posta elettronica sono SMTP
(invio), POP3 (ricezione), IMAP (consultazione)
Tramite posta elettronica vengono resi possibili gli scambi
di corrispondenza fra utenti residenti anche in zone del
mondo lontanissime
La metodologia di inoltro e la terminologia usata è la
stessa della posta tradizionale
Il mittente spedisce un messaggio, eventualmente dotato
di oggetto, ad un altro utente, detto destinatario, dotato
di un proprio indirizzo
47
Lezione II - 2013/2014
Posta Elettronica Certifica (PEC)

La Posta Elettronica Certificata (PEC) è un sistema di posta elettronica nel
quale è fornita al mittente documentazione elettronica, con valenza legale,
attestante l'invio e la consegna di documenti informatici

Elementi di sicurezza

Ricevuta di accettazione




Contiene i dati di certificazione del gestore del mittente quale prova dell’avvenuta
spedizione
Ricevuta di avvenuta consegna

Costituisce prova della consegna del messaggio all’indirizzo elettronico dichiarato dal
destinatario

Contiene i dati di certificazione che certificano il momento della consegna

Viene emessa unicamente a seguito di valida ricezione della busta di trasporto

Avviso di mancata consegna
Comunicato al mittente entro 24 ore dall’invio
Indipendentemente dalla lettura del messaggio
49
Lezione II - 2013/2014
PEC

Nella posta elettronica il documento informatico
trasmesso per via telematica si intende inviato e
pervenuto al destinatario, se trasmesso all’indirizzo
elettronico da questi dichiarato

Posta elettronica certificata

50
Il documento informatico trasmesso per via telematica si
intende spedito dal Mittente se inviato al proprio gestore,
e si intende consegnato al destinatario quando è reso
disponibile all’indirizzo elettronico da questi dichiarato e,
più precisamente, nella casella di posta elettronica certificata
messa a disposizione dal gestore
Lezione II - 2013/2014
PEC: schema funzionale
mittente
destinatario
Documento
informatico
Indice gestori
PEC
Internet
•
Provider
Del
destinatario
Ricevuta di
presa in carico
Ricevuta
di
consegna
51
Lezione II - 2013/2014
Trasferimento dei file



Il trasferimento di file (file transfer) consente la copia di
file tra due elaboratori collegati in rete
Il servizio è estremamente semplice e richiede
unicamente un programma di trasferimento file
Gli elaboratori che offrono i file, richiedono una
username ed una password per poter effettuare il
trasferimento, oppure possono rendere disponibili le loro
risorse anche ad utenti non registrati (trasferimento
anonimo)
52
Lezione II - 2013/2014
Condivisione delle risorse



L'utente di ogni singolo nodo della rete ha il possesso
virtuale di tutta una serie di risorse (hard disk, stampanti,
etc) messe a disposizione dal complesso degli elaboratori
componenti la rete
Un dispositivo che può essere condiviso è il disco rigido
La condivisione delle unità disco presenta un duplice
vantaggio:



viene limitata la duplicazione dei dati, e
si ottimizza l'utilizzo della memoria secondaria
L'elaboratore che mette a disposizione i propri dischi
viene detto le server e, se consente di condividere anche
i programmi, è detto application server
53
Lezione II - 2013/2014