Browsing by Author "Lomow, Greg"
Now showing 1 - 13 of 13
Results Per Page
Sort Options
Item Metadata only Combined discrete and continuous simulation in ADA(1983-11-01) Inkster, James; Lomow, Greg; Unger, Brian WThis paper discusses the design of an Ada package for the modelling of combined discrete and continuous systems. The package is an extended version of SAMOA, a general purpose discrete-event simulation system that uses the tasking and data abstraction constructs of Ada to provide process-oriented simulation facilities similar to those of Simula's class SIMULATION. The paper reviews the interface problems involved in combining discrete and continuous simulation, particularly the problem of co-ordinating the time advance mechanisms of the two, and describes the implementation in SAMOA of a framework that provides general and unrestricted facilities for both types of simulation and for the modelling of interactions between continuous and discrete components of a system. Other significant features of SAMOA include such user services as statistics collection, report generation, and event tracing. The paper concludes with an example of a SAMOA combined simulation that illustrates the major features of the system.Item Open Access Communicating Sequential Prolog(1988-01-01) Li, Xining; Unger, Brian W; Cleary, John; Lomow, Greg; West, DarrinCommunicating Sequential Prolog (CSP') is a single-solution distributed logic programming language for discrete event simulation. Its primary goal is to speed up the execution of logic programs through the use of parallelism, while as far as possible preserving the semantics of standard Prolog. A CSP' program consists of a set of parallel processes, synchronized by simulation time and by message passing. The underlying interprocess communication mechanism is Time Warp. The pertinent features of parallel logic programming and Time Warp are described. The syntax of CSP' is introduced and the semantics of new predicates and their control structures are discussed. Examples are given to show the expressive power and simplicity of CSP'.Item Open Access Database concurrency control using time warp(1986-11-01) Zhixin, Dong; Heying, Zhou; Lomow, Greg; Unger, Brian WConcurrency control in a distributed database refers to mechanisms which permit multiple transactions to operate on the database simultaneously while ensuring that the database appears consistent to each transaction. Problems which need to be addressed include avoiding or recovering from deadlocked transactions and making transactions operate on a consistent database atomically. Considerable research has been done in this area and concurrency control mechanisms based on two-phase locking and two-phase commit [Hammer80], timestamps [Rosenkrantz78] [Thomas79], multiversion data objects [Reed78] and conflict analysis [Bernstein80a] [Bernstein80b] have been proposed. Each approach offers different advantages and incurs different costs. In this paper we investigate an optimistic algorithm for synchronising distributed database transactions that is based on Time Warp (TW) described by Jefferson [Jefferson85]. The database is assumed to consist of a set of long lived abstract data objects that are operated upon concurrently by a changing set of short lived objects, i.e. transactions. First, a brief outline of the TW algorithm is given, then the characteristics of a concurrency control (CC) algorithm based on TW is presented and finally, we discuss problems and advantages of this CC algorithm, and experience with a particular implementation.Item Metadata only Distributed software prototyping and simulation in JADE(1984-11-01) Lomow, Greg; Unger, Brian WA prototyping and simulation tool that supports the development of distributed programs is described. This tool, called Jems, forms a part of Jade, a distributed software prototyping environment. The Jade environment provides tools for the design, implementation, debugging, testing, maintenance, and performance analysis of distributed, concurrent programs. Novel features of Jade include the support of: multi-lingual distributed programs; flexible monitoring of inter-process communication; multiple views into executing programs via a window system; graphical animation of executing programs; and the prototyping of distributed software. This paper presents an overview of the Jade environment, describes the distributed software prototyping tool, and outlines the status of the project.Item Metadata only ISSUES IN THE DESIGN AND IMPLEMENTATION OF SAMOA(1983-02-01) Lomow, GregPreviously, the process view of simulation, which represents a model as a set of competing and cooperating entities, has been most successfully implemented in the general purpose language SIMULA. With the continuing implementation of SAMOA (Simulation And Modelling On Ada) there is now an ADA based, general purpose, discrete event simulation package which supports the process view. This paper is a discussion of the design and implementation issues inherent in SAMOA and it is also a detailed discussion of how these issues have been dealt with in SAMOA. We begin by briefly describing SAMOA and its facilities, we continue by giving an overview of SAMOA's structure, and we conclude by dealing, in detail, with a number of implementation issues. Through out this discussion we will compare and contrast SAMOA's implementation of the process view of simulation with similar packages implemented in SIMULA.Item Open Access JADE virtual time implementation manual(1986-09-01) Unger, Brian W; Cleary, John; Lomow, Greg; Xining, Li; Zhonge, Xiao; Slind, KonradNo AbstractItem Metadata only JADE: a distributed software prototyping environment(1983-04-01) Witten, Ian H.; Birtwistle, Graham M.; Cleary, John; Hill, David R.; Levinson, Danny; Lomow, Greg; Neal, Radford; Peterson, Murray; Unger, Brian W; Wyvill, BrianThe Jade research project is aimed at building an environment which comfortably supports the design, construction, and testing of distributed computer systems. This note is an informal project description which delimits the scope of the work and identifies the research problems which are tackled. Some design issues are discussed, and progress to date is described.Item Metadata only JADE: a simulation & software prototyping environment(1983-11-01) Unger, Brian W; Birtwistle, Graham; Cleary, John; Hill, David; Lomow, Greg; Neal, Radford; Peterson, Murray; Witten, Ian; Wyvill, BrianJade provides an integrated set of tools which are designed to support the development of distributed software and systems. The Jade environment provides tools for the design, implementation, debugging, testing, maintenance, and performance analysis of distributed, concurrent programs. Novel features of Jade are that it is based on the modelling and simulation of target distributed systems and partially automatic program generation is supported. The goals of Jade are to provide a cost effective software development environment that is both easy and comfortable to use, and which can produce more reliable, maintainable programs. This paper presents an overview of the Jade environment, describes its major components, and outlines the status of the project.Item Open Access Monitoring distributed systems(1985-11-01) Joyce, Jeffrey; Lomow, Greg; Slind, Konrad; Unger, Brian WThe monitoring of distributed systems involves the collection, interpretation, and display of information concerning the interactions among concurrently executing processes. This information and its display can support the debugging, testing, performance evaluation, and dynamic documentation of distributed systems. General problems associated with monitoring are outlined in this paper, and the architecture of a general purpose, extensible, distributed monitoring system is presented. Three approaches to the display of process interactions are described: sequential textual traces, animated graphical traces, and a third which combines aspects of textual and graphical views to display a systems's evolution versus inter-process communication events. The roles that each of these types of tracing fulfill in monitoring and debugging distributed systems are identified and compared. Monitoring tools for collecting communication statistics, deadlock detection, controlling the non-deterministic execution of distributed systems, and the use of protocol specifications in monitoring are also described. Our discussion is based on experience in the development and use of a monitoring system within a distributed programming environment called Jade. The Jade environment was developed within the Computer Science Department of the University of Calgary and is now being used to support teaching and research within a number of university and research organisations.Item Metadata only Item Open Access Opimising the time wrap using the semantics of abstract data types(1986-10-01) West, Darrin; Lomow, Greg; Unger, Brian WThe Time Warp mechanism for synchronising the execution of simulation components offers significant potential for achieving concurrency within distributed simulations. This mechanism takes advantage of the independence of most events in a simulation, enforcing only a partial ordering of events which allows many events to occur in an arbitrary order. There are many situations, however, where the partial order imposed by Time Warp is too restrictive, i.e., events are unnecessarily forced to occur in a specific order. This paper presents several example situations where Time Warp semantics can be relaxed, describes an approach based on abstract data types that can substantially improve performance, and outlines an implementation of this approach.Item Metadata only A process oriented distributed simulation package(1984-10-01) Unger, Brian W; Lomow, Greg; Andrews, KeithThis paper presents a process oriented, discrete event, distributed simulation package that is based on the Virtual Time mechanism. Virtual Time can be characterised as an optimistic, loosely-coupled, distributed synchronisation algorithm. The package is loosely modelled around Demos [Birtwistle, 79a], a general purpose discrete event simulation package written in Simula [Birtwistle, 79b]. Active components of a simulation are completely independent and are called entities. Communication between entities is accomplished through a system of shared "conditions". When one entity wishes to communicate with another it "signals" the appropriate condition to the other entity. A harbour simulation is developed to illustrate the features of this simulation package.Item Metadata only The process view of simulation in ADA(1982-03-01) Unger, Brian W; Lomow, GregThe process approach to discrete event modelling has been successfully applied to a broad range of natural and human-made systems. This approach originated with SIMULA, a general purpose language which supports the definition of abstract types and processes. Other simulation languages have been much more widely used however, particularly in North America. Now ADA offers the first viable alternative as a base language for the process view of discrete event modelling. This paper describes a new approach which retains the advantages of the process view and is also compatible with the ADA constructs for defining abstract types and processes. The ADA package and several simulation models are presented using this package. These models are then compared with the equivalent SIMULA models.