Tipi di sistema operativo
I sistemi operativi esistono dalla prima generazione di computer e continuano a evolversi nel tempo. In questo capitolo, discuteremo alcuni dei tipi importanti di sistemi operativi più comunemente usati.
Sistema operativo batch
Gli utenti di un sistema operativo batch non interagiscono direttamente con il computer. Ogni utente prepara il proprio lavoro su un dispositivo off-line come le schede perforate e lo invia all'operatore del computer. Per accelerare l'elaborazione, i lavori con esigenze simili vengono raggruppati in batch ed eseguiti come gruppo. I programmatori lasciano i loro programmi all'operatore e l'operatore ordina quindi i programmi con requisiti simili in batch.
I problemi con i sistemi batch sono i seguenti:
- Mancanza di interazione tra l'utente e il lavoro.
- La CPU è spesso inattiva, perché la velocità dei dispositivi I / O meccanici è inferiore a quella della CPU.
- Difficile fornire la priorità desiderata.
Sistemi operativi time-sharing
Il time-sharing è una tecnica che consente a molte persone, situate in diversi terminali, di utilizzare contemporaneamente un particolare sistema informatico. Il time-sharing o il multitasking è un'estensione logica della multiprogrammazione. Il tempo del processore condiviso tra più utenti contemporaneamente è definito condivisione del tempo.
La principale differenza tra i sistemi batch multiprogrammati e i sistemi time-sharing è che nel caso di sistemi batch multiprogrammati, l'obiettivo è massimizzare l'uso del processore, mentre nei sistemi time-sharing l'obiettivo è ridurre al minimo i tempi di risposta.
Più lavori vengono eseguiti dalla CPU passando da uno all'altro, ma gli scambi si verificano così frequentemente. Pertanto, l'utente può ricevere una risposta immediata. Ad esempio, in un'elaborazione di transazione, il processore esegue ogni programma utente in un breve burst o quantum di calcolo. Cioè, sengli utenti sono presenti, quindi ogni utente può ottenere un quantum temporale. Quando l'utente invia il comando, il tempo di risposta è di pochi secondi al massimo.
Il sistema operativo utilizza la pianificazione della CPU e la multiprogrammazione per fornire a ciascun utente una piccola porzione di tempo. I sistemi informatici progettati principalmente come sistemi batch sono stati modificati in sistemi di condivisione del tempo.
I vantaggi dei sistemi operativi in multiproprietà sono i seguenti:
- Offre il vantaggio di una risposta rapida.
- Evita la duplicazione del software.
- Riduce il tempo di inattività della CPU.
Gli svantaggi dei sistemi operativi time-sharing sono i seguenti:
- Problema di affidabilità.
- Questione di sicurezza e integrità dei programmi utente e dei dati.
- Problema di comunicazione dei dati.
Sistema operativo distribuito
I sistemi distribuiti utilizzano più processori centrali per servire più applicazioni in tempo reale e più utenti. I lavori di elaborazione dei dati vengono distribuiti di conseguenza tra i processori.
I processori comunicano tra loro attraverso varie linee di comunicazione (come bus ad alta velocità o linee telefoniche). Questi sono indicati comeloosely coupled systemso sistemi distribuiti. I processori in un sistema distribuito possono variare in dimensione e funzione. Questi processori sono indicati come siti, nodi, computer e così via.
I vantaggi dei sistemi distribuiti sono i seguenti:
- Con la funzione di condivisione delle risorse, un utente in un sito potrebbe essere in grado di utilizzare le risorse disponibili in un altro.
- Velocizza lo scambio di dati tra loro tramite posta elettronica.
- Se un sito si guasta in un sistema distribuito, i siti rimanenti possono potenzialmente continuare a funzionare.
- Migliore servizio ai clienti.
- Riduzione del carico sul computer host.
- Riduzione dei ritardi nel trattamento dei dati.
Sistema operativo di rete
Un sistema operativo di rete viene eseguito su un server e fornisce al server la capacità di gestire dati, utenti, gruppi, sicurezza, applicazioni e altre funzioni di rete. Lo scopo principale del sistema operativo di rete è consentire l'accesso condiviso a file e stampanti tra più computer in una rete, in genere una rete locale (LAN), una rete privata o ad altre reti.
Esempi di sistemi operativi di rete includono Microsoft Windows Server 2003, Microsoft Windows Server 2008, UNIX, Linux, Mac OS X, Novell NetWare e BSD.
I vantaggi dei sistemi operativi di rete sono i seguenti:
- I server centralizzati sono altamente stabili.
- La sicurezza è gestita dal server.
- Gli aggiornamenti a nuove tecnologie e hardware possono essere facilmente integrati nel sistema.
- L'accesso remoto ai server è possibile da diverse posizioni e tipi di sistemi.
Gli svantaggi dei sistemi operativi di rete sono i seguenti:
- Costo elevato di acquisto e gestione di un server.
- Dipendenza da una posizione centrale per la maggior parte delle operazioni.
- Sono necessari manutenzione e aggiornamenti regolari.
Sistema operativo in tempo reale
Un sistema in tempo reale è definito come un sistema di elaborazione dati in cui l'intervallo di tempo richiesto per elaborare e rispondere agli input è così piccolo da controllare l'ambiente. Il tempo impiegato dal sistema per rispondere a un input e visualizzare le informazioni aggiornate richieste è definito comeresponse time. Quindi, in questo metodo, il tempo di risposta è molto inferiore rispetto all'elaborazione in linea.
I sistemi in tempo reale vengono utilizzati quando ci sono requisiti di tempo rigidi per il funzionamento di un processore o il flusso di dati e i sistemi in tempo reale possono essere utilizzati come dispositivo di controllo in un'applicazione dedicata. Un sistema operativo in tempo reale deve avere vincoli di tempo fissi e ben definiti, altrimenti il sistema fallirà. Ad esempio, esperimenti scientifici, sistemi di imaging medico, sistemi di controllo industriale, sistemi d'arma, robot, sistemi di controllo del traffico aereo, ecc.
Esistono due tipi di sistemi operativi in tempo reale.
Sistemi hard real-time
I sistemi hard real-time garantiscono che le attività critiche vengano completate in tempo. Nei sistemi hard real-time, l'archiviazione secondaria è limitata o mancante ei dati vengono archiviati nella ROM. In questi sistemi, la memoria virtuale non viene quasi mai trovata.
Sistemi soft real-time
I sistemi soft in tempo reale sono meno restrittivi. Un'attività critica in tempo reale ottiene la priorità su altre attività e mantiene la priorità fino al completamento. I sistemi soft real-time hanno un'utilità limitata rispetto ai sistemi hard real-time. Ad esempio, multimedia, realtà virtuale, progetti scientifici avanzati come esplorazione sottomarina e rover planetari, ecc.