Nel evoluzione dei sistemi operativi Abbiamo sperimentato la trasformazione da sistemi lenti e costosi alla tecnologia odierna, in cui la potenza di calcolo ha raggiunto velocità esponenziali e costi relativamente economici.

All’inizio, i computer venivano caricati manualmente con il codice del programma per controllare le funzioni del computer e il codice di processo relativo alla logica aziendale.

Questo tipo di elaborazione ha introdotto problemi con la pianificazione del programma e il tempo di configurazione. Poiché sempre più utenti richiedevano più tempo e risorse dal computer, gli scienziati hanno stabilito che avevano bisogno di un sistema per migliorare la convenienza, l’efficienza e la crescita.

Di conseguenza, hanno creato un file sistema operativo (OS) per elaborare lavori batch. Successivamente, hanno creato Multitasking Y Tempo condiviso per eseguire più lavori e consentire l’interazione dell’utente per migliorare l’efficienza. Ora in questa sequenza vi parleremo dell’evoluzione dei sistemi operativi.

Evoluzione dei sistemi operativi

Sistema operativo

Un sistema operativo fornisce un’interfaccia tra un’applicazione utente e il computer. Lo scopo di un sistema operativo è gestire le risorse di sistema, pianificare i processi, gestire le condizioni di errore e controllare il registro.

L’utilizzo di un sistema operativo ha liberato i programmatori dalla scrittura del codice per gestire le funzioni della macchina in modo che potessero concentrarsi sulla scrittura del codice per le applicazioni utente.

Evoluzione dei sistemi operativi all’elaborazione seriale.

Dagli anni Quaranta alla metà degli anni Cinquanta, i programmatori configurarono e controllavano i primi computer caricando programmi utilizzando schede perforate e nastro magnetico. Tutto l’output è stato inviato a una stampante se il programma non è stato annullato a causa di errori.

In caso di errore, le spie luminose si accendevano avvisando il programmatore. Quando gli utenti avevano bisogno di tempo sul computer, dovevano firmare un foglio di registro che indicava la quantità di tempo di cui avevano bisogno.

Questo metodo di programmazione presentava problemi ogni volta che un programma generava errori o si bloccava nel computer. L’utente potrebbe esaurire la fascia oraria assegnata e dover riprogrammare il lavoro per un altro periodo.

Evoluzione dei sistemi operativi alla semplice elaborazione in batch.

Dopo l’elaborazione in serie, a metà degli anni ’50 è stata introdotta la semplice elaborazione in batch, la prima sistema operativo. Questa tecnologia ha migliorato l’efficienza in termini di tempo di programmazione e configurazione poiché un operatore caricava i lavori degli utenti in sequenza in batch a cui si accedeva tramite il software del monitor.

Il monitor ha elaborato ogni lavoro nell’ordine in cui è stato caricato. Al termine di un lavoro, il monitor ha eseguito il lavoro successivo in linea dal batch fino al completamento di tutti i lavori. Nonostante fosse un miglioramento rispetto all’elaborazione seriale, l’elaborazione batch semplice era lenta e richiedeva molto tempo di elaborazione.

Evoluzione dei sistemi operativi multitasking.

Il multitasking, una forma migliorata di semplice elaborazione batch, ha sfruttato i tempi di inattività del processore caricando il processore con più lavori utente.

Quando un programma ha completato l’elaborazione, i risultati vengono trasferiti a un dispositivo I / O e il processore esegue un altro lavoro di attesa in memoria. Il multitasking utilizza le risorse del computer in modo efficiente, passando da un lavoro all’altro fino al completamento di ciascuno. I sistemi operativi come Microsoft Windows 7 utilizzano ancora oggi il multitasking.

Evoluzione dei sistemi operativi in ​​sistemi time-sharing.

La multiproprietà è un’estensione del multitasking. La condivisione del tempo è una tecnica che consente a più utenti di condividere contemporaneamente le risorse di sistema. Ciò offre agli utenti l’opportunità di interagire direttamente con il computer.

Con un terminale e una tastiera, ogni utente invia una richiesta di lavoro premendo un tasto di trasmissione e attende il proprio turno per ricevere una risposta dal processore. Lo scopo della condivisione del tempo è ridurre al minimo il tempo di risposta dell’utente, ridurre i tempi di inattività e massimizzare l’utilizzo del processore. Oggi i sistemi UNIX usano ancora la multiproprietà.

Integrazione di un controller di interrupt nell’evoluzione dei sistemi operativi.

Con l’ulteriore evoluzione della tecnologia, i fornitori di computer hanno progettato hardware per supportare i controlli degli interrupt di I / O per i sistemi multitasking. Gli interrupt forniscono il controllo del flusso per le attività tra il processore e i dispositivi I / O.

C’è un controller integrato nel processore per gestire le richieste di interrupt. Un gestore di interrupt è un programma contenuto nel sistema operativo per elaborare le routine di I / O. Ogni dispositivo I / O utilizza richieste di interrupt (IRQ) per inviare un segnale che avvisa il processore che è pronto per l’azione.

Con un gestore di interrupt, il processore può inviare il controllo di un lavoro in attesa di un’operazione di I / O al dispositivo appropriato. Dopo che un dispositivo invia un segnale, il processore interrompe temporaneamente il programma corrente ed entra in una routine di servizio di interruzione.

Programmazione e gestione delle risorse nell’evoluzione dei sistemi operativi.

Un ruolo importante per un sistema operativo è la gestione efficiente delle risorse di sistema e la pianificazione dei processi per garantire che ciascuno abbia pari opportunità per completare il proprio lavoro.

A tale scopo, un sistema operativo utilizza uno scheduler e una gestione delle risorse per controllare la memoria, i dispositivi I / O, i programmi e i dati. Il sistema operativo utilizza una coda a breve termine per mantenere i processi caricati nella memoria principale in attesa della disponibilità del processore.

Quando viene notificato, lo scheduler a breve termine seleziona il lavoro successivo in base al livello di priorità o utilizzando la tecnica del turno. Il sistema operativo pone nuove richieste lavora nella coda a lungo termine e sposta uno dei processi nella coda a breve termine quando lo spazio di memoria è disponibile.

Insieme, lo scheduler e il responsabile delle risorse assicurano che ogni processo abbia una quantità di tempo sufficiente per completare la sua attività nel modo più efficiente possibile.

Conclusione

I sistemi operativi sono un work in progress. Gli sviluppatori imparano lezioni con l’evoluzione dei sistemi operativi per migliorare il prossimo. L’elaborazione batch ha superato il problema di pianificazione e configurazione del lavoro posto dall’elaborazione seriale.

Tuttavia, era ancora un sistema inefficace che causava lunghi ritardi tra i lavori. Sia il multitasking che la condivisione del tempo hanno risolto i problemi di inattività del processore, consentendo a più lavori e utenti di interagire simultaneamente.

I fornitori di hardware svolgono un ruolo importante nel migliorare le prestazioni creando processori e controlli I / O migliori. La tecnologia odierna continua a utilizzare concetti di multitasking e condivisione del tempo. Tuttavia, oggigiorno le interfacce utente grafiche sono incorporate negli ambienti desktop.

Potrebbero interessarti anche: Cos’è la memoria flash. Tipi, come funziona, vantaggi e svantaggi.