MMLite is a modular system architecture that is suitable for a wide variety of hardware and applications. The system provides a selection of object-based components that are dynamically assembled into a full application system. Amongst these components is a namespace, which supports a new programming model, where components are automatically loaded on demand. The virtual memory manager is optional and is loaded on demand. Components can be easily replaced and reimplemented. A third party independently replaced the real-time scheduler with a different implementation. Componentization reduced the development time and led to a flexible and understandable system. MMLite is efficient, portable, and has a very small memory footprint. It runs on several microprocessors, including two VLIW processors. It is being used on processors that are embedded in a number of multimedia DirectX accelerator boards.