Elo1218
Ominide
3 min. di lettura
Vota

Concetti Chiave

  • Il sistema operativo (S.O.) gestisce le risorse del calcolatore, fornendo un'interfaccia per l'utente e supportando sistemi monotask e multitask.
  • Componenti chiave del S.O. includono l'interprete comandi, il gestore della memoria, delle periferiche, dei file e il kernel.
  • I processi sono programmi in esecuzione caratterizzati da codice e stato, gestiti dal gestore dei processi tramite un descrittore di processo.
  • Gli stati di un processo includono: in esecuzione, in attesa e pronto, determinando la gestione del processore.
  • Lo scheduling dei processi, come il time-sharing, permette l'illusione di esecuzione contemporanea assegnando un quanto di tempo a ciascun processo.

Indice

  1. Sistema operativo
  2. I processi

Sistema operativo

Il sistema operativo (S.O.) è l'insieme di programmi e librerie che opera direttamente sulla macchina fisica. Esso fornisce all'utente una interfaccia per usare e gestire il calcolatore in modo semplice; è responsabile della gestione delle risorse del calcolatore. I moderni S.O. si classificano in:
sistemi MONOTASK: permettono l'esecuzione di un solo programma utente per volta (DOS);
sistemi MULTITASK: permettono l’esecuzione di più programmi utente contemporaneamente.

Il sistema operativo è composto da:
interprete comandi: l’interfaccia con cui l’utente del calcolatore interagisce in modo diretto, è il componente più esterno.

Esso definisce le operazioni, che possono essere utilizzate direttamente dall’utente finale, chiamate comandi. Può essere basato su un'interfaccia a caratteri, o grafica;
gestore della memoria: è responsabile dell’allocazione dinamica della memoria centrale ai programmi in esecuzione, suddivide la memoria tra i vari processi in esecuzione e gestisce la politica di assegnamento della memoria ai processi. Può usare una parte della memoria di massa come area di memoria di appoggio, la memoria virtuale (swap);
gestore delle periferiche: gestisce il malfunzionamento delle periferiche e adatta la modalità d’uso delle singole periferiche a quello di poche tipologie di periferiche virtuali;
gestore dei file: è responsabile della gestione della memoria secondaria (hard disk). Esso consente l’uso della memoria secondaria mediante una organizzazione logica in: volumi (contenitore di file e cartelle), cartelle (contenitore di un insieme di file e cartelle) e file (contenitore logico di informazioni, caratterizzato da un: contenuto ovvero una sequenza di byte, e da un nome che ne consente l’identificazione);
nucleo (kernel): è responsabile della risorsa unità di elaborazione (processore) e dei processi (programmi in esecuzione); esso definisce tanti processori virtuali, uno per ogni programma che si vuole eseguire.

Il sistema operativo è corredato da un insieme di programmi di utilità per la configurazione, l'ottimizzazione e la gestione ordinaria del sistema: gestione degli utenti, delle periferiche e delle applicazioni.

I processi

Un processo è un programma in esecuzione. È costituito da: un codice, il programma vero e proprio; e da uno stato, i dati contenuti in memoria e nei registri in un dato istante. Un programma può dar luogo a più processi.
Il gestore dei processi si occupa di eseguire i vari processi, memorizza i dati di ciascun processo in una struttura dati chiamata descrittore di processo.
Gli stati di un processo sono:
in esecuzione: al processo è assegnato il processore, che esegue fino a quando si verifica un evento esterno o interno;
in attesa: il processo arriva in questo stato a seguito di una interruzione interna, andrà in uno stato di pronto quando l’operazione richiesta sarà completata;
pronto: il processo giunge qui dallo stato di attesa dopo il completamento dell’operazione input/ output richiesta, o dallo stato di esecuzione.

Lo SCHEDULING dei processi è utilizzato per dare l'illusione dell'esecuzione contemporanea di processi. Una possibilità è il TIME-SHARING, ovvero ad ogni processo è assegnato un quanto di tempo, allo scadere del quale il processo è spostato in stato di pronto ed il processore è assegnato ad un altro processo.

Domande da interrogazione

  1. Qual è la funzione principale del sistema operativo?
  2. Il sistema operativo fornisce un'interfaccia per usare e gestire il calcolatore in modo semplice e gestisce le risorse del calcolatore.

  3. Quali sono le differenze tra sistemi MONOTASK e MULTITASK?
  4. I sistemi MONOTASK permettono l'esecuzione di un solo programma utente per volta, mentre i sistemi MULTITASK permettono l’esecuzione di più programmi utente contemporaneamente.

  5. Quali sono i componenti principali del sistema operativo?
  6. I componenti principali includono l'interprete comandi, il gestore della memoria, il gestore delle periferiche, il gestore dei file e il nucleo (kernel).

  7. Come viene gestita la memoria nei sistemi operativi moderni?
  8. La memoria è gestita dal gestore della memoria, che si occupa dell’allocazione dinamica della memoria centrale ai programmi in esecuzione e può utilizzare la memoria virtuale come area di appoggio.

  9. Che cos'è lo scheduling dei processi e come funziona il time-sharing?
  10. Lo scheduling dei processi è utilizzato per dare l'illusione dell'esecuzione contemporanea di processi. Il time-sharing assegna a ogni processo un quanto di tempo, dopo il quale il processo è spostato in stato di pronto e il processore è assegnato a un altro processo.

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community