RETRODREAMSAMIGA & SPECTRUM
Menu

← Curiosità

Cultura e giochiVero o mito?

1985

L'Amiga non fu il primo a fare due cose contemporaneamente

Si dice che l'Amiga sia stato il primo home computer con il multitasking; non lo fu, ma lo aveva di serie fin dal primo modello, cosa che il Macintosh avrebbe avuto solo molti anni dopo.

In partel'OS-9 sul Tandy Color Computer (1983) e il QDOS del Sinclair QL (1984) facevano già multitasking preemptive; l'Amiga non fu il primo, ma lo aveva di serie fin dal primo modello.

È una frase che si sente spesso: l'Amiga, del 1985, fu il primo home computer con il multitasking. Il nucleo di AmigaOS, Exec, scritto da Carl Sassenrath, faceva davvero multitasking preemptive, in cui è il sistema, e non il programma, a decidere quando gira ciascun task, e lo faceva in appena 256 KB di memoria [1]. Ma c'è chi ci era arrivato prima.

Alla fine del 1983 Radio Shack vendeva già per il suo TRS-80 Color Computer l'OS-9 Level I, di Microware. Il manuale Tandy spiegava: "Multitasking significa che due o più task (programmi) possono girare contemporaneamente. Per esempio, con OS-9 puoi stampare rapporti e inserire dati allo stesso tempo" [2]. Lo stesso manuale descrive il tempo diviso in fette tra un tick e l'altro del clock, e a ogni tick il sistema può sospendere un processo e passare il turno a un altro [2]. OS-9 usava uno scheduling preemptive a priorità, e il CoCo, economico e molto venduto, fu la macchina su cui divenne più noto [3].

Il primo multitasking domestico non fu dell'Amiga: girava già su un Tandy del 1983 e su un Sinclair del 1984.

Nel gennaio 1984 Sinclair presentò il QL, con il QDOS di Tony Tebby in ROM: un sistema multitasking preemptive, che Sinclair annunciava come il primo su un computer di largo consumo [4]. Le consegne cominciarono solo ad aprile, ma anche così il QL arrivò più di un anno prima dell'Amiga [4]. Uno dei proprietari di un QL fu un giovane finlandese di nome Linus Torvalds, che apprezzava proprio il multitasking preemptive della macchina [4].

Ciò che l'Amiga portò fu il multitasking preemptive di serie fin dal primo giorno, il 23 luglio 1985: un nucleo di soli 13 KB, con priorità e scambio di messaggi tra i task, molto efficiente perché tutti condividono lo stesso spazio di memoria [1]. C'era un però: senza protezione della memoria, un programma maleducato poteva disattivare il multitasking a piacimento e bloccare tutto il resto [1].

Per avere un'idea del vantaggio, il Macintosh ebbe MultiFinder solo nell'agosto 1987, e anche allora con multitasking cooperativo, in cui ogni programma deve cedere il processore di sua spontanea volontà. Il Mac classico non ebbe mai il multitasking preemptive: arrivò solo con Mac OS X [5].

Fonti

  1. [1]Exec (Amiga) · Wikipedia
  2. [2]OS-9 Level I, manual do TRS-80 Color Computer · Tandy / Radio Shack (Internet Archive), 1983
  3. [3]OS-9 · Wikipedia
  4. [4]Sinclair QL · Wikipedia
  5. [5]MultiFinder · Wikipedia