UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Introduzione ai
sistemi operativi
Prof. Michele Amoretti
Fondamenti di Informatica
a.a. 2008/2009
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Sommario
• Caratteristiche generali
• Struttura dei sistemi operativi
• Evoluzione dei sistemi operativi
• Gestione batch
•
•
•
•
•
•
Monoprogrammazione
Monitor
Multiprogrammazione
Schedulazione
Spooling
Time sharing
• Processi
• Sistema di protezione
• System call
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Caratteristiche generali

Un sistema di elaborazione può essere visto come un insieme
di risorse hardware e software utilizzate per lo sviluppo e
l’esecuzione dei programmi utente.

Tali risorse devono essere:
o
utilizzate secondo un determinato ordine
o
eventualmente rese disponibili a più utenti anche
simultaneamente
o
protette contro accessi non autorizzati
o
organizzate in modo da garantire la sopravvivenza del
sistema in caso di guasti
o
gestite in modo che risulti semplificato ed efficiente il loro
uso, ecc.
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Caratteristiche generali
Con il termine sistema operativo si intende quell'insieme di
programmi che provvedono alla gestione delle risorse di
un sistema di calcolo.
Una definizione alternativa (Tanenbaum): un sistema operativo è
un programma che controlla le risorse di un calcolatore e fornisce
ai suoi utenti un'interfaccia o macchina virtuale più agevole da
utilizzare della macchina "nuda".
Il sistema operativo è un meccanismo di controllo inusuale perché

è un programma come gli altri

spesso rinuncia al controllo e deve dipendere dal processore
per tornarne in possesso
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Caratteristiche generali
Il sistema operativo può essere visto come:
- allocatore di risorse: tempo di CPU, spazio di memoria,
dispositivi di I/O, compilatori, ecc. Le risorse devono essere
assegnate a programmi specifici secondo determinate
politiche.
- programma di controllo:
controlla l'esecuzione dei programmi per prevenire errori ed
usi impropri del calcolatore (in particolare per il controllo dei
dispositivi di I/O).
Obiettivi del sistema operativo:
- rendere più semplice l'uso di un sistema di calcolo
- rendere più efficiente l'uso delle risorse del sistema di calcolo
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Caratteristiche generali
Gestione delle risorse significa:
-
tenere traccia delle risorse
adottare strategie di assegnazione
allocare le risorse
recuperare le risorse inutilizzate
rilevare eventuali usi impropri
Funzioni specifiche:
- gestione della memoria principale e di quella secondaria, in
base a regole gerarchiche, realizzando il meccanismo della
memoria virtuale
- gestione del/i processore/i
- gestione dei dispositivi periferici di I/O
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Caratteristiche generali
Gestione della memoria centrale
caricare in memoria programmi e dati
evitare interferenze fra programmi diversi
assegnare la memoria in base a criteri di efficienza
minimizzare i trasferimenti tra memoria centrale e memoria
secondaria.
Gestione della memoria secondaria
consentire l'accesso all'informazione in base alla sua
organizzazione logica (File System) anzichè fisica (ad es.
dischi, tracce, settori)
controllare i diritti di accesso ai file da parte degli utenti
consentire creazione, modifica e cancellazione dei file, ...
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Caratteristiche generali
Gestione dei processori
decidere quale programma userà il processore (scheduling) in
base a criteri di corretto funzionamento e di efficienza
verificare che i programmi rilascino il processore entro il
tempo stabilito.
Gestione dei dispositivi periferici di I/O
mascherare al programmatore la complessità delle operazioni
di I/O
effettuare controlli sul corretto funzionamento delle operazioni
risolvere conflitti nell'utilizzo di una stessa periferica da parte
di più programmi
consentire il massimo sfruttamento delle periferiche.
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Caratteristiche generali
Utenti del sistema operativo:





utenti finali del sistema
per essi il sistema operativo è trasparente
programmatori applicativi
utilizzano i servizi del s.o. per la realizzazione e l'esecuzione
dei loro programmi
programmatori di sistema
aggiornano e modificano i programmi del s.o. per adeguarli a
nuove necessità del sistema o degli utenti applicativi
operatori
controllano il funzionamento e rispondono alle richieste di
intervento da parte del sistema
amministratore del sistema
stabilisce le politiche di gestione del sistema e ne cura
l'osservanza
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Caratteristiche generali
Tipi di sistemi operativi:
Sistemi proprietari

progettati dai costruttori al fine di sfruttare in modo ottimale
le risorse di ciascun tipo di macchina

l'interfaccia con l'utente varia tra le diverse famiglie di sistemi

