Scheduling dei processi

I sistemi operativi di prima generazione eseguivano un processo alla volta, lavoravano a singola partizione.
Con i moderni sistemi operativi multitasking, vengono memorizzati più processi contemporaneamente e viene utilizzata l’allocazione a partizioni multiple.

A tale scopo esistono diverse tecniche di suddivisione della memoria; una tecnica prevede una suddivisione della memoria in porzioni adiacenti fisse, dove vengono caricati i processi in attesa nella coda di ingresso. Il processo (politica di scheduling) va ad occupare solo la porzione di memoria che realmente gli occorre, la parte rimanente resta inutilizzata (si creano dei buchi di memoria, i quali non possono essere riutilizzati, portando ad uno spreco di memoria), tale fenomeno è detto frammentazione interna. Una tecnica più evoluta è quella delle partizioni variabili con allocazione dinamica.

Per la schedulazione dei processi presenti nella coda di ingresso e per l’assegnazione di questi alle aree libere di memoria, possono essere utilizzate diverse strategie:

  • First fit: si assegna al primo processo la prima area libera disponibile, sufficientemente grande da contenere il processo e si procede in modo analogo per tutti i processi; in tale tecnica è necessario ordinare la tabella delle aree in base al loro indirizzo.
  • Best fit: assegna l’area più piccola di dimensioni tali da contenere il processo, è opportuno ordinare la tabella delle aree libere in ordine crescente in base alla loro dimensione.
  • Worst fit: si assegna sempre ai processi l’area più grande possibile, è opportuno ordinare la tabella delle aree libere in ordine decrescente in base alla loro dimensione.

Hai bisogno di aiuto in Informatica?
Trova il tuo insegnante su Skuola.net | Ripetizioni
Registrati via email