|
|
SO4: OBJECT-ORIENTED OPERATING SYSTEM
|
|
The adoption of object-oriented technologies in current environments suffers from impedance-mismatch problems when object-oriented elements interact with existing non-OO ones. Moreover, there is also an interoperability problem when two object-oriented elements have different object models. An integral object-oriented system (IOOS) tries to eliminate these problems by offering support for a common kind of object-orientation as the only abstraction in the system. An IOOS ideally provides a "world of objects" environment: a virtually infinite space where objects live indefinitely and exchange messages regardless of its location. The evolution of CORBA and Java is pointing towards this kind of heterogeneous distributed interoperable object environment. |
Oviedo3: an Integral Object-Oriented System |
|
Oviedo3 is an example of an IOOS being under development at the University of Oviedo. The common object model for the system intentionally follows the object model of the most popular OO methodologies. The goal is to take advantage of well-established OO concepts as well as carrying all the semantics of the object model (used in analysis and design phases) all the way to the implementation phase. The features the model includes are:
Figure 1 shows the structure of the Oviedo3 system. It is based on an OO abstract machine called Carbayonia, which implements the basic object model for the system and an operating system which extends the machine transparently providing objects with added properties. The SO4 operating system is implement as a set of normal user objects which transparently provide selected properties from the above list: concurrency, global persistence and distribution. Unlike the JavaOS system, it is aimed to be a general-purpose multi-user and extensible OS.
|
So4: The Oviedo3 Object-Oriented Operating System |
|
The heart of the Oviedo3 system is the operating system, which is called SO4. The OS offers the abstraction of a single object space where objects exist indefinitely, virtually infinite, and where objects placed in different machines cooperate transparently by means of method invocation through unique object references. Besides, the OS supports some important features: security, persistence, distribution and concurrency. Security ensures that only authorized objects are allowed to send messages to other objects. Persistence makes objects stay in the system until they are no longer needed. Distribution permits object invocation regardless its location. Concurrency gives the object model the ability to execute tasks in parallel. The master guidelines of the design of SO4 are:
These are some important characteristics we wish to impose on objects, in accordance with these guidelines:
|
See Also |
|
|
|
|