会议专题

A New Component Oriented Programming Technology for Embedded Development

CAR is a new component-oriented programming technology for embedded development. Developed by Koretide Corp., it is one part of Elastos technology system, which gives a seamless solution of utilizing the priority of the embedded relative technology and the component-oriented programming technology. CAR provides a set of component calling standard, so that binary component can be self-described and dynamically linked at runtime. While similar to Microsoft COM,CAR breaks new ground by getting rid of the obsolete protocol from COM. For example, it forbids user to define non-self-described interface. CAR also provides new features such as user-defined event mechanism, smart pointer encapsulation and the self-descriptive module encapsulation & runtime technology. When introducing these new features, we discuss design decisions, and contrast CAR and COM approaches. As the first feature, CAR provides component-based user-defined event mechanism, which expands COM in its connection-points mechanism. The latter needs users take care of all the stuff as connecting client and component, invoking the events and programming the receiver all by themselves. In contrast, the former only needs users care about when to invoke the event and register the proper callback function at proper time. The second feature is the encapsulation of smart pointer invoking component function. In COM, user usually gets the pointer to COM object directly, and then uses it to invoke any method defined by the interface. In CAR, the system provides smart interface, smart class, and smart category pointer instead. All these smart pointers not only encapsulate the interface methods (especially implement managing components reference count automatically), but also bring diversity and flexibility to the user for dynamically creating component or invoking component functions.The third one is self-descriptive module encapsulation and running technology.Three new concepts CAR CDL5, ClassInfo and ImportInfo are introduced here. They illustrate how CAR mainly expands COM in the self-descriptive property.At last this paper outlines CARs advantages for software engineering and embedded development, including easily learning and using, independency in system update, dynamically component loading and running, and reliability, error tolerance and security.

Zheng Wei Lu Jiang Wang Xiaoge Chen Rong

Software Engineering Center, Tsinghua Graduate School at ShenZhen,518055 ShenZhen, P.R.China Operating System & Middleware Technology Research Center, Tsinghua University,100084 Beijing P.R.Chi

国际会议

首届嵌入式软件与系统国际会议(Proceedings of the First International Conference on Embedded Software and System)

杭州

英文

569-570

2004-12-09(万方平台首次上网日期,不代表论文的发表时间)