3.2 Informatica1 Uni Fe L.P

28
1 Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software Informatica 1 ing. Luigi Puzone 3 Sistemi operativi e software 2 Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software … Software Il Software può essere diviso in: Software di sistema Software applicativo

Transcript of 3.2 Informatica1 Uni Fe L.P

Page 1: 3.2 Informatica1    Uni Fe  L.P

1

Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Informatica 1

ing. Luigi Puzone

3

Sistemi operativi e software

2Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

… Software

Il Software può essere diviso in:

• Software di sistema

• Software applicativo

Page 2: 3.2 Informatica1    Uni Fe  L.P

2

3Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

…Software…

Software di sistema

garantisce le funzioni di base del computer e si occupa di interagire con l’hardware

Esempi di software di sistema:

•Il BIOS

•Sistema Operativo

4Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Software applicativo

si occupa di problemi specifici e di determinate esigenze, interagisce con l’hardware ed il sistema attraverso il SO

Esempi di software applicativo

• Pacchetti Office

• Programmi grafici

…Software…

Page 3: 3.2 Informatica1    Uni Fe  L.P

3

5Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

…Software…

(Informatica di base 3ed. – Curtin D.P. et al – McGrawHill)

6Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema operativo

• Programma che coordina le diverse componenti hardware e software del computer, facendo da tramite tra l’utente, i programmi in dotazione e la macchina.

• Il sistema operativo dialoga con l’utente mediante l’interfaccia utente.

• Sistemi operativi: Windows, Linux, MacOS, Unix

Page 4: 3.2 Informatica1    Uni Fe  L.P

4

7Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

All’accensione dell’elaboratore viene caricato il BIOS

– BIOS:Basic Input Output System;

– Effettua il POST (Power On Self Test)

– Riconosce e avvia i dispositivi hardware

– Avvia il caricamento del Sistema Operativo in

memoria.

BIOS

8Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema operativo…

Programma che:

coordina le diverse componenti

hardware e software del computer,

Fa da tramite tra:

l’utente,

i programmi in dotazione

la macchina.

Page 5: 3.2 Informatica1    Uni Fe  L.P

5

9Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

…Sistema Operativo…

(Informatica di base 3ed. – Curtin D.P. et al – McGrawHill)

10Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

…Sistema operativo…

Page 6: 3.2 Informatica1    Uni Fe  L.P

6

11Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Caratteristiche di base:Interfaccia utente Grafica / A Carattere

Monotasking / Multitasking

Monothreading / Multithreading

Monoprocessing / Multiprocessing

Monoutente / Multiutente

Portabilità (indipendenza dal tipo di elaboratore)

Proprietario / Aperto

Sicurezza Alta / Bassa

…Sistemi operativi…

12Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Interfacce utente grafiche – Uso esteso a utenti non professionali – Maggiore semplicità d’uso– User friendly– Maggiori richieste di capacità elaborative

Interfacce a carattere– Uso limitato a utenti professionali – Necessità di ricordare i comandi da inviare al sistema sulla linea di comando

– Minore richiesta di capacità elaborative

…Sistema operativo……Interfaccia Utente vs Interfaccia a carattere…

Page 7: 3.2 Informatica1    Uni Fe  L.P

7

13Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

…Sistema operativo…Multitasking…

Multitasking

Si suddivide il tempo di lavoro della CPU tra i vari programmi in esecuzione

14Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

…Sistema operativo…Multithreading

Multitreading

Vengono svolte contempora-

neamente più funzioni di un

determinato programma

Page 8: 3.2 Informatica1    Uni Fe  L.P

8

15Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

…Sistema operativo…Multiprocessing

Multiprocessing

Vengono gestiti sistemi dotati di più processori o di coprocessori (multiprocessing) bilanciando il carico di lavoro fra di essi.

16Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Monoutente/Multiutente

Single user

Multi user

…Sistema operativo…Monoutente/Multiutente

Page 9: 3.2 Informatica1    Uni Fe  L.P

9

17Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

…Sistema operativo…portabilità

Per poter installare un S.O. sul

computer esso deve essere

compatibile con l’hardware di quel

computer

18Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

La portabilità di un sistema operativo

ne indica la sua indipendenza dalla

specifica piattaforma hardware

dell’elaboratore.

…Sistemi operativi…Portabilità

Page 10: 3.2 Informatica1    Uni Fe  L.P

10

19Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

…Sistema operativo…Proprietario/Aperto

Sistemi operativi più diffusi:

Proprietari:

• Microsoft Windows

• MacOS

Aperti:

• Linux

• Unix

20Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema OperativoSicurezza

• Un sistema può essere oggetto di attacchi dall’esterno.

• Il sistema operativo può offrire sistemi intrinsechi di sicurezza che impediscano accessi non autorizzati ai sistemi.

• Sistemi operativi per server più “sicuri”dei corrispondenti sistemi operativi per desktop.

Page 11: 3.2 Informatica1    Uni Fe  L.P

11

21Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema OperativoCompiti di un sistema operativo

Il sistema operativo è progettato per svolgere compiti specifici

Sistema operativo per Mainframe

diverso

Sistema operativo per Personal computer