esempi:
- IBM: OS/360 - 370, VM, MVS
- DEC: RT-11, VMS
Sistemi standard

progettati da case di software o da comunità di sviluppatori,
sono portabili su macchine di tipo diverso

l'interfaccia con l'utente rimane costante nelle diverse versioni

esempi:
- UNIX, MS-DOS, Windows
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Struttura dei sistemi operativi

Necessità di modularizzazione, date le dimensioni.

Sistema a livelli.

Affinché il livello Li possa richiedere i servizi offerti dal livello
Li-1 deve conoscerlo precisamente, tuttavia l'implementazione
di tali servizi deve risultare totalmente nascosta.

La stratificazione più opportuna può risultare non evidente; è
dipendente dall'evoluzione tecnologica dell’hardware.
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Struttura dei sistemi operativi
Modello “a cipolla”:
Programmi utente
Interprete comandi
Programmi di utilità
Periferiche virtuali
File System
Gestore memoria virtuale
Nucleo del sistema operativo
Macchina hardware
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Struttura dei sistemi operativi
Nucleo o kernel: parte di s.o. sempre residente nella memoria
principale, mette a disposizione le system call ai programmi di
sistema ed applicativi.

Fornisce un meccanismo per la creazione e la distruzione dei
processi

Provvede allo scheduling della CPU, alla gestione della
memoria e dei dispositivi di I/O

Fornisce strumenti per la sincronizzazione dei processi

Fornisce strumenti per la comunicazione tra processi
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Evoluzione dei sistemi operativi
I primi calcolatori:
- Erano privi di s.o. e monoprogrammati
- Il programmatore era anche operatore interattivo ed aveva
visione diretta della macchina e disponibilità di tutte le sue risorse
- L'accesso da parte di più utenti era ottenuto mediante
meccanismi di prenotazione
- problemi: complessità operazioni, inefficienza e rigidità della
prenotazione
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Evoluzione dei sistemi operativi
Prima generazione ('50-'60):
- virtualizzazione dell'I/O, librerie di controllo dei device
- separazione del programmatore dalla macchina tramite
l'operatore
- problemi: debug, set-up dei job
- riduzione dei tempi di set-up tramite s.o. batch dotati di:
- monitor
- multiprogrammazione
- gestione periferiche con tecniche di spooling
 nasce il s.o. come stratificazione successiva di funzioni volte ad
