Estratto del documento

Sistemi operativi

Definizione

Sistema operativo: programma che controlla l’esecuzione di programmi applicativi. Seconda definizione: interfaccia fra i programmi applicativi e l’hardware. Questa interfaccia è fondamentale, perché nasconde la rudezza e la precisione richiesta dal linguaggio macchina del processore. Il S.O., dunque, offre un più alto livello di astrazione.

Obiettivi principali del sistema operativo

  • Convenzienza: più alto livello di astrazione → semplicità di utilizzo
  • Efficienza: ottima gestione della memoria → non mi interessa sapere se un dato è in memoria primaria, secondaria o cache
  • Abilità di evolversi: cosa non presente prima ma fondamentale vista la velocità di sviluppo odierna. Senza, il S.O. morirebbe subito.

Struttura

Le librerie sono scritte dagli sviluppatori del S.O. e fornite al momento della sua pubblicazione. Queste possono essere utili per I/O, gestione della memoria, aritmetica... Nel corso del tempo si sono consolidate delle librerie (comunque in continuo aggiornamento). In questo modo, non vi è sempre un accesso diretto all’ISA (ma nemmeno al S.O. talvolta), ma c’è la mediazione delle librerie.

Servizi offerti da un S.O.

  • Capacità di sviluppare programmi
  • Possibilità di eseguire programmi applicativi
  • Accedere ai dispositivi I/O
  • Controllare l’accesso ai file
  • Garantire e controllare l’accesso al sistema da parte dell’utente
  • Capacità di trovare gli errori e inviare avvisi su essi
  • Accounting

Un S.O. è un software. Dunque, considerando un singolo core, il S.O. contiene funzioni che devono essere eseguite per controllare l’esecuzione degli altri programmi. C’è, dunque, un’alternanza fra S.O. e programmi applicativi. Nel fare questo passaggio, c’è il rischio che il processore perda il controllo (es: variazione clock). Ciò viene evitato grazie al richiamo del S.O. a ogni ciclo di clock, in modo che possa velocemente controllare la situazione ed eventualmente rimandare in esecuzione il comando iniziale.

Evoluzione dei sistemi operativi

Ci sono varie ragioni per cui i S.O. devono evolversi:

  • Upgrade dell’hardware
  • Nuovi tipi di hardware → es: passaggio da telefoni con tastiera a schermi capacitivi
  • Nuovi servizi
  • Errori, bug da dover riparare → gli aggiornamenti stessi possono creare altri bug, anche perché vengono distribuiti per hardware molto diversi fra loro

Step di evoluzione

Si è partiti da semplici programmi seriali da caricare ogni volta fisicamente nel calcolatore, oltretutto molto costoso. Si è cercato sempre di sfruttare al massimo il processore.

Serial processing

Non c’erano i sistemi operativi, ma erano hardware e sviluppatori che lavoravano su schede perforate per poter utilizzare il linguaggio macchina. Il S.O. era praticamente implementato dagli umani.

Simple Batch Systems

Il sistema prende in carico il job che viene sottomesso dal programmatore. Il monitor processa i vari job e li mette insieme come input. Alla fine, il risultato viene ritornato al monitor. L’utente, dunque, non ha più l’accesso diretto al processore. Il linguaggio utilizzato per scrivere i job era il linguaggio Assembly.

Caratteristiche hardware del monitor

  • Protezione in memoria: sia tra i vari job sia fra i job e il monitor
  • Timer: impedire a un job di monopolizzare il sistema → timer impostato all’inizio di ogni job. Al suo scadere il controllo torna al monitor
  • Stato privilegiato del monitor rispetto ai job, che può eseguire più istruzioni (privilegiate)
  • Interruzioni: errori ecc.

Modalità di operazione

Concetto che deriva dalla nascita delle istruzioni privilegiate. I processi possono essere in esecuzione in due modalità:

  • User mode
  • Kernel mode → utilizzata dal monitor, che può eseguire istruzioni privilegiate e, di conseguenza, accedere ad aree protette di memoria

Implicazioni

Il tempo di esecuzione si alterna fra quello dedicato ai programmi applicativi e quello dedicato al S.O.

Anteprima
Vedrai una selezione di 4 pagine su 15
Sistemi operativi Pag. 1 Sistemi operativi Pag. 2
Anteprima di 4 pagg. su 15.
Scarica il documento per vederlo tutto.
Sistemi operativi Pag. 6
Anteprima di 4 pagg. su 15.
Scarica il documento per vederlo tutto.
Sistemi operativi Pag. 11
1 su 15
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Ingegneria industriale e dell'informazione ING-INF/05 Sistemi di elaborazione delle informazioni

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher vale_condo di informazioni apprese con la frequenza delle lezioni di Sistemi operativi e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli studi di Genova o del prof Armando Alessandro.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community