diverso

Sistema operativo per Palmare

22Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema Operativoper Server…

È progettato per garantire il collegamento di più utenti aziendali garantendo la sicurezza dei collegamenti.

Le applicazioni Mission Critical sono realizzate al fine di potersi avvalere di sistemi operativi sicuri e in grado di proteggere i dati aziendali da perditredovute a malfunzionamenti hardware software.

Page 12: 3.2 Informatica1    Uni Fe  L.P

12

23Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema Operativoper Server…

Windows Server

OS/2

UNIX

Linux

24Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema Operativoper Mainframe…

I Mainframe sono progettati per memorizzare Gbyte di dati e per supportare il collegamento contemporaneo di migliaia di terminali remoti che, ad esempio, si collegano a grandi archivi centrali. I sistemi operativi per Mainframe erano (e sono tuttora) proprietari. Ad esempio per mainframe IBM il sistema operativo èprodotto da IBM, per mainframe DIGITAL era prodotto da Digital.

Page 13: 3.2 Informatica1    Uni Fe  L.P

13

25Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema Operativoper Personal Computer…

Nei sistemi operativi per personal computer si privilegia, in generale, la semplicitàd’uso e la portabilità.Sono quindi realizzati in modo da ottimiz-zare l’utilizzo delle risorse hardware e software da parte del singolo utente che utilizza il sistema.

26Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema Operativoper Personal Computer: estensioni…

In un sistema operativo per personal computer sono presenti, ad esempio: Estensioni che permettono l’utilizzo di sistemi multimedialiEstensioni per ottimizzare l’utilizzo delle risorse da parte dei computer portatili, una gestione integrata delle risorse energetiche del sistema.

Page 14: 3.2 Informatica1    Uni Fe  L.P

14

27Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Ruoli del Sistema Operativo

Il sistema operativo può essere visto e studiato da due angolazioni:– come macchina virtuale:

• permette di programmare come se si avesse a disposizione una macchina funzionalmente estesa;

– come gestore di risorse:• controlla e coordina il funzionamento contemporaneo dei componenti del sistema.

28Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema OperativoMacchina virtuale

Il sistema operativo come macchina virtuale

• Funzioni che gestiscono in modo standard situazioni quali operazioni di ingresso e uscita

• Presenza contemporanea di più programmi in memoria che si alternano nell’esecuzione (multitasking)

• Risposta ad eventi esterni (tempo, segnalazioni dalla periferia, malfunzionamenti)

• Adattamento alla varietà dei dispositivi di memoria e esterni in modo da consentire la programmazione di applicazioni come se si disponesse di una macchina piùcompleta

• Indipendenza del software applicativo da modifiche apportate all’hardware (trasparenza)

Page 15: 3.2 Informatica1    Uni Fe  L.P

15

29Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema OperativoGestore di risorse

Il sistema operativo come gestore di risorse• Gestisce le risorse del sistema (componenti, sottosistemi, tempo di elaborazione, etc.) distribuendole agli utenti e ai procedimenti in corso (processi)

• utilizza la CPU a turno per i diversi processi• conserva più programmi e dati in memoria evitando interferenze

• sincronizza le attività comuni e l’uso di informazioni condivise

• Regolamentazione dell’impiego delle risorse evitando conflitti di accesso

• stabilisce le priorità di intervento necessarie nei vari casi • protegge le informazioni private degli utenti da accessi non autorizzati

• simula per ogni utente un sistema di elaborazione dedicato e completo (macchina virtuale)

30Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema OperativoArchitettura

L’architettura del sistema operativo tiene conto dell’architettura ideale dell’elabo-ratore (macchina di von Neumann).Dal punto di vista schematico è costituito da 4 elementi fondamentali:Kernel (nucleo)Gestore della memoriaGestore delle perifericheFile system

Page 16: 3.2 Informatica1    Uni Fe  L.P

16

31Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema OperativoArchitettura

32Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema OperativoArchitettura

Kernel (nucleo)Gestore della memoriaGestore delle perifericheFile system

Page 17: 3.2 Informatica1    Uni Fe  L.P

17

33Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema OperativoArchitettura: Kernel…

Il kernel (nucleo) è detto anche gestore dei processi. Rappresenta la parte più interna di un sistema operativo, quella che si interfaccia direttamente alla parte hardwareLa sua funzione è quella di governare l’utilizzo della CPU da parte dei programmi attivi nel sistema.

34Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema Operativo… Architettura: Kernel …

In un sistema operativo monotasking,

in pratica, il kernel fa sì che il singolo

programma in funzione in quel

momento continui ad utilizzare la CPU

fino a che non ha terminato tutte le

sue operazioni.

Page 18: 3.2 Informatica1    Uni Fe  L.P

18

35Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema Operativo…Architettura: Kernel

In un sistema operativo

multitasking/multithreading, invece, il

kernel fa sì che i diversi task e i diversi

thread attivi nel sistema si alternino

nell’utilizzo della CPU.

Time Slicing del processore…

36Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema OperativoArchitettura

Kernel (nucleo)Gestore della memoriaGestore delle perifericheFile system

