Skip to content

Latest commit

 

History

History
44 lines (29 loc) · 2.23 KB

File metadata and controls

44 lines (29 loc) · 2.23 KB

RNS Bytecode Instrumentation Agent

The runtime component of Role Normalization and Synthesis, this bytecode instrumentation agent implements its aspect-oriented and message-oriented features.

Artifact

A pure Java library, with premain-class org.hawkinssoftware.rns.agent.RNSInstrumentationAgent

Installation

A VM argument specifies loading of the agent:

-javaagent:<path/to/rns-agent>.jar

The path is relative to the initial working directory of the JVM.

Dependent Features

The following features require the agent to be installed:

  1. ExecutionPath and related functionality
  2. @InitializationAspect
  3. @ValidateRead and @ValidateWrite
  4. ClassLoadObserver

Known Issues

  1. Profilers using bytecode instrumentation will usually have conflicts with the RNS agent and fail to connect.
  2. Performance is quite poor for certain features, many of which would be more properly implemented in the AST analyzer; please consider that this is a prototype implementation.