presentazione di powerpoint - computer engineering group · uso di più sistemi operativi s.o....

21
M. Tomaiuolo – Fondamenti di informatica M. Tomaiuolo – Fondamenti di informatica Dip. Ingegneria dell'informazione – UniPR Dip. Ingegneria dell'informazione – UniPR http://www.ce.unipr.it/people/tomamic/ http://www.ce.unipr.it/people/tomamic/ Sistemi operativi Fondamenti di informatica Michele Tomaiuolo [email protected] http://www.ce.unipr.it/people/tomamic

Upload: nguyenkhanh

Post on 18-Feb-2019

214 views

Category:

Documents


0 download

TRANSCRIPT

M.

To

mai

uo

lo –

Fo

nd

amen

ti d

i in

form

atic

aM

. T

om

aiu

olo

– F

on

dam

enti

di

info

rmat

ica

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

Sistemi operativi

Fondamentidi informatica

Michele [email protected]

http://www.ce.unipr.it/people/tomamic

M.

To

mai

uo

lo –

Fo

nd

amen

ti d

i in

form

atic

aM

. T

om

aiu

olo

– F

on

dam

enti

di

info

rmat

ica

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

Sistema operativo

Avviato automaticamente all'accensione

Funzionalità indispensabili per interagire con l'utente ed eseguire gli altri programmi

Intermediario tra l’utente e l’hardware

Compiti principali:

Semplificare l’utilizzo del calcolatore all’utente

Ambiente per eseguire programmi in modo conveniente ed efficiente

M.

To

mai

uo

lo –

Fo

nd

amen

ti d

i in

form

atic

aM

. T

om

aiu

olo

– F

on

dam

enti

di

info

rmat

ica

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

Uso di più sistemi operativi

S.O. pensati per controllo completo PC

Uso contemporaneo → conflitto nella gestione delle risorse della macchina

Possibilità di virtualizzazione

Installare più sistemi operativi, di solito:

Suddividere HD in partizioni separate

Ognuna per un sistema operativo

Caricare il sistema operativo dalla partizione desiderata

M.

To

mai

uo

lo –

Fo

nd

amen

ti d

i in

form

atic

aM

. T

om

aiu

olo

– F

on

dam

enti

di

info

rmat

ica

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

Criteri di classificazione

Funzionalità

Sistemi a lotti(o batch)

Interattivi

Accesso utenti

Mono-utente

Multi-utente

Gestione risorse

Mono-programmazione

Multi-programmazione

Multi-elaborazione

M.

To

mai

uo

lo –

Fo

nd

amen

ti d

i in

form

atic

aM

. T

om

aiu

olo

– F

on

dam

enti

di

info

rmat

ica

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

Sistema operativo a cipolla

Gestore processi (o nucleo): esecuzione programmi sulla CPU

Gestore memoria: allocazione memoria tra i vari programmi

Gestore periferiche: operazioni di I/O che coinvolgono le periferiche

Gestore file: archivi in memoria di massa

Interprete comandi (o shell): attivazione programmi da parte dell'utente

Hardware

Applicazioni

M.

To

mai

uo

lo –

Fo

nd

amen

ti d

i in

form

atic

aM

. T

om

aiu

olo

– F

on

dam

enti

di

info

rmat

ica

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

Gestione dei processi

S.O. multi-tasking: esegue più programmi in contemporanea, associati a processi

Crea e cancella i processi

Decide a quale processo assegnare la CPU

Sospende e riattiva i processi

Inoltre offre meccanismi per:

Sincronizzazione e gestione deadlock

Comunicazione fra processi

Comunicazione con periferiche

M.

To

mai

uo

lo –

Fo

nd

amen

ti d

i in

form

atic

aM

. T

om

aiu

olo

– F

on

dam

enti

di

info

rmat

ica

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

Multi-tasking

CPU singola: non reale parallelismo (in un dato istante, un solo processo in esecuzione)

Time-sharing: ciclicamente, assegnato un intervallo di tempo di esecuzione fissato

Se entro l'intervallo il processo termina

Avviato nuovo intervallo, eseguito altro processo

Se non termina o si blocca (attesa risorsa)

