Sei sulla pagina 1di 27

Benvenuti al corso

Sistemi operativi con laboratorio


Prof. Arturo Carpi

Prof. Fabio Rossi

2022/23
Obiettivi formativi

Conoscenze
concetti di base comuni ai sistemi operativi, alla loro
architettura e loro principali funzionalità
tecnologie e tecniche HW e SW sviluppate per la
soluzione delle principali problematiche insite nel processo
di progetto, realizzazione ed utilizzo di un sistema
operativo.

Abilità
analisi e soluzione dei problemi tipici relativi alla gestione,
sincronizzazione e comunicazione tra processi.

2
Prerequisiti

Matematica Discreta
Nozioni di relazione, albero, grafo.

Architettura degli elaboratori


funzioni logiche e loro rappresentazione;la rappresentazione
dei numeri e aritmetica di macchina; architettura a livello del
processore; indirizzamento ed esecuzione delle istruzioni;
dispositivi di memoria

Programmazione
basi della programmazione in C; costrutti di controllo; headers
e compilazione separata; strutture dati (array, struct, union) e
allocazione dinamica della memoria; operazioni di I/O; funzioni e
argomenti funzione.

3
Testi di riferimento

OPERATING

OPERATING SYSTEM CONCEPTS


Wiley’sDigitalAdvantage

Silberschatz Galvin Gagne


SYSTEM
Did you know this book is available as a Wiley E-Text?
E-textbooks offer the complete content of the printed textbook on the device
of your preference—computer, iPad, tablet, or smartphone—giving you
the freedom to read or study anytime, anywhere.

CONCEPTS
For Instructors: For Students:
Wiley E-Texts allow you to save your Wiley E-Texts offer a more affordable
teaching notes within the digital version alternative to traditional print. You can

ls
of the printed textbook. Now you can access course materials and content
have one digital library to take to and anytime, anywhere through a user

ia
from the classroom for all of the courses experience that makes learning
you teach. rewarding.

nt
✓ Search content
✓ Take notes

Esse
✓ Highlight key materials
✓ Organize all your work in one place

Save At Least
50% Off Printed Textbook Costs!
Essentia

How Can Students Purchase E-textbooks?


Via your campus bookstore: Directly from online retailers:
Wiley E-Text: Powered by VitalSource Including Wiley.com, Amazon,
ISBN 978-1-118-84392-5 Barnes & Noble, and CourseSmart® Second Edition
For information about this title, including additional ordering options and accompanying resources, visit:
www.wiley.com/college/silberschatz or contact your Wiley representative.
ls

Abraham Silberschatz
Cover Design Credit: Madelyn Lesure
Cover Images Credit: © Susan Cyr ISBN 978-1-118-80492-6
Peter Baer Galvin
90000

www.wiley.com/college/silberschatz Second Greg Gagne


Edition
9 781118 804926

Anche in italiano

4
Materiale didattico

Su Unistudium:
slides
esercizi proposti
avvisi

Ricevimento
Lunedì ore 13–15, Martedì ore 10–11 (salvo modifiche)
oppure su appuntamento (anche su Teams)

Per comunicare con me usare esclusivamente


e-mail istituzionale (nome.cognome@studenti.unipg.it) con
un oggetto significativo
messaggistica Unistudium

5
Il corso

Durata del corso


Teoria: 6 CFU = 42 ore
Laboratorio 3 CFU = 36 ore col prof. Fabio Rossi

Per la miglior riuscita del corso . . .


Interrompetemi liberamente per
chiarimenti
curiosità
segnalare errori
soprattutto se faccio riferimento a qualche nozione che
non conoscete
Per chi è a distanza: quando non volete intervenire tenete
camera e microfono spenti

6
Esame

Progetto
Maggiori informazioni dal prof. Fabio Rossi

Prova orale
Durata circa 30’
Include discussione del progetto
Obiettivo verificare
comprensione dei contenuti teorici
conoscenza degli argomenti in programma
capacità espositiva (linguaggio tecnico)
Lingua Italiano, Inglese o Francese

7
DOMANDE ?
Introduzione

Arturo Carpi

Dipartimento di Matematica e Informatica


Università di Perugia

Corso di Sistemi Operativi - a.a. 2022/23


Compiti di un sistema operativo

Sistema operativo
un programma che controlla gli altri programmi
un’interfaccia tra applicazioni e hardware

Obiettivi del sistema operativo


Convenienza
Efficienza
Capacità di evolversi

Introduzione Sistemi operativi 2022/23 2/19


Il sistema di elaborazione

Application programs
Application
programming interface
Application Libraries/utilities Software
binary interface
Operating system
Instruction Set
Architecture
Execution hardware

Memory
System interconnect
translation Hardware
(bus)

I/O devices
Main
and
memory
networking

Introduzione Sistemi operativi 2022/23 3/19


Interfaccia utente computer

Servizi del sistema operativo


