Skip to main content
Back to USENIX
  • Conferences
  • Students
Sign in

USENIX Conference Policies

  • Event Code of Conduct
  • Conference Network Policy
  • Statement on Environmental Responsibility Policy

Dynamic C++ Classes - A Lightweight Mechanism to Update Code in a Running Program

Gísli Hjálmtysson, AT&T Labs - Research; Robert Gray, Dartmouth College

Techniques for dynamically adding new code to a running program already exist in various operating systems, programming languages and runtime environments. Most of these systems have not found their way into common use, however, since they require programmer retraining and invalidate previous software investments. In addition, many of the systems are too high-level for performance-critical applications. This paper presents an implementation of dynamic classes for the C++ language. Dynamic classes allow run-time updates of an executing C++ program at the class level. Our implementation is a lightweight proxy class that exploits only common C++ features and can be compiled with most modern compilers. The proxy supports version updates of existing classes as well as the introduction of new classes. Our language choice and proxy implementation is targeted towards performance-critical applications such as low-level networking in which the use of C++ is already widespread.

Gisli Hjalmtysson, AT&T Labs - Research

Robert Gray, Dartmouth College

BibTeX
@inproceedings {261307,
author = {Gisli Hjalmtysson and Robert Gray},
title = {Dynamic C++ Classes - A Lightweight Mechanism to Update Code in a Running Program},
booktitle = {1998 USENIX Annual Technical Conference (USENIX ATC 98)},
year = {1998},
address = {New Orleans, LA},
url = {https://www.usenix.org/conference/1998-usenix-annual-technical-conference/dynamic-c-classes-lightweight-mechanism-update},
publisher = {USENIX Association},
month = jun
}
Download

Links

Paper: 
http://usenix.org/publications/library/proceedings/usenix98/full_papers/hjalmtysson/hjalmtysson.pdf
Paper (HTML): 
http://usenix.org/publications/library/proceedings/usenix98/full_papers/hjalmtysson/hjalmtysson_html/hjalmtysson.html
  • Log in or register to post comments

© USENIX
EIN 13-3055038

  • Privacy Policy
  • Contact Us