Font Size: a A A

The Research On Real-Time Java Platform

Posted on:2009-06-28Degree:MasterType:Thesis
Country:ChinaCandidate:Y ShenFull Text:PDF
GTID:2178360272957230Subject:Computer application technology
Abstract/Summary:PDF Full Text Request
Embedded Systems are designed to perform a few specific tasks in the most efficient way. Most embedded systems are time critical applications meaning that the embedded system is working in an environment where timing is very important, So embedded systems are also known as real-time systems which are respond an input or event and produce the result within a guaranteed time period.Java is a modern object-oriented programming language. It is used in many different areas of software development. The primary features of Java that make it attractive for embedded systems are platform independence, automatic memory management and safe pointers. However, due to the lack of acceptable real-time performance and the strict requirements of embedded systems use of the Java language in embedded real-time systems isn't widespread. To overcome the technical difficulties, some Java specifications for embedded real-time systems were released. The Real-Time Specification for Java (RTSJ) is targeted toward real-time systems by providing real-time capabilities. It enhances Java in several areas including memory management, thread scheduling, synchronization, asynchronous transfer of control. With the RTSJ proposed, more and more programmers begin to devote to real-time Java applications.The main research content of this paper is how to improve the traditional Class Loader, and make it eliminate the influence of dynamic loading on real-time performance. The Class Loader proposed by this paper adopts the method of pre-resolve. It can load all needed class files in advance, and all non real-time operations, such as class loading, resolve, linking, the optimization of bytecode and the allocation of space can be done before application program is executed. The memory image file generated by Class Loader can be processed directly by Java Processor. When application program runs the class loading is no necessary.To reduce the complexity of the implement of Java Processor and improve the efficiency of execution, this paper also optimizes part of original Java bytecode instructions. The optimized bytecode changes the operand, but doesn't change the opecode. Due to adopting the method of Pre-resolve, the indirect reference saved in the original operand can be replaced by direct reference. When Java Processor handles the optimized bytecode, it can get needed information directly, so the resolve of run-time constant pool can be avoided.The results show that the Class Loader implemented by this paper is capable of loading all class files which application program involves with. All information which Java Processor needs is saved in the memory image file, so the real-time performance of the system can be improved.
Keywords/Search Tags:Java platform, Java Virtual Machine, Real-time Java, Real-Time Specification for Java, class loader, Java bytecode instructions
PDF Full Text Request
Related items