Processo sospeso, avviato nuovo intervallo, eseguito un altro processo

M.

To

mai

uo

lo –

Fo

nd

amen

ti d

i in

form

atic

aM

. T

om

aiu

olo

– F

on

dam

enti

di

info

rmat

ica

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

Ciclo di vita di un processo

AttivoAttivo ProntoPronto

In attesaIn attesa

Salvastato

Ripristinastato

Fine Inizio

TerminatoTerminato NuovoNuovo

In attesa di I/Oo di un evento

M.

To

mai

uo

lo –

Fo

nd

amen

ti d

i in

form

atic

aM

. T

om

aiu

olo

– F

on

dam

enti

di

info

rmat

ica

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

Thread di esecuzione

Più piccola unità di istruzioni che può essere schedulata dal S.O.

Possibile dividere un processo in diversi compiti, in esecuzione concorrente

Stessa base di codice

Condivisione di heap

Condivisione di risorse

→ Mutex e semafori

Diverso stack e stato CPU

M.

To

mai

uo

lo –

Fo

nd

amen

ti d

i in

form

atic

aM

. T

om

aiu

olo

– F

on

dam

enti

di

info

rmat

ica

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

Memoria virtuale

Uno o più programmi possono richiedere più memoria di quella disponibile (primaria)

Meccanismo di gestione della gerarchia di memoria primaria/secondaria

Sfrutta efficacemente la gerarchia

Rende il programma indipendente dalle dimensioni della memoria della macchina

Libera il programmatore dalla gestione dello spazio di memoria fisico

M.

To

mai

uo

lo –

Fo

nd

amen

ti d

i in

form

atic

aM

. T

om

aiu

olo

– F

on

dam

enti

di

info

rmat

ica

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

Gerarchia di memoria

CacheL2

CacheL2

Memoriaprimaria(RAM)

Memoriaprimaria(RAM)

CPU CPU Cache

L1

Il sistema operativo cerca di simulare una memoria grande, economica e veloce

Sk madre, elettronica, 10-8s

Memoria

secondaria

(HDD)

Memoria

secondaria

(HDD)

Meccanica, 10-2s

~1ns, 100KB ~50ns, 4GB ~10ms, 1TB

M.

To

mai

uo

lo –

Fo

nd

amen

ti d

i in

form

atic

aM

. T

om

aiu

olo

– F

on

dam

enti

di

info

rmat

ica

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

Paginazione

Memoria divisa in pagine di uguale dimensione

Ad ogni programma in esecuzione assegnato un certo numero di pagine

Quando l’istruzione da eseguire non è in memoria primaria (page fault)…

Se necessario, una pagina viene spostata da memoria primaria a secondaria

La pagina che contiene l’istruzione viene trasferita in memoria primaria

Principio di località(dati e riferimenti di solito raggruppati)

M.

To

mai

uo

lo –

Fo

nd

amen

ti d

i in

form

atic

aM

. T

om

aiu

olo

– F

on

dam

enti

di

info

rmat

ica

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

Politiche di paginazione

1. Tl: 5, Ta: 6

2. Tl: 5, Ta: 7

3. Tl: 6, Ta:10

4. Tl: 3, Ta: 8

5. Tl: 5, Ta:11

6. Tl: 5, Ta: 7

7. Tl: 6, Ta: 9

8. Tl: 2, Ta:11

9. Tl: 5, Ta: 7

10.Tl: 3, Ta: 9

LRU (Least–Recently–Used)LRU (Least–Recently–Used)

FIFO (First–In–First–Out)FIFO (First–In–First–Out)

Tl: istante di caricamento

Ta: istante di ultimo accesso

Pagine

M.

To

mai

uo

lo –

Fo

nd

amen

ti d

i in

form

atic

aM

. T

om

aiu

olo

– F

on

dam

enti

di

info

rmat

ica

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

Gestione periferiche

Il S.O. permette l’interazione tra i programmi in esecuzione e le periferiche

Fornisce procedure I/O ad alto livello(maschera i dettagli hardware)

BIOS (Basic I/O System): programmi (firmware) per accesso a diversi tipi di periferica

Driver: programmi software che permettono l’accesso ad una specifica periferica

