Font Size: a A A

Research On Language Virtual Machine With Process Migration Support

Posted on:2009-03-22Degree:MasterType:Thesis
Country:ChinaCandidate:Y F LeFull Text:PDF
GTID:2178360275971794Subject:Computer software and theory
Abstract/Summary:PDF Full Text Request
As high performance facilities on hardware and network shift from super-computers to networks of workstations, even to the personal computer, and with the ever-increasing role of the World Wide Web, we expect migration to play a more important role and eventually to be widely adopted. It is a hot topic nowadays that migrating computing resource employing the virtual technology. However, it is of limitation to utilize the conventional virtual technology that it is not OS-independent or fine-grained. With the compiler-time language-level support, the language virtual machine could transform the physical thread state to logic state that facilitates to control migration size and to achieve cross-platform migration.According to the above analysis, I design the language virtual machine LAOVM for process migration, which can move applications to various platforms transparently. LAOVM is composed of front-end assembler, back-end virtual machine and the process migration mechanism. Through the low level virtual instruction set, it provides possibility that mapping to the local machine code and supporting to different programming languages as the intermediate form of expression. Since the source codes are compiled into executable object code, the physical thread state is transformed into the logic thread state, which is independent of the operating system, that achieve the platform-independent mobility in LAOVM. The back-end virtual machine simulates the implementation of the system calls and provides the environment for object code executing, and we could track and monitor the program running state by the debugger. Since the migration size in the LAOVM is smaller compared to the system-level migration, we adopt a stop-and-copy strategy. After checkpointting, you can choose to save the runtime state or move to other node, and then resume the application runtime in the local machine or in the destination. In short, LAOVM is aimed to achieve OS-indenpdent, language-indenpdent and fine-grained mobility through the front-end compiler-time support, the back-end runtime support and the effective migration strategy.The LAOVM development is based on Windows operating system and Visual Studio platform, implemented by C, C++ languages, involves the front compiler, virtual instructions set, back-end virtual machine, the save and recovery of process status. According to analysis of testing result and system log, it is feasible for intended function and process migration in the current LAOVM prototype. The migration time consumed in the LAN does not exceed half a second, even the memory size for process migration larger than 100M bytes, it is of advantages comparing to the system virtual machine for migration. Finally, the test result indicates that system thuoughput is depending on the network condition and insensitive for variable memory.
Keywords/Search Tags:Language Virtual Machine, Instruction Set, Assembler, Process Migration
PDF Full Text Request
Related items