A Distributed Java Virtual Machine For DSP Architectures
نویسنده
چکیده
Java is for sure the most popular programming language today. Its popularity is based on the portability of the code and on the elegant programming framework provided by the language: built in garbage collection and multi-threaded support, easy Internet application development through socket streams, and last but not least familiar syntax. Even if a lot of work has already been done related to Java Virtual Machines (JVMs) and a large number of Java applications are already available, few of these have penetrated the DSP world. Our work aims to bridge this gap between DSP architectures and Java. Such a connection would open the DSP world to a much larger class of consumers, a place now occupied by general-purpose processors. The two main research directions we see in improving the performance of a JVM for DSP architectures are: (1) writing a Java bytecode Just-In-Time compiler optimized for a specific DSP platform, and (2), taking advantage of the available parallelism present in DSP multi-processor architectures. Our work focuses on the last issue. We propose a distributed JVM designed for a multi-processor DSP architecture. Due to the unavailability of the hardware at the moment, we have implemented our ideas on a network of general-purpose processors, emulating the topology of the quad-processor DSP board constructed by Innovative DSP. We emulate the I/O channels connecting the processors through TCP sockets and interrupts with Unix signals. All the protocols use a constant number of messages, making it possible to estimate the costs of all distributed actions. In this document we show the design and test results obtained with DISK. While a distributed JVM architecture may not prove to be an exciting project for highly-specialized DSP processors (such as TI's TMS320 family), we believe that this work may be successfully applied to multiprocessor architectures based on RISC processors enhanced with signal processing capabilities (such as the new ARM9E processor). Other projects are working on porting Java to this class of processors. On top of this we provide a Java parallel-processing platform that binds the power of Java distributed computing with signal processing.
منابع مشابه
JavaSymphony: A System for Development of Locality-Oriented Distributed and Parallel Java Applications
Most Java-based systems that support portable parallel and distributed computing either require the programmer to deal with intricate low-level details of Java which can be a tedious, timeconsuming and error-prone task, or prevent the programmer from controlling locality of data. In this paper we describe JavaSymphony, a programming paradigm for distributed and parallel computing that provides ...
متن کاملSingleJava: A Distributed Java Virtual Machine Based on Thread Migration
A distributed Java virtual machine called SingleJava based on thread migration is proposed in this paper. SingleJava can be used to build a distributed computing framework while keeping itself completely transparent to Java programmers. The main idea underlying is to improve the inevitable Java virtual machine in a Java based software system, i.e., adding a build-in distributed infrastructure t...
متن کاملDistributed Systems Security: Java, CORBA, and COM+
Security can have varying levels of difficulty for implementation. One factor in determining the difficulty is the number and distribution of the systems. With distributed systems architecture, there are different nodes and resources. One major issue with distributed systems is application security. There is the question of how security is handled in distributed applications, and how the client...
متن کاملKaffemik - A distributed JVM on a single address space architecture
New memory mapped network interfaces offers both low latency and high bandwith communications. This has implications on the design and implementation of distributed operating systems, especially with respect to global management of resources. This paper presents Kaffemik, a scalable distributed Java Virtual Machine, providing the programmer with a single machine abstraction. Kaffemik is built o...
متن کاملJavaNow: A Framework for Parallel Computing on Networks of Workstations
Networks of workstations are becoming a dominant force in the distributed computing arena, this due primarily to the excellent price to performance ratio of such systems when compared to traditional massively parallel architectures. It is therefore critical to develop programming languages and environments that can help harness the raw computational power available on these systems. The JavaNow...
متن کامل