Object-oriented architecture and processor independence have made java aphenomenal success on the desktop. But the future is not so clear for embedded systems, asunpredictable timing, heavy memory requirements, and di...
详细信息
Object-oriented architecture and processor independence have made java aphenomenal success on the desktop. But the future is not so clear for embedded systems, asunpredictable timing, heavy memory requirements, and disputes over standardsobstruct widespreadacceptance.
In just four years, java has taken the networked world by storm. java does what no programminglanguage has done before. It combines powerful, object-oriented programming with the ability to run on any computer platfo...
详细信息
In just four years, java has taken the networked world by storm. java does what no programminglanguage has done before. It combines powerful, object-oriented programming with the ability to run on any computer platform, as well as many others without the need for recompiling or translating. Unfortunately, hackers can use it to slip lethal doses of malicious code into unsuspecting Web surfer's computers if security managers do not administer the right inoculations. Compared to other software with an evil bent, it can be much more surreptitious, entering the user's machine and activating itself without warning.
In old markets and new, power electronics, robots, intelligentcontrol, and connectivity are becoming the pillars of industrialelectronics and factory automation. Consider the integratedgate-commutated thyristor (IGCT)...
详细信息
In old markets and new, power electronics, robots, intelligentcontrol, and connectivity are becoming the pillars of industrialelectronics and factory automation. Consider the integratedgate-commutated thyristor (IGCT). In the 18 months since itsintroduction by a Wisconsin company, motor drives based on the thyristorare already making a dent in the market for medium voltage and powerlevels-up to 6.6 kV and 10 MW-not least because other devices operate atsimilar power levels but higher losses. In the control and connectivityfields, open systems are vigorously pursued. Software and hardwareadvances in javalanguage technology are allowing manufacturers to breakthrough the restrictions of proprietary systems and test real-timefactory automation over the Internet, involving text, numerical data,and graphics. Open networking for the factory is strongly advocated bysuch industry leaders as Hirschmann Network Systems, in Riverdale, NJand on printed-circuit boards, the use of vias under 150 μm indiameter (microvias) is taking hold, as packaging concepts like ballgrid arrays cause component leads to shrink
The java Virtual Machine (or JVM) is central to the system's aim of providing a secure program execution environment that operates identically on a wide variety of computing platforms. To be most effective in this...
详细信息
The java Virtual Machine (or JVM) is central to the system's aim of providing a secure program execution environment that operates identically on a wide variety of computing platforms. To be most effective in this role, the JVM needs a rigorous, complete description, to specify precisely the behavior required of implementations. In response, a number of researchers have produced formal accounts of the JVM that seek to define it in an unambiguous and comprehensible manner. Unfortunately, the size and complexity of the JVM means that many of these formal accounts must either restrict their scope substantially, or risk becoming unwieldy and intractable. This paper suggests an alternative approach to the specification of the JVM that seeks to ameliorate such problems by composing together a small set of `microinstructions' to produce the full bytecode set. These microinstructions are encapsulated as functions in the polymorphic functional programminglanguage Haskell, using the familiar mechanisms of Hindley-Milner type inference to characterize the JVM's rather thorny verifier. In this way, its is hoped that a foundation will be laid for formal descriptions of the java Virtual Machine that need not trade tractability for completeness.
A promising technique for protecting privacy and integrity of sensitive data is to statically check information flow within programs that manipulate the data. While previous work has proposed programminglanguage exte...
详细信息
A promising technique for protecting privacy and integrity of sensitive data is to statically check information flow within programs that manipulate the data. While previous work has proposed programminglanguage extensions to allow this static checking, the resulting languages are too restrictive for practical use and have not been implemented. In this paper, we describe the new language JFlow, an extension to the javalanguage that adds statically-checked information flow annotations. JFlow provides several new features that make information flow checking more flexible and convenient than in previous models: a decentralized label model, label polymorphism, run-time label checking, and automatic label inference. JFlow also supports many language features that have never been integrated successfully with static information flow control, including objects, subclassing, dynamic type tests, access control, and exceptions. This paper defines the JFlow language and presents formal rules that are used to check JFlow programs for correctness. Because most checking is static, there is little code space, data space, or run-time overhead in the JFlow implementation.
java provides portability and safety at the price of efficiency. Many solutions have been proposed to overcome the lack of efficiency, but most of them lose either portability or the ability to dynamically load byteco...
详细信息
java provides portability and safety at the price of efficiency. Many solutions have been proposed to overcome the lack of efficiency, but most of them lose either portability or the ability to dynamically load bytecode. The authors present a solution that reconciles all these factors. Harissa is an efficient environment for the execution of java programs that permits mixing compiled and interpreted methods. Harissa's compiler translates java bytecode to C, incorporating several aggressive optimizations an outperforming JIT systems by a factor of two or more.
This paper presents extensions to Bell Canada source code quality assessment suite (DATRIX tm) for handling javalanguage systems. Such extensions are based on source code object metrics, including java interface metr...
详细信息
ISBN:
(纸本)0769501796
This paper presents extensions to Bell Canada source code quality assessment suite (DATRIX tm) for handling javalanguage systems. Such extensions are based on source code object metrics, including java interface metrics, which are presented and explained in detail. The assessment suite helps to evaluate the quality of medium-large software systems by identifying parts of the system which have unusual characteristics. This paper also studies and reports the occurrence of clones in medium-large java software systems. Clone presence affects quality since it increases a system size and often leads to higher maintenance costs. Clone identification process uses java specific metrics to determine similarities between methods throughout a system. The results obtained from experiments with software evaluation and clone detection techniques, on over 500 KLOC of java source code, are presented.
Although many slicing algorithms have been proposed for object-oriented programs, no slicing algorithm has been proposed which cart be used to handle the problem of slicing concurrent java programs correctly. In this ...
详细信息
ISBN:
(纸本)0769501796
Although many slicing algorithms have been proposed for object-oriented programs, no slicing algorithm has been proposed which cart be used to handle the problem of slicing concurrent java programs correctly. In this paper, we propose a slicing algorithm for concurrent java programs. To slice concurrent java programs, we present a dependence-based representation called multithreaded dependence graph, which extends previous dependence graphs, to represent concurrent java programs. We also show how static slices of a concurrent java program can be computed efficiently based on its multithreaded dependence graph.
JTN is a formal graphic notation for java-targeted design specifications, that are specifications of systems that will be implemented using java. JTN is aimed to be a part of a more articulated project for the product...
详细信息
ISBN:
(纸本)3540657185
JTN is a formal graphic notation for java-targeted design specifications, that are specifications of systems that will be implemented using java. JTN is aimed to be a part of a more articulated project for the product ion of a development method for reactive/concurrent/distributed systems. The starting point of this project is an existing general method that however does not cover the coding phase of the development process. Such approach provides formal graphic specifications for the system design that are too abstract to be transformed into java code in just one step, or at least: the transformation is really hard and complex. We introduce in the development process an intermediate step that transforms the above abstract specifications into JTN specifications: for which the transformation into a java program is almost automatic and can be guaranteed correct. In this paper we present JTN on a simple toy example.
This paper describes our experiences in having students build a software engineering tool as a course project in a CS2 course. The tool, which we called JDuck (java Documenter of Code, oK), was modelled on the javadoc...
详细信息
ISBN:
(纸本)1581130856
This paper describes our experiences in having students build a software engineering tool as a course project in a CS2 course. The tool, which we called JDuck (java Documenter of Code, oK), was modelled on the javadoc tool that is part of Sun Microsystem's standard java Development Kit (JDK). That is, a working version of JDuck would be able to read in java source code and generate HTML files that summarize the basic structure of the provided classes. We discuss how we set up the project, what we think the students learned, what they told us they learned, and what we would do differently next time.
暂无评论