A major challenge of maintaining object-oriented programs is to find a means of evolving software that already has a distributed client base. This should be easier for java developers than for most, because dynamic li...
详细信息
ISBN:
(数字)9783540454403
ISBN:
(纸本)3540438475
A major challenge of maintaining object-oriented programs is to find a means of evolving software that already has a distributed client base. This should be easier for java developers than for most, because dynamic linking has been designed into the runtime system. It turns out however that things are not so straightforward as they seem, since a given modification can leave a remote client in one of a number of states, not all of which are tolerable, let alone desirable. In this paper we attempt to delineate these states, and to consider ways of avoiding the worst of them. We describe our utility, which offers library developers a transparent version control system, to protect their remote clients.
This paper describes the use of java to develop a software based emulator for a microprocessor. This emulator is used in a second year computer architecture course to teach the basics of assembly languageprogramming....
详细信息
ISBN:
(纸本)0818688289
This paper describes the use of java to develop a software based emulator for a microprocessor. This emulator is used in a second year computer architecture course to teach the basics of assembly languageprogramming. The implementation of the emulator in java is described in detail.
While the availability of platform-independent code on the Internet is increasing, third-party code rarely exhibits all of the features desired by end users. Unfortunately, developers cannot foresee and provide for al...
详细信息
ISBN:
(纸本)1880446944
While the availability of platform-independent code on the Internet is increasing, third-party code rarely exhibits all of the features desired by end users. Unfortunately, developers cannot foresee and provide for all possible extensions. In this paper, we describe load-time transformation, a stage in the program development lifecycle in which classes are modified at load time according to user-supplied directives. This allows the users to select transformations that add new features, customize the implementation of existing features, and apply the changes to all classes in the environment. The java Object Instrumentation Environment (JOIE) is a toolkit for constructing transformations of java classes. An enhanced class loader calls user-supplied transformers that specify rules for transforming target classes. We describe some applications of load-time transformation, including extending the java environment, integrating classes with specialized environments, and adding functionality directly to classes.
This paper describes a project suitable for a software engineering or object-oriented design course. The project consists of asking students to design an application programming interface (API) for a particular range ...
详细信息
ISBN:
(纸本)1581133294
This paper describes a project suitable for a software engineering or object-oriented design course. The project consists of asking students to design an application programming interface (API) for a particular range of applications. An API-design project has several features not always found in application-design projects: It forces students to focus carefully on the distinction between the programming and the user interfaces;it provides a good justification for studying existing APIs as model code;it provides a natural way to divide tasks between different groups of designers/programmers;and, the final product can be used as the basis for programming projects in other courses. In this case the particular project we describe is the design of an API for implementing Historical Cipher algorithms.
A recurring issue in generative approaches, in particular if they generate code for multiple target languages, is logging. How to ensure that logging is performed consistently for all the supported languages? How to e...
详细信息
ISBN:
(纸本)9781728125350
A recurring issue in generative approaches, in particular if they generate code for multiple target languages, is logging. How to ensure that logging is performed consistently for all the supported languages? How to ensure that the specific semantics of the source language, e.g. a modeling language or a domain-specific language, is reflected in the logs? How to expose logging concepts directly in the source language, so as to let developers specify what to log? This paper reports on our experience developing a concrete logging approach for ThingML, a textual modeling language built around asynchronous components, statecharts and a first-class action language, as well as a set of "compilers" targeting C, Go, java and javaScript.
In this paper, we present the proposal and implementation of a java-based parallel discrete-event simulation tool for cluster computing called ClusterSim (Cluster Simulation Tool). The ClusterSim supports visual model...
详细信息
ISBN:
(纸本)0780386949
In this paper, we present the proposal and implementation of a java-based parallel discrete-event simulation tool for cluster computing called ClusterSim (Cluster Simulation Tool). The ClusterSim supports visual modeling and simulation of clusters and their workloads for performance analysis. A cluster is composed of single or multi-processed nodes, parallel job schedulers, network topologies and technologies. A workload is represented by users that submit jobs composed of tasks described by probability distributions and their internal structure (CPU, I/O and MPI instructions). Our main objectives in this paper: to present the proposal and implementations of the software architecture and simulation model of ClusterSim;to verify and validate ClusterSim;to analyze ClusterSim by means of a case study. Our main contributions are: the proposal and implementation of ClusterSim with an hybrid workload model, a graphical environment. the modeling of heterogeneous clusters and a statistical and performance module.
Over the Years, java (TM) has become a popular language for standalone as well as web based applications. Portability and security are the major reasons for java (TM)'s success and increased level of adoption in v...
详细信息
ISBN:
(纸本)9780769537924
Over the Years, java (TM) has become a popular language for standalone as well as web based applications. Portability and security are the major reasons for java (TM)'s success and increased level of adoption in various application domains. When evaluating security, Forensics is another area with continuous increasing interest. With research progress of the previous Years efficient tools for reconstructing data from improperly deleted documents are available and opened the door for a whole new, set Of concerns to look at to insure security. In this paper we are describing our work in progress that is related to establishing a java (TM) framework that evaluates the traces left by java (TM) applications in order to then be able to design forensics resistant java (TM) applications.
This paper is focused on the performance analysis;sis, comparison and optimization of the most important distributed object models for java: RMI (Remote Method Invocation) and RMI-IIOP (Remote Method invocation over I...
详细信息
ISBN:
(纸本)0769505686
This paper is focused on the performance analysis;sis, comparison and optimization of the most important distributed object models for java: RMI (Remote Method Invocation) and RMI-IIOP (Remote Method invocation over Internet Intel-ORB Protocol). The paper presents the following contributions to the research on distributed object performance. First, a detailed performance analysis of both models is provided with the in-depth comparison. These results help to understand how the models perform, Second, an overhead analysis and the bottleneck identification is presented with the explanation why there are differences in performance. Third, optimizations and the results for performance improved post-beta RMI-IIOP versions are presented. These show considerably beta performance in all areas compared to the original beta release, with RMI-IIOP having equivalent or better performance to RMI in almost all cases.
We describe a framework in java to create sonification applications with minimum effort from the programmer and musician. Our tool, AMIFAST, offers a set of modules that can be easily assembled to produce sonification...
详细信息
ISBN:
(纸本)0769521770
We describe a framework in java to create sonification applications with minimum effort from the programmer and musician. Our tool, AMIFAST, offers a set of modules that can be easily assembled to produce sonification of off-line as well as on-line (i.e. real-time) applications. Moreover, the programmer can easily add new functionalities. In AMIFaST we included a sonification technique that we introduce here, Markov Chain Perturbation.
Software corpora facilitate reproducibility of analyses, however, static analysis for an entire corpus still requires considerable effort, often duplicated unnecessarily by multiple users. Moreover, most corpora are d...
详细信息
ISBN:
(纸本)9780769553047
Software corpora facilitate reproducibility of analyses, however, static analysis for an entire corpus still requires considerable effort, often duplicated unnecessarily by multiple users. Moreover, most corpora are designed for single languages increasing the effort for cross-language analysis. To address these aspects we propose Pangea, an infrastructure allowing fast development of static analyses on multi-language corpora. Pangea uses language-independent meta-models stored as object model snapshots that can be directly loaded into memory and queryed without any parsing overhead. To reduce the effort of performing static analyses, Pangea provides out-of-the box support for: creating and refining analyses in a dedicated environment, deploying an analysis on an entire corpus, using a runner that supports parallel execution, and exporting results in various formats. In this tool demonstration we introduce Pangea and provide several usage scenarios that illustrate how it reduces the cost of analysis.
暂无评论