rbage collec- technology improves. One of the interesting aspects tion. Garbage collection is the JVM's ability to detect when of processing overhead is that if the minimum memory is no longer needed by its application and to supported system data rates for communications deallocate that memory. This way, Java guarantees that the systems grow faster than processing power per program will have no memory leaks. In C or C++ de- milliwatt, then processing overhead will become velopment, especially using distributed software such as a more pressing problem. The advent of truly flexible CORBA, memory management is a challenge, and memory software-defined systems will bear out this issue and leaks are sometimes difficult to find and resolve. Beyond expose whether it is in fact a problem. memory management, Java also has an extensive set of Predictability: Predictability is a real-time concern security features that provide limits beyond those created that is key if the application software is expected by the developer. For example, Java can limit the program's to support such functionality as link control. Given ability to access native calls in the system, reducing the that the executed code is interpreted by the JVM, likelihood that malicious code will cause system problems. asynchronous events such as memory management Java has several editions, each tailored to a particular can mean that the execution time between arbitrary type of environment: points of execution in the program can vary. A delay Java 2 Standard Edition (J2SE) is designed to run in in execution can be acceptable because the design desktop environment, servers, and embedded sys- may be able to tolerate such changes. However, large items. The embedded design of J2SE relates to re- variations in this execution time can cause such duced overhead inherent to Java, such as reduced problems as dropped calls. A Real-time Extension memory or reduced computing power. Specification for Java exists that is meant to address Java 2 Enterprise Edition (J2EE) is de