This document proposes a software reuse solution across multiple processor cores using a component/services-based approach. It involves:
1. Defining software blocks as reusable components that provide well-defined services.
2. Creating a distributed services framework that hides core details and provides OS services. It allows services to be agnostic of cores and OS.
3. Distributing services across multiple cores, with the framework encapsulating changes to hardware and OS. This allows easy movement of services between cores and maximizes reuse.