Sistema operativo - Proprietà

Elaborazione in lotti

L'elaborazione in batch è una tecnica in cui un sistema operativo raccoglie i programmi ei dati insieme in un batch prima dell'inizio dell'elaborazione. Un sistema operativo esegue le seguenti attività relative all'elaborazione batch:

  • Il sistema operativo definisce un lavoro che ha una sequenza predefinita di comandi, programmi e dati come una singola unità.

  • Il sistema operativo mantiene un numero di lavori in memoria e li esegue senza alcuna informazione manuale.

  • I lavori vengono elaborati in base all'ordine di presentazione, ovvero, primo arrivato, primo servito.

  • Quando un lavoro completa la sua esecuzione, la sua memoria viene rilasciata e l'output del lavoro viene copiato in uno spool di output per la stampa o l'elaborazione successiva.

Vantaggi

  • L'elaborazione in batch richiede gran parte del lavoro dell'operatore al computer.

  • Miglioramento delle prestazioni quando un nuovo lavoro viene avviato non appena il lavoro precedente è terminato, senza alcun intervento manuale.

Svantaggi

  • Difficile eseguire il debug del programma.
  • Un lavoro potrebbe entrare in un ciclo infinito.
  • A causa della mancanza di uno schema di protezione, un lavoro batch può influire sui lavori in sospeso.

Multitasking

Il multitasking si verifica quando più lavori vengono eseguiti dalla CPU contemporaneamente passando da uno all'altro. Le opzioni si verificano così frequentemente che gli utenti possono interagire con ogni programma mentre è in esecuzione. Un sistema operativo svolge le seguenti attività relative al multitasking:

  • L'utente fornisce istruzioni al sistema operativo o direttamente a un programma e riceve una risposta immediata.

  • Il sistema operativo gestisce il multitasking nel modo in cui può gestire più operazioni / eseguire più programmi contemporaneamente.

  • I sistemi operativi multitasking sono noti anche come sistemi di condivisione del tempo.

  • Questi sistemi operativi sono stati sviluppati per fornire un utilizzo interattivo di un sistema informatico a un costo ragionevole.

  • Un sistema operativo a tempo condiviso utilizza il concetto di pianificazione e multiprogrammazione della CPU per fornire a ciascun utente una piccola porzione di una CPU a tempo condiviso.

  • Ogni utente ha almeno un programma separato in memoria.

  • Un programma che viene caricato in memoria ed è in esecuzione viene comunemente chiamato process.

  • Quando un processo viene eseguito, in genere viene eseguito solo per un tempo molto breve prima che termini o sia necessario eseguire l'I / O.

  • Poiché l'I / O interattivo in genere viene eseguito a velocità inferiori, il completamento potrebbe richiedere molto tempo. Durante questo periodo, una CPU può essere utilizzata da un altro processo.

  • Il sistema operativo consente agli utenti di condividere il computer contemporaneamente. Poiché ogni azione o comando in un sistema a tempo condiviso tende ad essere breve, è necessario solo un po 'di tempo della CPU per ogni utente.

  • Poiché il sistema passa rapidamente la CPU da un utente / programma al successivo, a ciascun utente viene data l'impressione di avere la propria CPU, mentre in realtà una CPU viene condivisa tra molti utenti.

Multiprogrammazione

La condivisione del processore, quando due o più programmi risiedono in memoria contemporaneamente, viene definita multiprogramming. La multiprogrammazione presuppone un unico processore condiviso. La multiprogrammazione aumenta l'utilizzo della CPU organizzando i lavori in modo che la CPU ne abbia sempre uno da eseguire.

La figura seguente mostra il layout della memoria per un sistema multiprogrammazione.

Un sistema operativo esegue le seguenti attività relative alla multiprogrammazione.

  • Il sistema operativo conserva in memoria più lavori contemporaneamente.

  • Questa serie di lavori è un sottoinsieme dei lavori conservati nel pool di lavori.

  • Il sistema operativo seleziona e inizia a eseguire uno dei lavori in memoria.

  • I sistemi operativi multiprogrammazione monitorano lo stato di tutti i programmi attivi e le risorse di sistema utilizzando programmi di gestione della memoria per garantire che la CPU non sia mai inattiva, a meno che non ci siano lavori da elaborare.

Vantaggi

  • Utilizzo della CPU elevato ed efficiente.
  • L'utente sente che molti programmi sono assegnati alla CPU quasi contemporaneamente.

Svantaggi

  • È richiesta la pianificazione della CPU.
  • Per ospitare molti lavori in memoria, è necessaria la gestione della memoria.

Interattività

L'interattività si riferisce alla capacità degli utenti di interagire con un sistema informatico. Un sistema operativo esegue le seguenti attività relative all'interattività:

  • Fornisce all'utente un'interfaccia per interagire con il sistema.
  • Gestisce i dispositivi di input per ricevere input dall'utente. Ad esempio, la tastiera.
  • Gestisce i dispositivi di output per mostrare gli output all'utente. Ad esempio, Monitor.

Il tempo di risposta del sistema operativo deve essere breve, poiché l'utente invia e attende il risultato.

Sistema in tempo reale

I sistemi in tempo reale sono generalmente sistemi integrati e dedicati. Un sistema operativo esegue le seguenti attività correlate all'attività del sistema in tempo reale.

  • In tali sistemi, i sistemi operativi in ​​genere leggono e reagiscono ai dati del sensore.
  • Il Sistema Operativo deve garantire la risposta agli eventi entro periodi di tempo prestabiliti per assicurare il corretto funzionamento.

Ambiente distribuito

Un ambiente distribuito si riferisce a più CPU o processori indipendenti in un sistema informatico. Un sistema operativo esegue le seguenti attività relative all'ambiente distribuito:

  • Il sistema operativo distribuisce le logiche di calcolo tra diversi processori fisici.

  • I processori non condividono la memoria o un orologio. Ogni processore ha invece la propria memoria locale.

  • Il sistema operativo gestisce le comunicazioni tra i processori. Comunicano tra loro attraverso varie linee di comunicazione.

Spooling

Spooling è l'acronimo di operazioni periferiche simultanee in linea. Lo spooling si riferisce all'inserimento dei dati di vari lavori di I / O in un buffer. Questo buffer è un'area speciale della memoria o del disco rigido accessibile ai dispositivi I / O.

Un sistema operativo esegue le seguenti attività relative all'ambiente distribuito:

  • Gestisce lo spooling dei dati dei dispositivi I / O poiché i dispositivi hanno velocità di accesso ai dati diverse.

  • Mantiene il buffer di spooling che fornisce una stazione di attesa in cui i dati possono riposare mentre il dispositivo più lento recupera.

  • Mantiene il calcolo parallelo a causa del processo di spooling poiché un computer può eseguire I / O in modo parallelo. Diventa possibile che il computer legga i dati da un nastro, scriva i dati su disco e li scriva su una stampante a nastro mentre sta eseguendo il suo compito di elaborazione.

Vantaggi

  • L'operazione di spooling utilizza un disco come un buffer molto grande.
  • Lo spooling è in grado di sovrapporre le operazioni di I / E per un lavoro con le operazioni del processore per un altro lavoro.