The packer filter: an efficient mechanism for user-level network code
SOSP '87 Proceedings of the eleventh ACM Symposium on Operating systems principles
Multiplexing issues in communication system design
SIGCOMM '90 Proceedings of the ACM symposium on Communications architectures & protocols
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Prioritizing forces in software design
Pattern languages of program design 2
DPF: fast, flexible message demultiplexing using dynamic code generation
Conference proceedings on Applications, technologies, architectures, and protocols for computer communications
Measuring the performance of communication middleware on high-speed networks
Conference proceedings on Applications, technologies, architectures, and protocols for computer communications
The design and performance of a real-time CORBA event service
Proceedings of the 12th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Measuring and Optimizing CORBA Latency and Scalability Over High-Speed Networks
IEEE Transactions on Computers
An overview of the CORBA portable object adapter
StandardView
Advanced CORBA programming with C++
Advanced CORBA programming with C++
Real-Time Systems - Special issue on real-time computing in the age of the Web and the Internet
The Design and Performance of a Pluggable Protocols Framework for CORBA Middleware
PfHSN '99 Proceedings of the IFIP TC6 WG6.1 & WG6.4 / IEEE ComSoc TC on on Gigabit Networking Sixth International Workshop on Protocols for High Speed Networks VI
Alleviating Priority Inversion and Non-Determinism in Real-Time CORBA ORB Core Architectures
RTAS '98 Proceedings of the Fourth IEEE Real-Time Technology and Applications Symposium
The Design and Performance of a Real-time I/O Subsystem
RTAS '99 Proceedings of the Fifth IEEE Real-Time Technology and Applications Symposium
The APIC Approach to High Performance Network Interface Design: Protected DMA and Other Techniques
INFOCOM '97 Proceedings of the INFOCOM '97. Sixteenth Annual Joint Conference of the IEEE Computer and Communications Societies. Driving the Information Revolution
Design of the APIC: A high performance ATM host-network interface chip
INFOCOM '95 Proceedings of the Fourteenth Annual Joint Conference of the IEEE Computer and Communication Societies (Vol. 1)-Volume - Volume 1
Service configurator: a pattern for dynamic configuration of services
COOTS'97 Proceedings of the 3rd conference on USENIX Conference on Object-Oriented Technologies (COOTS) - Volume 3
Design and performance of an object-oriented framework for high-speed electronic medical imaging
COOTS'96 Proceedings of the 2nd conference on USENIX Conference on Object-Oriented Technologies (COOTS) - Volume 2
The design of the TAO real-time object request broker
Computer Communications
CORBA: integrating diverse applications within distributed heterogeneous environments
IEEE Communications Magazine
Applying patterns to develop extensible ORB middleware
IEEE Communications Magazine
IEEE Journal on Selected Areas in Communications
The design and performance of a scable ORB architecture for COBRA asynchronous messaging
IFIP/ACM International Conference on Distributed systems platforms
IFIP/ACM International Conference on Distributed systems platforms
The Design and Performance of a Real-Time CORBA SchedulingService
Real-Time Systems - Special issue on challenges in design and implementation of middlewares for real time systems
Designing and Optimizing a Scalable CORBA Notification Service
OM '01 Proceedings of the 2001 ACM SIGPLAN workshop on Optimization of middleware and distributed systems
Supporting high-performance I/O in QoS-enabled ORB middleware
Cluster Computing
Applying Patterns to Improve the Performance of Fault Tolerant CORBA
HiPC '00 Proceedings of the 7th International Conference on High Performance Computing
COMPSAC '00 24th International Computer Software and Applications Conference
On the Move to Meaningful Internet Systems, 2002 - DOA/CoopIS/ODBASE 2002 Confederated International Conferences DOA, CoopIS and ODBASE 2002
Towards Real-Time Fault-Tolerant CORBA Middleware
Cluster Computing
Implementing the CORBA GIOP in a high-performance object request broker environment
Distributed Computing
A middleware-independent model and language for component distribution
SEM '05 Proceedings of the 5th international workshop on Software engineering and middleware
An aspect-oriented approach to bypassing middleware layers
Proceedings of the 6th international conference on Aspect-oriented software development
Collocation optimizations in an aspect-oriented middleware system
Journal of Systems and Software
International Journal of High Performance Computing and Networking
Flexible and adaptive QoS control for distributed real-time and embedded middleware
Proceedings of the ACM/IFIP/USENIX 2003 International Conference on Middleware
Hi-index | 0.00 |
First-generation CORBA middleware was reasonably successful at meeting the demands of request/response applications with best-effort quality of service (QoS) requirements. Supporting applications with more stringent QoS requirements poses new challenges for next-generation real-time CORBA middleware, however. This paper provides three contributions to the design and optimization of real-time CORBA middleware. First, we outline the challenges faced by real-time ORBs implementers, focusing on optimization principle patterns that can be applied to CORBA's Object Adapter and ORB Core. Second, we describe how TAO, our real-time CORBA implementation, addresses these challenges and applies key ORB optimization principle patterns. Third, we present the results of empirical benchmarks that compare the impact of TAO's design strategies on ORB efficiency, predictability, and scalability. Our findings indicate that ORBs must be highly configurable and adaptable to meet the QoS requirements for a wide range of real-time applications. In addition, we show how TAO can be configured to perform predictably and scalably, which is essential to support real-time applications. A key result of our work is to demonstrate that the ability of CORBA ORBs to support real-time systems is mostly an implementation detail. Thus, relatively few changes are required to the standard CORBA reference model and programming API to support real-time applications.