Page 19: 3.2 Informatica1    Uni Fe  L.P

19

37Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema OperativoArchitettura: Gestore della memoria…

Il gestore della memoria gestisce

l’allocazione della memoria (RAM,

cache e memoria virtuale) fra i

diversi processi attivi nel sistema.

38Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema Operativo…Architettura: Gestore della memoria…

Ogni processo deve essere caricato nella RAM con i suoi dati per essere eseguito dalla CPU.

Le risorse di memoria RAM possono però essere insufficienti a contenere tutti i processi contemporaneamente e quindi il gestore della memoria si occupa dell’utilizzo della memoria fisica, virtuale e cache di ciascun processo.

Page 20: 3.2 Informatica1    Uni Fe  L.P

20

39Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema Operativo…Architettura: Gestore della memoria

Tiene traccia di quali parti della memoria sono libere e quali allocateAlloca la memoria ai processi quando ne hanno bisognoDeallocare la memoria di un processo quando non gli serve piùGestisce il trasferimento di informazioni tra memoria principale e memoria di massa quando la memoria principale non può contenere tutti i processi

40Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema OperativoArchitettura

Kernel (nucleo)Gestore della memoriaGestore delle perifericheFile system

Page 21: 3.2 Informatica1    Uni Fe  L.P

21

41Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema Operativo…Architettura: Gestore delle periferiche

Gestisce il funzionamento delle

periferiche cercando di liberare il

più possibile la CPU dalla necessità

di attendere i tempi necessari a

ciascuna periferica a terminare le

sue operazioni.

42Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema Operativo…Architettura: Gestore delle periferiche

Spesso governa interfacce intelligenti che permettono di “scaricare” la CPU stessa dell’attività di governo delle periferiche.

(esempio: Driver delle stampanti, spooler di stampa)

Page 22: 3.2 Informatica1    Uni Fe  L.P

22

43Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema OperativoArchitettura

Kernel (nucleo)Gestore della memoriaGestore delle perifericheFile system

44Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema Operativo…Architettura: File system

I dati e i programmi vengono memorizzati su memorie di massa. Il file system è lo strato di sistema operativo che permette all’utente e ai programmi di accedere ai dati memorizzati sulle memorie di massa senza preoccuparsi del particolare hardware utilizzato.

Page 23: 3.2 Informatica1    Uni Fe  L.P

23

45Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema Operativo…Architettura: File system, file…

Funzioni fondamentali gestite dal file system:

– preparazione del supporto ad ospitare i file

– allocazione sulle unità di memorizzazione,

– creazione di un file

– assegnazione di un nome a un file,

– Modifica di un file,

– Cancellazione di un file.

46Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema Operativo…Architettura: File system

• Gestisce le informazioni su memoria di massa (e in genere le informazioni scambiate con la periferia) dandone una visibilitàe una strutturazione logica anziché fisica

• identifica i file in modo univoco, indipendentemente dalla loro collocazione sui dispositivi

• fornisce metodi di accesso per leggere, scrivere e indirizzare iblocchi di informazioni contenuti in un file

• fornisce operazioni di gestione dei file: creazione, predisposizione, cancellazione, identificazione

• realizza meccanismi di controllo sull'accesso per garantire privatezza e coerenza formale

• nasconde le caratteristiche fisiche dell'unità di memorizzazione, virtualizzando i metodi di accesso e di gestione

• gestisce gli errori e il ripristino da situazioni di malfunzionamento.

Page 24: 3.2 Informatica1    Uni Fe  L.P

24

47Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema Operativo…Architettura: Preparazione supporti

La preparazione delle unità di memoria massa consente di predisporle per la memorizzazione delle stringhe di bit che rappresentano i dati.

48Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema OperativoFile system, formattazione…

Page 25: 3.2 Informatica1    Uni Fe  L.P

25

49Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema OperativoFile System: struttura

Struttura del File System

• Il file system di Windows è organizzato in maniera gerarchica ad albero.

• Nel file system di Windows, abbiamo una con la radice chiamata desktop che contiene tutte le risorse fisiche e logiche della macchina.

50Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema Operativo…Architettura: File system, nomi dei file…

Ciascun file è caratterizzato dai seguenti attributi:

•un nome •un tipo•collocazione•Dimensione•Data di creazione•Data di modifica

Page 26: 3.2 Informatica1    Uni Fe  L.P

26

51Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema Operativo…Architettura: File system, nomi dei file…

Ciascun file può essere assoggettato alle seguenti operazioni:

•Creazione•Scrittura•Lettura•Posizionamento•Ridenominazione•Spostamento •Cancellazione

52Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema Operativo…Architettura: File system, file…

Page 27: 3.2 Informatica1    Uni Fe  L.P

27

53Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema Operativo…Architettura: File system, Gerarchia…

54Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema Operativo…Architettura: File system, Gerarchia…

Page 28: 3.2 Informatica1    Uni Fe  L.P

28

55Luigi Puzone ® Informatica 1 – Università di Ferrara – A.A. 2008-2009 Modulo 3.2: Sistemi operativi e software

Sistema Operativo…Architettura: File system, Gerarchia…