the java platform is usually perceived as inadequate for real-time applications because of its lack of determinism, that is, its unpredictable execution time.
for example, garbage collection (gc), which removes no-longer-needed java objects and reduces memory overhead, may automatically and transparently freeze the system from time to time. such behavior is obviously unacceptable in the real-time world. (a commonly recognized goal of real-time computing is to meet an applications time constraints.)
to address this issue, new java virtual machines (jvm) are being developed (e.g., jvm with concurrent gc). in addition, a new real-time specification for java (rtsj, jsr-001) has been finalized.
unfortunately, these solutions achieve predictability to the detriment of performance. for example, concurrent gc is less efficient than "stop the world gc" (which requires total cpu usage), and the memory model advocated by the rtsj requires runtime checks that impact performance.
this article examines a new solution, one that provides determinism for real-time threads and also has the positive side effect of significantly "acceler... 下一页