Cool: Kernel Support for ObjectOriented Environments - PowerPoint PPT Presentation

1 / 14
About This Presentation
Title:

Cool: Kernel Support for ObjectOriented Environments

Description:

Has the interface of a set of system calls and extends the Chorus Micro-Kernel abstraction ... Actors communicate via the Chorus IPC mechanism and collectively ... – PowerPoint PPT presentation

Number of Views:17
Avg rating:3.0/5.0
Slides: 15
Provided by: dong51
Category:

less

Transcript and Presenter's Notes

Title: Cool: Kernel Support for ObjectOriented Environments


1
Cool Kernel Support for Object-Oriented
Environments
  • Presented by Li Zhao

2
Effort on distribution before Cool
  • Until early 1990s
  • bolting on distribution to existing language
    system.
  • Drawback of this approach
  • As the language and system are strongly coupled,
    all the layers of object management are typically
    redefined and implemented for each programming
    language that you want to install on the
    underlying OS.
  • Thus what was required
  • A more efficient approach providing a
    distributed platform that supports a generic
    object model allowing existing object-oriented
    languages to be layered above.

3
Cool Introduction
  • What is Cool
  • Chorus Object-Oriented Layer
  • Goals
  • Provide an efficient object-oriented support
    layer built on top of the Chorus Micro-Kernel.
  • Provide an generic object support platform that
    support multiple object-oriented language

4
Cool Architecture
5
Cool Architecture (continue)
  • Cool Base
  • System Level layer
  • Has the interface of a set of system calls and
    extends the Chorus Micro-Kernel abstraction
  • Acts as a Micro-Kernel for object-oriented system
  • Is built of four main functional components
  • Cool sub-system object provides the cool system
    interface
  • Cool class manager responsible for managing
    class representation
  • Cool mapper
  • responsible for managing the mapping between
    object representation in virtual memory, and the
    secondary storage representation
  • Cool activity monitor used to manage
    communication directed to objects that are in
    transit
  • Cool Generic Run-time
  • Cool run time system specializes the system
    interface to support a specific object model.

6
Cool Abstract
  • Cool System
  • A set of abstraction designed to enhance those
    provided by the chorus Nucleus
  • Actor
  • Cool exists as a set of system actors that
    provide an object oriented interface above the
    Chorus Nucleus
  • each actor implements a subset of the overall
    system functionality
  • Actors communicate via the Chorus IPC mechanism
    and collectively provide the system interface
  • Context
  • Is an actor
  • Provides an address space in which object exist
    and models a traditional address space
  • Each context can support a variable number of
    virtual memory regions, sparsely allocated and
    each backed by a secondary storage entity managed
    by an external memory mapper

7
Cool object
8
Inter-object communication
  • Object invocation
  • Objects created with a global attribute are
    assigned a port for communication and use this as
    the end-point for messages. Messages, are
    delivered to the target object.
  • Object migration
  • Unmapping the objects segment from its source
    context
  • Transmitting its descriptor and
  • Mapping its segment and insert its descriptor in
    the target context list.
  • Object group
  • Cool also allows objects to be grouped according
    to communication categories.
  • This allows a group of objects to be denoted as a
    single endpoint and allow messages to be
    delivered to all objects in a group.
  • The decision to migrate an object is driven by
    the requirement to optimize a particular
    invocation.(Chorus System The Cool Approach)

9
Persistence
  • Object Persistence
  • Cool allows system developers to detach objects
    from the context they reside in and move them to
    backing store returning a persistent object
    identifier. At later point, such objects can be
    re-mapped from store to a context. But
  • Unable to perform any form of reference
    conversion, because object reference are not
    tracked by Cool.
  • Context Persistence
  • The entire context can be stored, including
    objects within that context.
  • Insures all virtual memory references remain
    valid.

10
The cool C object
  • Each C object that will be used as a Cool
    object is defined from a base class Cool.
  • COOL C objects are compiled and then partially
    linked at a static, user defined address. Such
    Objects are left in executable files(with the
    same name as the class) but are not fully linked.
  • The COOL system then uses the COOL mapper to map
    in the correct text and data segment. At this
    point the COOL/C object is dynamically linked
    with the COOL system interface itself.

11
(No Transcript)
12
COOL/C Object (continue)
  • A number of additions have been made to the C
    object model to deal with the mapping of C to
    Cool.
  • Relocatable pointers
  • Used to allow the C run-time to effectively
    relocate dynamic structrues when their parent
    object is migrated.
  • Members
  • Members allows us to dynamically build tree
    structures of related objects and to migrate the
    entire tree from its root object.
  • It is necessary for the programmer to provide
    hints on which objects belong to related
    structures.
  • Active objects
  • To provide a degree of parallelism, objects may
    be created as active, with a lightwight Chorus
    thread beginning execution at a designated entry
    point in that object.

13
Conclusion
  • The goal of cool project was to be able to
    support a large spectrum of object-oriented
    run-time.
  • The Cool layer provides address space management
    and basic functionality for object management.
  • Object migration consists of changing the mapping
    of the object components.

14
Thank you!!!Any Question???
Write a Comment
User Comments (0)
About PowerShow.com