Sistema Operativo

Un Sistema Operativo (SO) è un insieme di software
che gestisce l'hardware del computer e fornisce servizi per l'esecuzione di programmi.
In pratica, è l'intermediario tra l'utente e il computer, consentendo di utilizzare risorse come la CPU,
la memoria e i dispositivi di input/output in modo efficiente.
La sua funzione principale è quella di garantire che tutte le operazioni di sistema vengano eseguite correttamente,
senza conflitti tra i vari processi in esecuzione.


Funzioni principali di un Sistema Operativo:

  1. Gestione dei processi: Il sistema operativo gestisce l'esecuzione dei programmi.
    Si occupa di avviare, sospendere, terminare e programmare i processi (i programmi in esecuzione).
    Gestisce anche la comunicazione tra i processi e la sincronizzazione, evitando conflitti tra di essi.

  2. Gestione della memoria: Il sistema operativo gestisce la memoria del computer,
    allocandola e deallocandola in modo che ogni processo possa utilizzarla senza interferire con altri processi.
    Questo include la memoria principale (RAM) e la memoria secondaria (come hard disk o SSD).

  3. Gestione dei file: Il SO si occupa della creazione, modifica, accesso e gestione dei file.
    Gestisce anche i permessi di accesso ai file, garantendo la sicurezza e l'integrità dei dati.

  4. Gestione dei dispositivi di input/output: Il sistema operativo gestisce l'interazione
    con i dispositivi hardware come tastiere, mouse, stampanti, monitor, dischi rigidi, ecc.
    Fornisce driver che permettono l'interazione con questi dispositivi.

  5. Gestione delle risorse: Assegna in modo efficiente le risorse hardware, come la CPU,
    la memoria e i dispositivi di I/O, tra i vari processi in esecuzione,
    garantendo che ogni processo ottenga le risorse necessarie senza conflitti.
torna al sommario

Tipologie di Sistemi Operativi:

  1. Sistemi operativi monolitici: In questi sistemi, tutte le funzionalità del sistema operativo
    sono gestite da un unico programma complesso che interagisce direttamente con l'hardware. Esempi: Linux, Unix.

  2. Sistemi operativi microkernel: Questi sistemi operativi riducono al minimo le funzioni del kernel
    (la parte centrale del sistema operativo), spostando molte delle funzionalità verso moduli separati. Esempi: Minix, QNX.

  3. Sistemi operativi a più livelli: In questi sistemi, le funzioni del sistema operativo sono divise in diversi livelli
    o moduli, ognuno con compiti specifici. Esempi: Windows, macOS.

  4. Sistemi operativi in tempo reale (RTOS): Questi sistemi operativi sono progettati per rispondere a eventi
    in tempo reale con una latenza molto bassa. Sono utilizzati in applicazioni critiche,
    come i sistemi di controllo industriale o nei dispositivi embedded. Esempi: VxWorks, FreeRTOS.

  5. Sistemi operativi distribuiti: Questi sistemi gestiscono più computer che lavorano insieme in una rete,
    ma appaiono come un singolo sistema agli utenti. Esempi: Google Android, Hadoop.
torna al sommario

Organizzazione di un Sistema Operativo:

  1. Kernel: È la parte centrale del sistema operativo, che si occupa della gestione delle risorse hardware
    e fornisce i servizi di base per l'esecuzione dei programmi.

  2. Gestione dei processi: Si occupa della pianificazione e del controllo dell'esecuzione dei processi.
    Gestisce l'avvio, la terminazione e la sincronizzazione tra i processi.

  3. Gestione della memoria: Controlla come e quando la memoria viene allocata ai vari processi e
    come viene liberata quando non è più necessaria.

  4. Gestione dei file: Fornisce un’interfaccia per la gestione dei file, come la creazione,
    lettura, scrittura e cancellazione di file.

  5. Interfaccia utente (UI): Fornisce un'interfaccia che consente agli utenti di interagire con il sistema operativo.
    Può essere una UI grafica (GUI), come in Windows e macOS, o una UI a riga di comando (CLI),
    come in molti sistemi Unix/Linux.

  6. Driver di dispositivo: Software che permette al sistema operativo di interagire con i dispositivi hardware,
    come la tastiera, il mouse, la stampante, ecc.
torna al sommario

Modello di Von Neumann:

Il modello di architettura di von Neumann è costituito da tre sottosistemi interconnessi:
il Processore (o Unità centrale di elaborazione – CPU), la Memoria e i Dispositivi di I/O (Input/Output o Ingresso/Uscita).
La connessione tra questi sottosistemi è realizzata mediante un altro dispositivo, noto come Bus.
Il modello di Von Neumann è formato da un'unità d'ingresso (input) dove vengono acquisiti i programmi e i dati che poi vengono memorizzati nella memoria centrale (RAM).
La CU (Central Unit) interpreta le istruzioni registrate nella RAM e coordina i vari componenti del computer tramite i BUS di controllo.

torna al sommario

Classificazione di un Sistema Operativo:

  1. Monoutente:un solo utente alla volta.
  2. Multiutente: tanti utenti contemporaneamente sullo stesso computer.

  3. Monoprogrammato: un'app alla volta.
  4. Multiprogrammato: molte app in contemporanea.

  5. Multiprocessing: più app funzionano su più CPU.
torna al sommario

Il Kernel di un sitema operativo:

Il kernel di un sistema operativo è la parte centrale che gestisce l'hardware e fornisce i servizi di base per il funzionamento del software. Le sue principali funzioni sono:

  1. Gestione della memoria: assegna e libera la memoria.

  2. Gestione dei processi: crea, pianifica e termina i processi.

  3. Gestione dell'input/output (I/O): coordina l'interazione con i dispositivi hardware.

  4. Gestione dei dispositivi: fornisce interfacce per l'accesso ai dispositivi tramite driver.

  5. Sicurezza: controlla gli accessi e protegge il sistema.
torna al sommario

per tornare all'indice Clicca qui

pagina web di Anastasia Vaccariello