Otro enfoque empleado en la construcción de sistemas adaptables es la generación dinámica de código o la especialización de código en tiempo de ejecución. Se trata de alterar el código ya presente en el SO para que su ejecución sea más eficiente para las aplicaciones concretas que utilizan realmente el sistema.
En este caso, las posibilidades de adaptación que nos ofrece el sistema están sumamente restringidas dado que han de estar previstas por el arquitecto del sistema. Estos sistemas suelen implementar abstracciones de mediano o elevado nivel de abstracción (como procesos, espacios de direcciones y en algunos casos incluso ficheros).