Content deleted Content added
NapoliRoma (talk | contribs) SunView was not an OS -- see talk for my rationale for this edit |
NapoliRoma (talk | contribs) Add sections; +Category:Sun software; NEO and Joe press release references; add back SunView (and X); minor wording/punctuation |
||
Line 1:
'''Distributed Objects Everywhere''' ('''DOE''') was a long-running [[Sun Microsystems]] project to build a [[distributed computing]] environment based on the [[CORBA]] system in the 'back end' and [[OpenStep]] as the user interface. First started in 1990 and announced soon thereafter, it remained [[vaporware]] for many years before it was finally released as '''NEO''' in 1995. It was sold for only a short period before being dropped (along with OpenStep) in 1996. In its place is what is today known as [[Enterprise JavaBeans]].
== Background ==
In the early 1990s the 'next big thing' in computing was to use desktop [[microcomputer]]s to display and edit data being provided by [[mainframe]]s and [[minicomputer]]s. Although a number of methods for this sort of access already existed, the division of labor was not at all even. For instance, [[SQL]] required the workstation to download huge data sets and then process them locally, whereas use of [[terminal emulator]]s
It seemed that the proper split of duties would be to have a cooperative set of objects, the workstation being responsible for display and user interaction, with processing on the server. Standing in the way of this sort of solution was the massive differences in [[operating system]]s and [[programming language]]s between platforms. While it might be possible to build such a system that would work on any one combination of workstation and server, the same solution would not work on any other system.
Line 7 ⟶ 8:
Oddly, the differences between any two [[programming language]]s on a single platform was almost as great. Each language had its own format for passing parameters into [[procedure call]]s, the file formats that they generated were often quite different. In general terms, it was not always possible to write different portions of a program in different languages, although doing so often has real utility. The problem was not so acute on [[minicomputer]]s and [[mainframe]]s where the vendor often specified standards for their libraries, but on microcomputers the programming systems were generally delivered by a variety of 3rd party companies with no interest in standardization.
Nevertheless this problem was being addressed in the early 1990s through the introduction of various [[shared library]] systems. These were actually intended to ease resource use on smaller platforms, by allowing a number of programs using a common resource, like the GUI, to share a single copy of code instead of each loading a separate copy into memory. As a side effect of being able to be called from many programs, these systems also defined a standard way to call them, using an [[interface definition language]], or IDL, to allow any language on the platform to understand the code inside the library.
Extending these systems to support [[remote procedure call]]s behind the scenes was seen as a natural
== Spring, DOE, OpenStep, NEO ==
Sun's solution was based on work in their [[Spring operating system]], which used intercommunicating objects for almost all programming tasks. Modifying this to work under a 'traditional' Unix like Solaris was not all that difficult, although Unix makes the assumption that all programs run locally, and an interface for remote access had to be added. For this, DOE added an [[object request broker]] (ORB) that ran on the backoffice servers, listening for DOE requests and handing them off to the proper program to be handled. During development, CORBA became a key [[buzzword]] in the industry. This prompted a delay while the ORB was re-engineered for CORBA support. Under the CORBA model, different objects, like those from DOE or SOM, would be able to interact by sharing a common interface.
A bigger problem for Sun is that they had no integrated desktop object programming solution. Although [[C++]] object libraries were becoming common on some platforms, their own [[SunOS]] (later known as [[Solaris Operating System|Solaris]]) operating system and associated
By the time DOE, now known as NEO, was released in 1995, Sun had already moved
Although distributed objects, and CORBA in particular, were the 'next big thing' in the early
==References==
*[http://www.javaworld.com/javaworld/jw-06-1996/jw-06-exceptions.html Distributed Object Computing with Joe and NEO]
*[http://www.sun.com/smi/Press/sunflash/1995-09/sunflash.950920.1420.xml NEO press release]
*[http://www.sun.com/smi/Press/sunflash/1996-03/sunflash.960326.13870.xml Joe press release]
[[Category:CORBA]]
[[Category:Object-oriented programming]]
[[Category:Application programming interfaces]]
[[Category:Sun software]]
|