creazione dei programmi
esecuzione dei programmi
accesso ai dispositivi I/O
accesso controllato ai file
accesso al sistema
rilevazione degli errori e risposta
contabilità

Interfacce
ISA Instruction set architecture
ABI Application binary interface
API Application programming interface

Introduzione Sistemi operativi 2022/23 4/19


Gestione delle risorse
Computer System
I/O Devices
Memory
Operating I/O Controller Printers,
System keyboards,
Software digital camera,
I/O Controller etc.

Programs
and Data

I/O Controller

Storage
Processor Processor OS
Programs

Data

Introduzione Sistemi operativi 2022/23 5/19


Gestione delle risorse

Osservazione
Il sistema operativo
è un normale programma eseguito dal processore
cede il controllo e, per riaverlo, dipende dal processore

Introduzione Sistemi operativi 2022/23 6/19


Evoluzione dei sistemi operativi

Un sistema operativo si evolve nel tempo per

aggiornamento e nuovi tipi di hardware


richiesta di nuovi servizi
correzione di errori

Introduzione Sistemi operativi 2022/23 7/19


Prima generazione (1945–55)

valvole
nessun sistema operativo
controllo da consolle

Problemi
schedulazione
tempo di preparazione

Introduzione Sistemi operativi 2022/23 8/19


Seconda generazione (1955–65)

Sistemi a lotti
transistor
sistema gestito da un operatore
lavori raggruppati in lotti sul dispositivo di ingresso
il monitor ordina il caricamento dei programmi e delle utility necessarie
al termine del lavoro il controllo torna al monitor
Job Control Language

Introduzione Sistemi operativi 2022/23 9/19


Esempio

Introduzione Sistemi operativi 2022/23 10/19


Gestione della memoria

Interrupt Nuove funzioni hardware


Processing
Protezione della memoria
Device
Drivers
Timer
Monitor
Job Istruzioni privilegiate
Sequencing Interruzioni
Control Language
Interpreter
Boundary

User
Program
Area

Introduzione Figure 2.3 Memory Layout for aSistemi


Resident Monitor
operativi 2022/23 11/19
Overhead

Parte della memoria è occupata dal monitor


Parte del tempo macchina è utilizzato dal monitor

Introduzione Sistemi operativi 2022/23 12/19


Terza generazione (1965–80)

Circuiti integrati
Multiprogrammazione

Esempio
Lettura di un record 15 𝜇s
Esecuzione di 100 istruzioni 1 𝜇s
Scrittura di un record 15 𝜇s
Totale 31 𝜇s
Utilizzo della CPU = 311 = 3.2%

Introduzione Sistemi operativi 2022/23 13/19


100% 100%

CPU CPU
0% 0%
100% 100%

Memory Memory
0% 0%
100% 100%

Disk Disk
0% 0%
100% 100%

Terminal Terminal
0% 0%
100% 100%

Printer Printer
0% 0%

Job History Job History JOB1


JOB1 JOB2 JOB3
JOB2
0 5 10 15 20 25 30
minutes JOB3

time 0 5 10 15
minutes
time
(a) Uniprogramming (b) Multiprogramming

Figure 2.6 Utilization Histograms


Multiprogrammazione

Problemi
Gestione della memoria
Scheduling

Introduzione Sistemi operativi 2022/23 15/19


Time-sharing

Gestione di più lavori interattivi


Processore condiviso da più utenti
Gli utenti accedono simultaneamente attraverso terminali
Il sistema operativo alterna l’esecuzione di ciascun programma utente
per un breve periodo (quanto di elaborazione)

Introduzione Sistemi operativi 2022/23 16/19


Esempio: CTSS

0 0 0
Monitor Monitor Monitor
5000 5000 5000
JOB 3
10000
JOB 1
JOB 2
(JOB 2)
20000

Free 25000 25000


Free Free
32000 32000 32000
(a) (b) (c)

0 0 0
Monitor Monitor Monitor
5000 5000 5000
JOB 4
JOB 1
15000 JOB 2
(JOB 1)
20000 20000
(JOB 2) (JOB 2)
25000 25000 25000
Free Free Free
32000 32000 32000
(d) (e) (f)

Introduzione Sistemi operativi 2022/23 17/19


Multiprogrammazione e time-sharing

Multiprogrammazione Time-sharing

Obiettivo principale Massimizzare l’uso del Minimizzare il tempo


processore di risposta
Istruzioni al sistema JCL: istruzioni fornite Comandi inseriti al
operativo col job terminale

Introduzione Sistemi operativi 2022/23 18/19


Quarta e quinta generazione

Quarta generazione (1980–oggi)


LSI: Integrazione su larga scala
Personal Computer
interfaccia amichevole

Quinta generazione (1990–oggi)


smartphone
energia limitata
nuovi dispositivi

Introduzione Sistemi operativi 2022/23 19/19

Potrebbero piacerti anche