A generic component model for building systems software

被引:106
作者
Coulson, Geoff [1 ]
Blair, Gordon [1 ]
Grace, Paul [1 ]
Taiani, Francois [1 ]
Joolia, Ackbar [1 ]
Lee, Kevin [1 ]
Ueyama, Jo [1 ]
Sivaharan, Thirunavukkarasu [1 ]
机构
[1] Univ Lancaster, Dept Comp, Lancaster LA1 4WA, England
来源
ACM TRANSACTIONS ON COMPUTER SYSTEMS | 2008年 / 26卷 / 01期
基金
英国工程与自然科学研究理事会;
关键词
design; standardization; management; component-based software; computer systems implementation;
D O I
10.1145/1328671.1328672
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Component-based software structuring principles are now commonplace at the application level; but componentization is far less established when it comes to building low-level systems software. Although there have been pioneering efforts in applying componentization to systems-building, these efforts have tended to target specific application domains (e. g., embedded systems, operating systems, communications systems, programmable networking environments, or middleware platforms). They also tend to be targeted at specific deployment environments (e. g., standard personal computer (PC) environments, network processors, or microcontrollers). The disadvantage of this narrow targeting is that it fails to maximize the genericity and abstraction potential of the component approach. In this article, we argue for the benefits and feasibility of a generic yet tailorable approach to component-based systems-building that offers a uniform programming model that is applicable in a wide range of systems-oriented target domains and deployment environments. The component model, called OpenCom, is supported by a reflective runtime architecture that is itself built from components. After describing OpenCom and evaluating its performance and overhead characteristics, we present and evaluate two case studies of systems we have built using OpenCom technology, thus illustrating its benefits and its general applicability.
引用
收藏
页数:42
相关论文
共 43 条
[1]  
[Anonymous], 2004, DESIGN PATTERNS ELEM
[2]  
BENCOMO N, 2005, P 1 MIDDL 05 WORKSH
[3]  
Blair G., 2004, P 3 WORKSH REFL AD M
[4]  
Bruneton E, 2004, LECT NOTES COMPUT SC, V3054, P7
[5]  
BRUNETON E, 2000, P REFL MIDDL 2000
[6]  
CAMPBELL AT, 2002, P 5 IEEE INT C OP AR
[7]  
CLARKE M, 2001, P IFIP ACM MIDDL 200
[8]  
COSTA P, 2007, P 5 ANN IEEE ANT C P
[9]   NETKIT: A software component-based approach to programmable networking [J].
Coulson, G ;
Blair, G ;
Hutchison, D ;
Joolia, AA ;
Lee, K ;
Ueyama, J ;
Gomes, A ;
Ye, YM .
ACM SIGCOMM COMPUTER COMMUNICATION REVIEW, 2003, 33 (05) :55-65
[10]   A retrospective on the design of the GOPI middleware platform [J].
Coulson, G ;
Baichoo, S ;
Moonian, O .
MULTIMEDIA SYSTEMS, 2002, 8 (05) :340-352