This tutorial is for advanced simulation developers engaged in the use of object-oriented programminglanguages and libraries that support object-oriented, discrete-event simulation. The tutorial is based on generic s...
详细信息
This tutorial is for advanced simulation developers engaged in the use of object-oriented programminglanguages and libraries that support object-oriented, discrete-event simulation. The tutorial is based on generic structures common to SML simulation libraries in the .Net languages ***, C# and J# and the Silk libraries in Java. The focus of the tutorial is on the use of consistent design patterns that encourage usability, reusability and cross-language compatibility. Particular emphasis is placed on designing and coding object-oriented simulation models to properly transfer simulation control between entities, resources and system controllers, and on techniques for obtaining a one-to-one correspondence between simulation code and system behavior.
The implementation of ProVIDE, an enhanced integrated development environment (IDE) for java, into introductory CS curriculum is discussed. ProVIDE enables students to analyze their computer programs in terms of their...
详细信息
ISBN:
(纸本)1581136722
The implementation of ProVIDE, an enhanced integrated development environment (IDE) for java, into introductory CS curriculum is discussed. ProVIDE enables students to analyze their computer programs in terms of their correctness, while creating them. ProVIDE approach is a modified version of the 'design by contract' methodology for programming process. In this approach, student is asked to supply a postcondition only, and ProVIDE then helps the student to construct the appropriate precondition by leading him/her through an axiomatic proof of the correctness of the method.
System-level design methodologies for embedded HW/SW systems face several challenges: In order to be susceptible to systematic formal analysis based on state-space exploration, a modelling notation with a simple forma...
详细信息
ISBN:
(纸本)0769519237
System-level design methodologies for embedded HW/SW systems face several challenges: In order to be susceptible to systematic formal analysis based on state-space exploration, a modelling notation with a simple formal semantics is desired. Architecture-level engineering practice demands notations which concentrate on certain aspects of system functionality, while other aspects (such as communication and scheduling) are implicitly encoded in the language semantics, and realized using HW/SW components such as operating systems and protocol stacks. We describe a system-level design methodology targeted for automotive control applications. Models in a simple graphical component-based input language are compiled into complex system models incorporating abstractions for hardware, operating systems, and inter-processor communication. System models are based on the synchronous AutoFocus notation and are used as a basis for formal analysis such as systematic worst-case response time analysis. The paper describes a reference architecture for implementation, the MoDe design notation, and the translation to system models along with an outlook giving a perspective for analysis.
Jackal is a fine-grained distributed shared memory implementation of the Java programminglanguage. Jackal implements Java's memory model and allows multithreaded Java programs to run unmodified on distributed-mem...
详细信息
ISBN:
(纸本)9781581133592
Jackal is a fine-grained distributed shared memory implementation of the Java programminglanguage. Jackal implements Java's memory model and allows multithreaded Java programs to run unmodified on distributed-memory systems. This paper focuses on Jackal's run-time system, which implements a multiple-writer, home-based consistency protocol. Protocol actions are triggered by software access checks that Jackal's compiler inserts before object and array references. To reduce access-check overhead, the compiler exploits source-level information and performs extensive static analysis to optimize, lift, and remove access checks. We describe optimizations for Jackal's run-time system, which mainly consists of discovering opportunities to dispense with flushing of cached data. We give performance results for different run-time optimizations, and compare their impact with the impact of one compiler optimization. We find that our run-time optimizations are necessary for good Jackal performance, but only in conjunction with the Jackal compiler optimizations described by Veldema et al. As a yardstick, we compare the performance of Java applications run on Jackal with the performance of equivalent applications that use a fast implementation of Java's Remote Method Invocation instead of shared memory. Copyright (C) 2003 John Wiley Sons, Ltd.
We present in this article a new programminglanguage JEstelle. It fuses the formal semantics of Estelle (a standardized Formal Description Technique) and the popularity of the Java platform. JEstelle uses similaritie...
详细信息
ISBN:
(纸本)0889863490
We present in this article a new programminglanguage JEstelle. It fuses the formal semantics of Estelle (a standardized Formal Description Technique) and the popularity of the Java platform. JEstelle uses similarities between these two languages to narrow the gap between formal specification and implementation code. It provides a solution that can simplify significantly the distributed Java applications development. The introduction of formalism to the communication part of a distributed Java application, allows its validation and improves the readability of the system design. JEstelle introduces some minor restrictions to the use of Java API and naturally supports the automatic implementation code generation. Moreover, the Java technology permits to easily adapt the existing Estelle Development Toolset (XEDT) to the development of JEstelle tools. Finally, JEstelle is easy to use and practically does not require the designer to be familiar with any Formal Description Techniques, and with Estelle in particular.
The initial design of software systems is modelled using conceptual designlanguage elements. When a refined version of the design is made, each of the original (conceptual) elements is replaced by the refined element...
详细信息
ISBN:
(纸本)0889863946
The initial design of software systems is modelled using conceptual designlanguage elements. When a refined version of the design is made, each of the original (conceptual) elements is replaced by the refined element(s). Other feasible refinements are eliminated prematurely. This paper presents a software design approach, called CoCompose, that allows for defining several, layered, alternative refinements for each element in a design. The refinements are represented as structures of existing designlanguage constructs, which makes it possible to address advanced software development technologies such as aspect-oriented programming, component-based development and design patterns without introducing new designlanguage constructs. CoCompose uses an automated translation process to determine which refinements to use and to generate an implementation.
Graphical programming Platform (GPP) is an integrated software development environment for Virtual Instrument (VI) systems, providing users with a graphically programming way to quickly construct automatic test and me...
详细信息
ISBN:
(纸本)0780378377
Graphical programming Platform (GPP) is an integrated software development environment for Virtual Instrument (VI) systems, providing users with a graphically programming way to quickly construct automatic test and measurement systems. VI component library, which is a set of basic cells for building GPP applications with responsibility for data processing functions, is the key part of GPP. In order to achieve high levels of reusability and flexibility, an object-oriented framework for VI component library was presented, described with Unified Modeling language (UML). This framework make full uses of design patterns and was far more likely to achieve higher levels of reusability and extendibility. Based on such a framework, not only can VI component library reuse both its source code and design architecture, but also can be developed more efficiently and easier to maintain and extend.
The rapidly increasing complexity and quality requirements of integrated circuit design can only be addressed effectively by a design system architecture that supports very efficient, high-quality sharing of IC design...
详细信息
ISBN:
(纸本)0769518818
The rapidly increasing complexity and quality requirements of integrated circuit design can only be addressed effectively by a design system architecture that supports very efficient, high-quality sharing of IC design data. The OpenAccess Coalition is delivering an industry standard Application programming Interface (API) and Information Model (IM) that provides access to a shared database as an essential infrastructure component for modern IC design systems. The OpenAccess Standard 10 and API, along with its reference implementation will be released to the industry early in 2003. Hewlett-Packard has participated in OpenAccess from the outset and most recently as a Beta evaluation partner for this OA industry release. HP has discovered many insights about the OpenAccess standardization process as well as specifically about the IM/API Standard and its reference implementation,. which will be summarized herein, and explained in more detail during the presentation at the ISQED conference.
Logic programming is based on the idea that computation is controlled inference. The Extended Andorra Model provides a very powerful framework that supports both co-routining and parallelism. In this work we show that...
详细信息
ISBN:
(纸本)3540206426
Logic programming is based on the idea that computation is controlled inference. The Extended Andorra Model provides a very powerful framework that supports both co-routining and parallelism. In this work we show that David H. D. Warren's design for the EAM with Implicit Control does not perform well for deterministic computations and we present several optimisations that allow the BEAM to achieve performance matching or even exceeding related systems. Our optimisations refine the original EAM control rule demonstrate that overheads can be reduced through combined execution rules, and show that a good design and emulator implementation is relevant, even for a complex system such as the BEAM.
The proceedings contains 28 papers from the acmsigplan 2002 conference on programminglanguagedesign and implementation (PLDI'02). Topics discussed include: flow-sensitive type qualifiers;fast copy coalescing an...
详细信息
The proceedings contains 28 papers from the acmsigplan 2002 conference on programminglanguagedesign and implementation (PLDI'02). Topics discussed include: flow-sensitive type qualifiers;fast copy coalescing and live-range identification;preference-directed graph coloring;a system and language for building system-specific, static analyses and deriving specialized program analyses for certifying component-client conformance.
暂无评论