- In questo modo all'interno del nostro sistema potranno funzionare più programmi
- A condizione che l'alternanza tra i vari programmi sia abbastanza veloce, l'utente avrà
l'impressione che i programmi funzionino contemporaneamente
- A volte un programma deve eseguire un'elaborazione che richiede parecchio tempo, senza
eseguire operazioni di I/O
- In questo caso, per garantire l'impressione della contemporaneità possiamo applicare
due tecniche:
- Il programma che esegue i calcoli, ogni tanto invoca una chiamata che consente al sistema
di fare avanzare gli altri programmi
- Il sistema assegna un periodo di tempo a ciascun programma (time slice) e, se il programma non
cede il controllo entro quel tempo, lo interrompe forzatamente, per farlo riprendere più tardi
- La seconda soluzione prende il nome di multitasking prehemptive
|