It's as if system software engineers have built a wonderful house of cards as
high as it can possibly be built. Now only a few gurus have hands steady enough
to reach into the interior and change something without knocking the whole
structure down. And if you can't get a guru when you want to insert a new card,
you have to hire armies of people to hold all the cards steady.
The tension between the needs of developers and the increasing complexity of
operating systems is leading in the 1990s toward a new category of system
software that Taligent calls an application system, as suggested by the right
side of Figure 1. Instead of requiring programmers to incorporate system-related
code into their programs, an application system provides a comprehensive set of
integrated application and distributed services capabilities, freeing the
programmer to concentrate on code related to a single application's problem
domain.
Environments such as HyperCard for the Mac OS, IBM's CICS , Lotus Notes, and
Smalltalk each resemble certain aspects of an application system, because they
allow application developers to create applications without necessarily using the
underlying operating system directly. Although the lines between these
application environments and their underlying operating systems aren't always
clear-cut, they provide many default behaviors that save application developers
time and effort and ultimately benefit users as well.
Unlike any of these precursors, however, a comprehensive application system must
facilitate the rapid construction of full-featured distributed applications for
deployment across heterogeneous peer-to-peer and client-server environments. In
addition, the application system should provide for a high degree of
interoperability among applications--both those built with the application system
and existing applications running locally or remotely on the host operating
system.
Traditional operating systems like those introduced in Figure 1 abstracted the
underlying hardware for application developers, and in some cases, such as the
UNIX" system, allowed the applications to be portable across different hardware
platforms. Taligent's application system abstracts the underlying operating
system for application developers and thereby allows applications created with
those abstractions to be portable across different operating systems.
[Contents]
[Previous]
[Next]