INMOS Transputer: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m ops |
m correzioni varie |
||
Riga 1:
Il '''INMOS Transputer''' era un
== Background ==
Nei primi anni '80 sembrava che le [[CPU]] convenzionali avessero raggiunto il loro limite riguardo alle ''performance''. Fino a quel momento i progettisti erano stati limitati principalmente dall'ammontare di circuiti che potevano piazzare su un [[chip]] a causa di problemi di costruzione. Ma con il continuo migliorare dei processi
Sembrò che l'unico modo fosse implementare l'uso del parallelismo, cioè l'uso di svariate CPU che avrebbero lavorato assieme per compiere diversi compiti allo stesso tempo. Tutto ciò dipendeva dalla possibilità della macchina di essere in grado di eseguire più processi allo stesso tempo, capacità nota come [[multitasking]], troppo difficile da eseguire fino ad allora, ma supportata dai processori di nuova generazione. Fu chiaro che in futuro questa caratteristica sarebbe stata supportata da tutti i [[sistema operativo|sistemi operativi]].
Un effetto collaterale di molte architetture ''multitasking'' è che spesso permette di eseguire i processi su CPU fisicamente differenti, nel qual caso il processo è noto come ''[[multiprocessing]]''. Una CPU a basso costo, pensata in quest'ottica, avrebbe permesso di aumentare la velocità di calcolo di una macchina aggiungendo altri processori simili, scelta potenzialmente molto più economica di una basata su un singolo e più potente processore.
== Design==
Riga 29:
=== Programmazione ad alto livello ===
Per la programmazione dei transputer, la INMOS ha progettato un linguaggio apposito, ispirato ai [[Communicating Sequential Processes|CSP]] di [[C. A. R. Hoare]] e chiamato [[linguaggio di programmazione Occam|Occam]]. In effetti è più corretto dire che il Transputer fu progettato specificatamente per eseguire codice Occam, come molti processori CISC dell'epoca erano pensati per eseguire [[Pascal (linguaggio)|Pascal]] o [[C (linguaggio)|C]]. L'Occam supportava lo sviluppo di applicazioni divise in più processi e spesso la semplice scrittura di un programma in Occam risultava un'applicazione di questo tipo. Con il supporto per i task e le comunicazioni integrati nel chip e il linguaggio di programmazione che vi interagiva direttamente, scrivere il codice per cose come
== Implementazioni ==
Riga 48:
Nonostante il Transputer fosse semplice ma allo stesso potente rispetto a molte architetture contemporanee, non riuscì mai ad avvicinarsi al suo obiettivo di essere usato universalmente sia come CPU sia come microcontrollore. Il secondo campo era dominato da macchine a 8-bit e il costo era il solo parametro considerato. Anche il T-2s era troppo potente e costoso per la maggior parte degli utenti. La mancanza di supporto del Transputer per la memoria virtuale impedì il [[porting]] delle principali varianti dei sistemi operativi [[Unix]] (anche se vennero prodotte varianti come [[Minix]] e [[Idris (sistema operativo)|Idris]] di [[Whitesmiths]].)
Nel campo [[desktop]] / [[workstation]] il Transputer era abbastanza veloce, operando a circa 10 [[MIPS (unità di misura)|MIPS]] a 20MHz, un'eccellente ''performance'' per i primi anni Ottanta, ma, al momento in cui venne venduto il T800, fornito di una [[Floating Point Unit|FPU]], le altre architetture RISC l'avevano già sorpassato. Questo avrebbe potuto essere mitigato dalla
== T9000 ==
Riga 60:
== Voci correlate ==
*[[
*[[
[[Categoria:Microprocessori]]
[[de:Transputer]]
|