M.

To

mai

uo

lo –

Fo

nd

amen

ti d

i in

form

atic

aM

. T

om

aiu

olo

– F

on

dam

enti

di

info

rmat

ica

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

BIOS

Avvio del computer

Diagnostica e inizializzazione dispositivi interni(es. controllo memoria)

Verifica dei dispositivi collegati esegnalazione eventuali errori

Avvio sistema operativo (da Boot Sector)

Impostazioni del computer

Data e ora, quantità di memoria, numero e tipo dischi, velocità tastiera ecc.

M.

To

mai

uo

lo –

Fo

nd

amen

ti d

i in

form

atic

aM

. T

om

aiu

olo

– F

on

dam

enti

di

info

rmat

ica

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

Polling

In genere periferiche caratterizzate da:

Velocità gestione dati << CPU

Invio dati saltuario e imprevedibile

Necessario un meccanismo per:

Gestire una periferica mentre la CPU compie altre attività

Evitare interrogazioni continue della CPU alle periferiche (polling) per disponibilità dati I/O

M.

To

mai

uo

lo –

Fo

nd

amen

ti d

i in

form

atic

aM

. T

om

aiu

olo

– F

on

dam

enti

di

info

rmat

ica

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

Interruzione

Stato normale di elaborazione: la CPU si disinteressa delle periferiche

1. Una periferica chiede I/O dati: attiva una linea verso CPU (genera una interruzione); quindi:

2. Sospensione processo in esecuzione (salvataggio stato dei registri, per poter riprendere l’elaborazione dopo l'interruzione)

3. Eseguito interrupt handler (trasferimento dati da/verso periferica ecc.)

4. Riattivazione del processo sospeso

M.

To

mai

uo

lo –

Fo

nd

amen

ti d

i in

form

atic

aM

. T

om

aiu

olo

– F

on

dam

enti

di

info

rmat

ica

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

File system

Organizzazione logica deidati in strutture ad albero

Unità disco(alla radice, di solitomemorie di massa)

Cartelle(nodi intermedi)

File (nodi terminali)

Tra i compiti più importanti del S.O.

Semplificazione delle operazioni (alto livello)

Condivisione dati e protezione da accessi esterni

Filesystem

Filesystem

C:C: D:D:A:A:

f1f1 f2f2 c1c1 f1f1 c1c1

f1f1c1c1 f2f2 f1f1 f2f2

M.

To

mai

uo

lo –

Fo

nd

amen

ti d

i in

form

atic

aM

. T

om

aiu

olo

– F

on

dam

enti

di

info

rmat

ica

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

Interprete di comandi

Permette di eseguire programmi e funzioni del S.O.

Riceve i comandi dall'utente

Li interpreta richiamando le funzioni opportune del S.O.

Modalità di interazione con l'utente

Testuale

Grafica

M.

To

mai

uo

lo –

Fo

nd

amen

ti d

i in

form

atic

aM

. T

om

aiu

olo

– F

on

dam

enti

di

info

rmat

ica

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

Sistema multi-utente

Meccanismi per identificare gli utenti

Tecnica più usata: attribuire username e password a ciascun utente

Possibile associare ogni utente con:

Un proprio ambiente personalizzato

Ruoli e permessi per l'accesso a file system e risorse

Un conteggio delle risorse da lui usate

M.

To

mai

uo

lo –

Fo

nd

amen

ti d

i in

form

atic

aM

. T

om

aiu

olo

– F

on

dam

enti

di

info

rmat

ica

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

Dip

. In

geg

ner

ia d

ell'i

nfo

rmaz

ion

e –

Un

iPR

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

htt

p:/

/ww

w.c

e.u

nip

r.it

/peo

ple

/to

mam

ic/

Classi di software

Software orizzontale

Di utilizzo generale (es. videoscrittura, fogli di calcolo, presentazioni, fotoritocco, disegno vettoriale, basi di dati, gestionali, navigazione e comunicazione, giochi, edutainement...)

Software verticale

Per esigenze di settori specifici (es. hotel)

Applicazioni personalizzate

Software scritto ad hoc per una determinata azienda o cliente (es. sito web)