This paper presents a framework-oriented approach to efficient development of embedded real-time systems. A framework is an architectural pattern in development approaches that, based on object-oriented techniques, provides a reusable template to extend applications. The creation of framework is quite difficult although a well-defined framework is powerful in significantly improving the productivity of developers. The basic concept underlying this approach is that applications can be developed effectively through integrating domain-specific design patterns. The presented framework is developed with three mature design patterns, namely task scheduling pattern, ceiling priority pattern and static allocation pattern, as a basis to address the common issues such as task scheduling and resource management in the development of embedded real-time systems. The task scheduling pattern provides a priority-based scheduling mechanism. The ceiling priority pattern implements the ceiling priority protocol to resolve the problems of unbounded blocking while the static allocation pattern provides a mechanism on memory optimization for objects and message queues used by tasks. Developers using this framework simply need to add required application-specific classes and customize some component classes according to the design specifications.