In termini formali la macchina a stati finiti è una entità matematica che contiene i seguenti elementi:
  1. Un insieme finito di stati X = (x1,x2,...xn)
  2. Un insieme finito di ingressi I = (i1,i2,...ip)
  3. Un insieme finito di uscite U = (u1,u2,...uq)
  4. Un insieme di funzioni di riposta
  5. Un insieme di funzioni di ingresso
  6. Un insieme di tempi

Nel settore elettronico tale formalismo viene sviluppato con i modelli di Mealy e di Moore. In aggiunta ci sono altri supporti teorici come ad esempio la rete di Petri che però qui non trattiamo.

Passando dalla teoria alla pratica, diciamo che la macchina a stati finiti è un dispositivo di cui sono determinabili e determinati tutti i particolari di comportamento compresi errori e guasti. Esempi classici sono i sistemi digitali: elaboratore, telefono cellulare, fax ecc.

Altre macchine che lavorano con precisi stati operativi rientrano nella definizione sopra tracciata. Ad esempio l'ascensore, dovendo per legge dare la massima sicurezza agli utenti, con buona approssimazione è un sistema a stati finiti perché si muove tra un numero finito di piani ed i suoi possibili comportamenti, anche difettosi, sono predefiniti. Nel diagramma degli stati in figura, immaginiamo che l'ascensore si muova tra i piani zero, uno e due. Quando si guasta tra l'uno e l'altro, entra nello stato G. Infine rimane fermo in ciascun piano. Situazioni indeterminate o confuse non ce ne sono.

 

La macchina computazionale per antonomasia è quella di Turing (vedi anche Logica ) la quale è composta dell'apparato di calcolo C e del programma L. Ogni casella della lista L contiene un comando che viene eseguito e che fa andare avanti L di un passo, oppure indietro oppure fa fermare L nella stessa casella.

Il numero finito di caselle ed il numero preciso di operazioni dicono che tale macchina è un sistema a stati finiti. Infatti sono del tutto definiti gli stati, gli input ecc. elencati in A, B,...F.

 

anno 2005

106. C) La differenza tra la macchina a stati finiti e la macchina computazionale.

107. Vorrei conoscere le potenzialità dei supercomputers.

Ci sono elaborati che richiedono ore o addirittura giornate intere di CPU. Per affrontare tale mole di lavoro è stato ideato il grid computing (vedi 92). Tale metodo risulta molto potente ed economico ma è incapace di garantire risultati in tempo reale. Si dimostra inutile di fronte a richieste come quelle delle previsioni atmosferiche le quali devono essere calcolate in tempo utile per il pubblico. Per tali ed altri lavori ancora diventa indispensabile il supercomputer

L'architettura di un supercomputer viene realizzata mediante centinaia ed anche migliaia microprocessori che lavorano in parallelo. Va da sé che il supercomputer, composto di molti microprocessori, sia migliaia di volte più potente dell'usuale personal che ce ne ha uno solo. La soluzione risulta efficace ma comporta notevoli problemi di interconnessione tra i microprocessori. La complessità dei collegamenti rischia di generare rallentamenti e di abbassare le prestazioni, per cui è oggetto di notevoli ricerche (sui problemi del parallelismo vedi anche risposta 170).
Come si misura la potenza di calcolo?

Dopo una diatriba durata anni, oggi si è trovata una convergenza. Per misurare le capacità di un supercomputer sono stati scritti appositi programmi campione. Meno tempo la macchina ci mette per eseguirli e più il sistema è potente. I programmi campione lavorano principalmente con istruzioni a virgola mobile (= floating point) perché i calcoli impegnativi sopra citati vi ricorrono abitualmente.

I più vecchi sistemi macinavano mega-flops cioè milioni di operazioni a virgola mobile al secondo (flop = floating-point-operations ). Oggi si naviga sull'ordine dei giga e tera ovvero 109 e 1012 flops al secondo.

Aziende private ed enti di ricerca producono sistemi avanzati per cui esiste una classifica aggiornata che elenca i 500 migliori  supercomputer in questo sito

http://www.top500.org

Nella pagina principale il lettore cercherà il link alla classifica che in genere viene aggiornata una volta l'anno.

Da tempo l'Italia partecipa a tale sfida tecnologica. Anni fa l'Istituto Nazionale di Fisica Nucleare (INFN) costruì a Roma un supercomputer che poi venne commercializzato da Alenia Spazio con il nome di 'Quadrics'.
Oggi i nostri prodotti non sono però tra i più brillanti. Ad esempio, alla fine del 2004 il primo sistema italiano si trovava al sessantesimo posto della classifica.

 

anno 2005