Imperial College London

Professor Jeff Magee

Faculty of EngineeringDepartment of Computing

Emeritus Professor of Computing
 
 
 
//

Contact

 

+44 (0)20 7594 8601j.magee Website

 
 
//

Assistant

 

Mrs Clare Pearson +44 (0)20 7594 8601

 
//

Location

 

2.06Faculty BuildingSouth Kensington Campus

//

Summary

 

Publications

Publication Type
Year
to

202 results found

MAGEE J, KRAMER J, SLOMAN M, 1989, CONSTRUCTING DISTRIBUTED SYSTEMS IN CONIC, IEEE Transactions on Software Engineering, Vol: 15, Pages: 663-675, ISSN: 0098-5589

The Conic environment provides a language-based approach to the building of distributed systems which combines the simplicity and safety of a language approach with the flexibility and accessibility of an operating systems approach. It provides a comprehensive set of tools for program compilation, configuration, debugging, and execution in a distributed environment. A separate configuration language is used to specify the configuration of software components into logical nodes. This provides a concise configuration description and facilitates the reuse of program components in different configurations. Applications are constructed as sets of one or more interconnected logical nodes. Arbitrary, incremental change is supported by dynamic configuration. In addition, the system provides user-transparent datatype transformation between heterogeneous processors. Applications may be run on a mixed set of interconnected computers running the Unix operating system and on base target machines with no resident operating system. The basic principles adopted in the construction of the Conic environment are outlined and the configuration and run-time facilities provided are described.

Journal article

Kramer J, Magee J, Sloman M, 1989, Configuration support for system description, construction and evolution, Pages: 28-33

Software systems can be conveniently described, constructed and managed in terms of their configuration, where configuration is the system structure defined as the set of constituent software components together with their interconnections. A specification of the system configuration can be used both to describe the required system structure and to generate the actual system itself. Evolution of the system is achieved by monitoring the status of the components and making extensions or changes to the system configuration by the addition of software components or the replacement of existing ones. The performance of these tasks at the configuration level is termed configuration programming and is best supported by the use of a declarative configuration language and associated support tools. The authors discuss the main principles of this approach and illustrate its practice by describing the support that has been provided in the Conic environment for distributed systems.

Journal article

Kramer J, Magee J, 1988, Change management of distributed systems

Conference paper

MUKHERJEE A, KRAMER J, MAGEE J, 1988, A DISTRIBUTED FILE SERVER FOR EMBEDDED APPLICATIONS, SOFTWARE ENGINEERING JOURNAL, Vol: 3, Pages: 142-148, ISSN: 0268-6961

Journal article

Magee J, Kramer J, Sloman M, 1988, An Overview of Distributed System Construction using Conic, The Application of Advanced Computing Concepts and Techniques in Control Engineering, Publisher: Springer-Verlag, Pages: 237-255

Book chapter

KRAMER J, MAGEE J, SLOMAN M, 1987, THE CONIC TOOLKIT FOR BUILDING DISTRIBUTED SYSTEMS, IEE PROC-D, Vol: 134, Pages: 73-82, ISSN: 0143-7054

Journal article

DULAY N, KRAMER J, MAGEE J, SLOMAN M, TWIDLE Ket al., 1987, DISTRIBUTED SYSTEM CONSTRUCTION - EXPERIENCE WITH THE CONIC TOOLKIT, Proceedings of the International Workshop on Experiences with Distributed Systems, Publisher: SPRINGER VERLAG, Pages: 189-212, ISSN: 0302-9743

For the last eight years the Distributed Systems Research Group at Imperial College has conducted research into the development of an environment to support the construction and operation of distributed software. The result has been the Conic Toolkit: a comprehensive set of language and run-time tools for program compilation, building, debugging and execution in a distributed environment. Programs may be run on a set of interconnected host computers running the Unix operating system and/or on target machines with no resident operating system.Two languages are provided, one for programming individual task modules (processes) and one for the configuration of programs from simpler groups of task modules. In addition the enviroment supports the re-use of program components and allows the configuration of new components into running systems. This dynamic configuration capability is provided by a distributed configuration management tool which is the primary method of creating, controlling and modifying distributed application programs. The system also supports user transparent datatype transformation between heterogeneous processors.This paper describes and reflects on the major design principles of the Conic toolkit and discusses the experiences both of the Conic research group and the various other universities and industries who are using the toolkit.

Conference paper

Kramer J, Magee J, Sloman M, 1987, The Conic Support Environment for Distributed Systems, Distributed Operating Systems: Theory and Practice, Publisher: Springer-Verlag, Pages: 289-310

Book chapter

Dulay N, Kramer J, Magee J, Sloman M, Twidle K, Nehmer Jet al., 1987, Distributed System Construction: Experience with the Conic Toolkit, Experiences with Distributed Systems, Publisher: Springer-Verlag, Pages: 189-212

Book chapter

Sloman M, Kramer J, Magee J, 1986, CONIC TOOLKIT FOR BUILDING DISTRIBUTED SYSTEMS., Pages: 79-89

CONIC provides a set of tools for building flexible distributed systems for embedded applications such as factory automation, telecommunications, process monitoring and control. The CONIC programming language is used to program individual software modules which communicate by naming only local entryports and exitports. This gives configuration independence and allows reuse of the modules in various situations. A separate configuration language is used to specify a system by creating instances of modules and interconnecting exit and entryports. The configuration language is also used to specify changes which can be performed dynamically without shutting down the complete system. These features of a CONIC system provide the flexibility for adapting to changing requirements. This paper describes the CONIC programming and configuration languages as well as the run-time support needed for dynamic configuration. The paper also gives an overview of the Unix based tools available for building and testing software for distributed target computers. We discuss experiences of using these tools and future work planned on the project.

