Lessico IT › Hardware › Multiprocessing asimmetrico (AMP)

Multiprocessing asimmetrico (AMP)

Hardware Svenska → Aggiornato: 2026-11-04
Altre info
Tipo
Framework
Licenza
BSD-3-Clause
Codice sorgente
github.com/OpenAMP
Sito ufficiale

Più core su un unico chip, ciascuno con il proprio programma e il proprio sistema operativo, invece di condividerne uno solo.

Nel multiprocessing simmetrico (SMP) un solo sistema operativo considera tutti i core intercambiabili e sposta i thread da uno all'altro a piacimento. L'AMP fa il contrario: ogni core vive nel proprio mondo. Il caso da manuale è un SoC come l'STM32MP1 o l'NXP i.MX 8M, in cui un Cortex-A esegue Linux mentre un Cortex-M vicino esegue un RTOS o codice bare-metal. Linux gestisce rete, file system e display; il core microcontrollore gestisce il ciclo di controllo del motore, che non tollera che lo scheduler si conceda una pausa.

I core condividono memoria e controller degli interrupt, ma nient'altro, quindi la cooperazione va messa nero su bianco: chi possiede quale periferica, a chi appartiene quale RAM, come passano i messaggi. È il compito per cui esistono RPMsg e OpenAMP. Il vantaggio è un comportamento real-time senza rinunciare a Linux; il prezzo è che un bug può ora consistere in due programmi, ciascuno corretto preso singolarmente.

← Torna al lessico