SICS The Distribution SubSystem


The Distribution SubSystem(DSS)

The Distribution Subsystem(DSS) is a novel approach to middleware design that is a middle ground between the two common approaches available today. On one hand, is the monolithic middleware systems, designed and implemented for one programming system only, with little or no reusability. On the other hand, is the language independent middlewares, designed with interoperability in mind; highly reusable, but with restrictions in expressivnes. The DSS, ocupying the middleground betwen the two, is intended to be coupled to any highlevel programming system with the same clear interfaces as the language independant middlewares, but with the full expressivness of the monolithic language dependent middlewares. Extending a programming system is done using our novel view of separation of concerns between a programming system and a middleware component, that clearly divides the tasks between the centralized and the distribution component. DSS is developed in the context of the european project PEPITO.




The description of the API can be found in this draft document
PS-format or PDF-format

Example files

There are some example-files that show a C++ implementation of a mediation layer and an I/O server.


Download the latest version of the DSS (0.7), including all examples, or a Mozart implementation using the DSS
showing an example implementation of a mediation layer.

  • The DSS files (including examples)
  • Mozart 1.3.0 using the DSS (outdated)
  • Publications

    The DSS, a Middleware Library for Efficient and Transparent Distribution of Language Entities Describes the design of the DSS and the interface provided through the abstract entities. Published in the proceedings of the Thirty-seventh Annual HAWAI'I INTERNATIONAL CONFERENCE ON SYSTEM SCIENCES

    The Design and Evaluation of a Middleware Library for Distribution of Language Entities Briefly describes the design of the DSS, but mainly focuses on performance evaluation of the middleware design. Published in the proceedings of ASIAN'03 - Eighth Asian Computing Science Conference.

    A Peer-to-Peer Approach to Enhance Middleware Connectivity Describes the messaging layer off the DSS. Shows how the component based design allows us to use results from the P2P domain to overcome asynchronous connectivity. Published in the proceedings of OPODIS 2003: 7th International Conference on Principles of Distributed Systems.

    Technical Reports

    Making the Distribution Subsystem Secure. The report describes how the DSS is made secure to attacks from malicious nodes. The security model is based on the model of distributed languge entities supported by the DSS.

    Creating a Distriuted Programming System using the DSS: a Case Study of OzDSS The report descibes how the programming system Mozart is coupled to DSS. The description is on the level of C++ classes. SICS Technical Report -- ??.

    Internal Design of the Distribution Subsystem The report describes the key concept in the implementaion of the DSS. The abstract entity layer and the distribution strategy framework are presented in detail, together with an overview of the interface of the internal messaging layer in DSS.


    Implementing Transparent Remoting for .Net using the Distribution Subsystem Describes the experiences from trying to couple the DSS to C#. SICS internal report, 2002.

    An Architecture for Distributed Programming Platforms. Presents a novel vision of how distribution support should be realized for programming systems. The initiative to develop the DSS middleware is a direct result of this report. SICS internal report, 2001.

    Component Based Distributed Garbage Collection Framework. The paper describes a framework that allows for combination of different distributed garbage collection algorithms. The framework is used internally in the DSS to combine various distributed garage collection algorithms, for example, the default choice of algorithm is time-lease combined with Fractional Weighted Reference Counting. SICS internal report 2002.


    To make an inquiry about the DSS please contact:
    Erik Klintskog, SICS, email