Journal article

SLOMAN M, KRAMER J, MAGEE J, TWIDLE Ket al., 1986, FLEXIBLE COMMUNICATION STRUCTURE FOR DISTRIBUTED EMBEDDED SYSTEMS, IEE PROC-E, Vol: 133, Pages: 201-211, ISSN: 0143-7062

Journal article

Sloman M, Kramer J, Magee J, Twidle Ket al., 1986, FLEXIBLE COMMUNICATION STRUCTURE FOR DISTRIBUTED EMBEDDED SYSTEMS., IEE Proceedings E: Computers and Digital Techniques, Vol: 133, Pages: 201-211, ISSN: 0143-7062

Journal article

Sloman MS, Kramer J, Magee J, 1985, FLEXIBLE APPROACH TO PROGRAMMING DISTRIBUTED SYSTEMS., IEE Conference Publication, Pages: 341-346

A prototype system based on a network of LSI 11 microcomputers interconnected by an Omninet serial bus and Cambridge Ring has been in use for a number of years. We now have about 4 years experience of using earlier versions of the programming and configuration languages for implementing operating system utilities, device drivers, communication systems, and distributed simulations. It has been used both by experienced systems programmers and students for project work. The prototype software is also being used by the National Coal Board for implementing software for distributed underground monitoring and control stations. This experience has shown that Conic provides an simple, yet flexible, approach to structuring a problem as a set of communicating components.

Journal article

KRAMER J, MAGEE J, 1985, DYNAMIC CONFIGURATION FOR DISTRIBUTED SYSTEMS, IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, Vol: 11, Pages: 424-436, ISSN: 0098-5589

Journal article

Kramer J, Magee J, 1984, ENVIRONMENT REQUIREMENTS FOR SYSTEM EVOLUTION., Pages: 77-87

In order to cope with evolutionary change, systems must be flexible. The authors propose that the necessary flexibility be provided by the reconfiguration of software components, and explore the properties required of the support environment for reconfigurable systems. They introduce a model of the configuration process that permits dynamic, incremental modification and extension. Using this model, they determine the properties required of languages and their execution environments to support dynamic configuration. An example is provided to illustrate these required properties and some current approaches are evaluated against the requirements. Finally, some remarks are made about the properties required of the application software.

Conference paper

Sloman M, Kramer J, Magee J, Twidle Ket al., 1984, FLEXIBLE COMMUNICATION SYSTEM FOR DISTRIBUTED COMPUTER CONTROL., Distributed Computer Control Systems, Pages: 115-127

This paper describes an extensible communication system for the CONIC Architecture for Distributed Real-time Systems. The CONIC programming language primitives for both local and remote interprocess communication are presented. The communication system which supports these primitives is itself implemented in the CONIC language. It exploits the configuration flexibility of CONIC to provide a very simple basic datagram service which is extensible at configuration time to give additional services such as virtual circuit and multidestination. The paper relates the CONIC communication system to the ISO Reference Model.

Journal article

KRAMER J, MAGEE J, SLOMAN M, 1984, A SOFTWARE ARCHITECTURE FOR DISTRIBUTED COMPUTER CONTROL-SYSTEMS, AUTOMATICA, Vol: 20, Pages: 93-102, ISSN: 0005-1098

Journal article

Kramer J, Magee J, Sloman M, 1984, Building Flexible Distributed Systems in CONIC, Distributed Computing Systems Programme, Editors: Duce, Publisher: Peter Peregrinus, Pages: 86-106

Book chapter

Kramer J, Magee J, Sloman M, 1983, DYNAMIC SYSTEM CONFIGURATION FOR DISTRIBUTED REAL-TIME SYSTEMS., Vol: 16, Pages: 31-42

Dynamic system configuration is the ability to modify and extend a system while it is running. The facility is a requirement in large real-time systems where it may not be possible or economic to stop the entire system to allow modification to part of its hardware or software. The paper introduces a model of the configuration process which permits dynamic, incremental modification and extension. Using this model we determine the properties required by languages and their execution environments to support dynamic configuration. The configuration facilities provided in the Imperial College distributed system CONIC are described and illustrated using an example.

Journal article

KRAMER J, MAGEE J, SLOMAN M, LISTER Aet al., 1983, CONIC - AN INTEGRATED APPROACH TO DISTRIBUTED COMPUTER CONTROL-SYSTEMS, IEE PROC-E, Vol: 130, Pages: 1-10, ISSN: 0143-7062

Journal article

Kramer J, Magee J, Sloman M, 1982, SOFTWARE ARCHITECTURE FOR DISTRIBUTED COMPUTER CONTROL SYSTEMS., Pages: 139-146

Conference paper

Kramer J, Magee J, Sloman M, 1981, INTERTASK COMMUNICATION PRIMITIVES FOR DISTRIBUTED COMPUTER CONTROL SYSTEMS., Pages: 404-411

Intertask communication primitives suitable for a distributed process control environment are studied. The communication requirements are identified in terms of two transaction types which are characteristic of process control applications. The requirements for task behavior, robustness and response time are described with respect to these transactions. Existing proposals for communication primitives are examined and found to be wanting. Finally, a set of primitives are proposed which match the requirements more satisfactorily than existing proposals.

Conference paper

This data is extracted from the Web of Science and reproduced under a licence from Thomson Reuters. You may not copy or re-distribute this data in whole or in part without the written consent of the Science business of Thomson Reuters.

Request URL: http://wlsprd.imperial.ac.uk:80/respub/WEB-INF/jsp/search-html.jsp Request URI: /respub/WEB-INF/jsp/search-html.jsp Query String: id=00003694&limit=30&person=true&page=7&respub-action=search.html