Un sistema de memoria compartida consiste de una colección de procesos en comunicación, como en un sistema de red. Pero en vez de enviar y recibir mensajes sobre un canal de comunicación, los procesos realizan operaciones instantáneas sobre datos compartidos.
Los modelos para un sistema de memoria compartida pueden ser sincrónicos y asincrónicos.
En el modelo sincrónico se asume que los componentes toman/ejecutan los pasos simultáneamente, esto es, la ejecución procede en completo sincronismo. Se utiliza para realizar simulaciones de sistemas distribuidos reales.