aumentare l'efficienza e la semplicità d'uso della macchina
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Evoluzione dei sistemi operativi
Seconda generazione (‘60-'65):
- indipendenza tra programmi e dispositivi usati (logical I/O)
- parallelizzazione degli utenti tramite multiprogrammazione a
condivisione di tempo (time-sharing).
Terza generazione ('65-'75):
-
s.o. unico per una famiglia di elaboratori
gestione della memoria virtuale
sistemi multifunzione (scientifico, gestionale)
linguaggi di comando complessi
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Evoluzione dei sistemi operativi
Quarta generazione (’75 - …):
- sistemi a macchine virtuali
- sistemi multiprocessore e distribuiti
- interfacce amichevoli per l'utente
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Gestione batch
Significa raggruppare i lavori o i programmi in lotti per conseguire
una maggiore utilizzazione delle risorse, cioè un throughput (=
numero di programmi eseguiti per unità di tempo) più elevato.
Un concetto che si è evoluto nel tempo:
l'operatore raggruppa i programmi in lotti e li immette in tale
forma nel sistema per un più razionale utilizzo delle risorse
i programmi sono inseriti nella memoria di massa e poi
elaborati
La gestione batch può essere locale (unità centrale direttamente
collegata ai dispositivi di I/O) o remota (è presente una
trasmissione dei job e dei risultati ed eventualmente una
memorizzazione intermedia).
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Gestione batch
Operazioni di I/O fuori-linea:

il calcolatore principale non è più rallentato da periferiche lente

trasparente ai programmi applicativi
Calcolatori satellite:

con il compito di scrivere e leggere nastri

di potenza ridotta rispetto a quello centrale

primo esempio di sistema multi-computer
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Gestione batch
Vantaggio ulteriore delle operazioni fuori-linea è la possibilità di utilizzare
più lettori di scheda collegati con una stessa unità nastro in ingresso e
più stampanti collegate con una stessa unità nastro in uscita.
Non ci può essere accesso contemporaneo da parte della CPU e del
lettore di schede o della stampante allo stesso nastro.
I primi sistemi batch erano monoprogrammati.
Successivamente vennero sviluppati sistemi batch in grado di supportare
la multiprogrammazione (multitasking).
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Monoprogrammazione
- Gestione in modo sequenziale nel tempo dei diversi programmi:
l’inizio dell’esecuzione di un programma avviene solamente dopo il
completamento del programma precedente.
- Tutte le risorse sistema sono dedicate all’esecuzione di un solo
programma.
- Bassa utilizzazione delle risorse:
Tp
utilizzazione CPU = ------Tt
Tp = tempo dedicato dalla CPU all’esecuzione del programma
Tt = tempo totale di permanenza nel sistema del programma
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Monitor
Il monitor controlla la sequenza degli eventi. La maggior parte del
monitor, detta monitor residente, deve sempre essere nella
memoria principale e disponibile per l’esecuzione.
Nei primi sistemi batch i programmatori sottoponevano i job su
schede o su nastri, e l’operatore organizzava una sequenza di job
e poneva l’intero “lotto” su un dispositivo di input per l’uso tramite
monitor.
Il monitor legge un job alla volta e lo pone nell’area dei programmi
utente, e gli cede il controllo. Quando viene completato, il job
restituisce il controllo al monitor, che immediatamente legge il job
successivo.
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Multiprogrammazione (multitasking)
- Gestione simultanea di più programmi indipendenti. Ciascuno
di essi può iniziare o proseguire l'elaborazione prima che un altro
sia terminato.
- Le risorse risultano meglio utilizzate in quanto si riducono i
tempi morti.
- Cresce la complessità del sistema operativo: occorrono
algoritmi per la gestione delle risorse (CPU, memoria, I/O),
nascono problemi di protezione, etc.
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Multiprogrammazione (multitasking)
Più programmi sono presenti contemporaneamente in memoria
principale. Quando uno di essi attende per il completamento di
una operazione di I/O, il controllo della CPU viene assegnato
ad un altro:
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Schedulazione
Lo schedulatore a lungo termine (scheduler) determina quali
programmi siano disponibili per l’elaborazione.
Ogni programma pronto per l’elaborazione diventa un processo e
viene immesso in una coda dallo schedulatore a breve termine
(dispatcher), che viene eseguito di frequente e determina quale sia il
successivo job da eseguire.
La schedulazione a medio termine riguarda le funzioni di gestione
della memoria virtuale (swapping = quando la memoria RAM libera
non è più sufficiente per contenere tutte le informazioni che servono
ai programmi, il sistema operativo si fa carico di spostare una certa
quantità di dati - quelli meno recentemente utilizzati - dalla memoria
volatile a quella di massa).
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Spooling
SPOOL: acronimo da Simultaneous Peripheral Operation On Line.
L'applicazione più comune dello spool è con lo spool di stampa. Con
questo sistema, i documenti da stampare vengono caricati in un buffer
(generalmente un'area del disco), da dove vengono inviati alla stampante
ed eliminati via via che questa riesce a gestirli, di solito con tempi
relativamente lunghi.
Dal momento che la versione in stampa dei documenti è stata allocata in
un buffer dove rimane a disposizione della stampante e dei relativi
processi di controllo, l'utilizzatore è libero di svolgere altre operazioni con
il computer mentre la stampa procede in background.
Lo spooling permette inoltre di avere una coda di stampa con molti lavori,
invece di dover attendere che il dispositivo sia libero prima di lanciare la
stampa successiva.
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Time Sharing
L'elaboratore serve "simultaneamente" una pluralità di utenti, dotati di
terminali, dedicando a ciascuno di essi tutte le risorse del sistema per
quanti fissati di tempo.
Migliora i tempi di risposta (turn-around time) ma peggiora l'utilizzazione
delle risorse.
Può essere presente sia in sistemi monoprogrammati che
multiprogrammati.
Normalmente una modalità di gestione time-sharing è adottata nei
sistemi conversazionali, in cui più utenti contemporaneamente
"colloquiano" con il sistema.
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Processi
L'evoluzione dei s.o., guidata da esigenze di efficienza, ha portato alla
presenza in memoria centrale di più programmi in esecuzione.
Emergono nuove funzionalità richieste al s.o., quali la gestione dei
programmi stessi e la protezione dalla mutua interferenza.
Un nuovo punto di vista concettuale :
I programmi di controllo, analogamente ai dispositivi hardware, sono
largamente indipendenti l'uno dall'altro, ed interagiscono con altre
attività di rado ed in punti ben definiti;
La CPU viene "trasferita" da un job all'altro (anzichè "ricevere"
programmi in ingresso);
La specifica sequenza di stati della CPU è scarsamente significativa ed
impredicibile a causa degli interrupt.
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Processi
Processo = attività controllata da un programma che si svolge su un processore.
(es. job batch, programma utente time-shared, task di sistema, etc.)
Alcuni processi dispongono di un processore privato e pertanto sono
permanentemente in esecuzione (ad esempio i controllori delle
periferiche).
Altri processi condividono un processore comune (la CPU).
Distinguiamo:
o processi del s.o. che eseguono il codice del sistema
o processi utenti che eseguono il codice utente.
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Processi
Funzioni del s.o. (riferite ai processi):
- creazione e cancellazione di processi
- sospensione e ripresa di processi
- strumenti per la sincronizzazione e comunicazione
- strumenti per il trattamento di condizioni di deadlock
Stato di un processo:
- in esecuzione (running)
- bloccato (idle, waiting)
- pronto (ready)
esecuzion
e
Scheduling
Richiesta I/O
pronto
bloccato
Interrupt/Timer
Completamento I/O
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Processi
Nei sistemi multiprogrammati più processi possono essere in esecuzione
concorrentemente.
esecuzione
t0
blocco
pronto
esecuzione
t2
t1
blocco
t3
esecuzione
P1
t4
CPU libera
blocco pronto
Introduzione ai sistemi operativi
esecuzione
blocco
pronto
P2
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Processi
Algoritmo: Procedimento logico che deve essere seguito per risolvere il
problema in esame
Programma: Descrizione dell'algoritmo tramite un opportuno formalismo
(linguaggio di programmazione) che rende possibile l'esecuzione
dell'algoritmo da parte di un particolare elaboratore
Processo (sequenziale): La sequenza di eventi che genera un elaboratore
quando opera sotto il controllo di un particolare programma (evento =
esecuzione di una operazione)
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Sistema di protezione
Un processo potrebbe tentare di modificare il programma o i dati di un
altro processo o di parte del s.o. stesso.
Protezione: politiche (cosa) e meccanismi (come) per controllare l'accesso
di processi alle risorse del sistema di elaborazione.
All'hardware è affidato il compito di rilevazione di errori, come opcode
illegali o riferimenti in memoria illegali, possibili effetti di errori di
programmazione o di comportamenti deliberatamente intrusivi.
Questi errori vengono segnalati e affidati alla gestione del s.o. tramite il
meccanismo delle trap.
In presenza di errore o di violazione della protezione il s.o. provvede a:
o
terminare il processo,
o
segnalare la terminazione anomala ed
o
effettuare un dump della memoria.
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Sistema di protezione
Ciascun processo opera in un dominio di protezione che specifica le
risorse a cui il processo può accedere e le operazioni consentite.
Diritto di accesso (coppia ordinata <risorsa, diritti>): abilitazione
all’esecuzione di un’operazione sulla risorsa; un dominio di protezione è
una collezione di diritti di accesso.
Il sistema di protezione richiede l'esistenza di più modi di funzionamento
della CPU:
o
supervisor mode (system mode, monitor mode)
o
user mode
Il passaggio dal modo user al modo supervisor avviene tramite
interruzione :
o
esterna (asincrona)
o
interna (sincrona, trap), generata da una SVC (SuperVisor Call o
System Call).
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Sistema di protezione
Esistono delle istruzioni privilegiate che possono essere eseguite solo in
supervisor mode.
Istruzioni privilegiate:
o
o
o
o
o
I/O
modifica dei registri che delimitano le partizioni di memoria
manipolazione del sistema di interruzione
cambiamento di modo
halt
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Sistema di protezione
Prima di mettere un processo
in esecuzione il s.o. ne confina
lo spazio logico di memoria
mediante registri limite.
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Sistema di protezione
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
Sistema di protezione
Le istruzioni di I/O sono privilegiate.
Il programma utente richiede al s.o.,
tramite una system call, di eseguire
l'operazione di I/O.
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
System call
Tipicamente l'operando dell’istruzione di system call ne specifica il tipo
(INT n), mentre il passaggio degli eventuali parametri avviene tramite
registri o per indirizzo.
Passaggio dei parametri mediante tabella:
Introduzione ai sistemi operativi
Prof. M. Amoretti
UNIVERSITA’ DEGLI STUDI DI PARMA
Corso di Laurea in Ingegneria Gestionale
Fondamenti di Informatica
System call
Costituiscono l'interfaccia tra un programma in esecuzione ed il s.o.
Istruzioni assembly, procedure chiamabili da linguaggi high-level.
Nei linguaggi di alto livello sono tipicamente mascherate (“wrappate”) da
procedure dette di supporto a tempo di esecuzione.
Categorie principali di system call:
a)
b)
c)
d)
controllo dei processi e dei job
manipolazione dei file e dei dispositivi
gestione delle informazioni
comunicazione
Introduzione ai sistemi operativi
Prof. M. Amoretti