Hasta el momento, dos han sido típicamente las principales abstracciones empleadas (como veremos en el siguiente apartado) para suministrar servicios de gestión de procesos en SSOO tradicionales: las tareas o procesos y los threads o hilos de control. Las tareas contienen los recursos asignados y uno o más hilos de control.
Estas abstracciones no son ni extensibles ni adaptables, lo que da lugar siempre que es necesario incluir nuevas características o modificar el comportamiento de dichas abstracciones a la reimplementación del sistema de gestión de procesos (con la consiguiente ineficiencia y el consiguiente perjuicio a la fiabilidad).
Por otro lado, en SSOO distribuidos la gestión de tareas y threads o bien no se distribuye en absoluto (como en Plan 9, donde un proceso está sujeto al nodo en que nació y su gestión es muy similar a la de un sistema centralizado), o bien se distribuye sólo del modo en que el arquitecto del sistema estimó conveniente.
En Off se utiliza el Shuttle como base para posibles implementaciones de abstracciones similares a ``procesos'' o ``tareas'' tradicionales en área de usuario--aunque bien pueden utilizarse directamente los shuttles sin necesidad de implementar abstracción alguna. La abstracción Shuttle trata de evitar las desventajas mencionadas constituyendo una abstracción de relativamente bajo nivel y contemplando la distribución del sistema.
En pocas palabras podríamos decir que el servidor de Shuttles de Off es un sistema adaptable y distribuido de gestión de procesos que permite a cada aplicación modelar la distribución de los procesos del sistema del modo mas conveniente, a la vez que ofrece servicios básicos de distribución a aquellas aplicaciones que no deseen controlarla explícitamente.
En el presente apartado nos centraremos en el diseño e implementación del servidor de Shuttles, que implementa dicha abstracción. Antes de ello veremos brevemente qué alternativas existen en otros sistemas.